machunshui 发表于 2009-2-13 11:17

看看UCOS的调度处理

看看UCOS的调度处理:<br /><br />生成任务1....n<br />-----&gt把任务栈设置成和刚发生过中断,任务还未运行时候一样的状态<br /><br />运行某一任务,<br />任务资源满足一直运行,<br />当有中断发生的时候,运行中断服务程序,保存当前任务栈,<br />中断服务程序退出前运行调度代码,<br />中断返回到满足运行条件的最高优先级的任务.(运行条件为该任务上次运行时等待的资源,本次中断可能时该任务获得等待的资源)<br /><br /><br />这就实现了实时,满足运行资源需求条件的最高优先级任务立即得到运行.<br />非常简单明了.<br /><br />实际上ucos为了高可靠,高移植特性此外还包含了任务同步,任务通信,<br /><br />所以代码不少,<br /><br />如果只是把核心的部分抽出来,不见得会比HOTPOWER的麻烦.<br /><br />而且实现的是真正的实时.<br /><br /><br /><br /><br />

kanprin 发表于 2009-2-13 11:23

有个问题

按如此定义的“隐身”任务应该是在定时节拍周期内必须完成它所做的所有任务吧?否则“半路被劫”后面的事情将“永远无法完成”?

Batistuta_ 发表于 2009-2-16 21:33

看看,不懂。

hotpower 发表于 2009-2-17 05:21

哈哈~~~都明白了俺还熬什么夜~~~雷翻俺即可懂了~

disarm 发表于 2009-7-14 16:39

明天再看

elec921 发表于 2012-5-4 21:33

MARK

elec921 发表于 2012-5-4 21:34

MARK_裸奔式RTOS

funv 发表于 2022-3-21 21:37

kEiL原本征怎么实现nop ?
页: 1 [2]
查看完整版本: 中断隐身之精华--天然的协作式操作系统