我刚开始学习ucos,有几个问题不是很明白,ucos中处理临界段代码可以用关中断再开中断的方法:OS_ENTER_CRITICAL()和OS_EXIT_CRITICAL(),也可以给调度器上锁和开锁:Locking and UnLocking the Scheduler,我有两个问题:1.给调度器上锁和开锁不是只能禁止任务调度吗? 如果有中断来时还是会跳去执行中断服务函数啊,这样不就不能起到保护临界段的作用了吗? 2.还有就是关中断和开中断这个方法,这个方法好像仅仅只是开关中断而已啊,如果中间有高优先级的任务来会跳去执行高优先级的任务吗?
去看开关中断和任务调度的源代码,里面有任务嵌套和任务优先级的判断!