首页 | 技术文章 | 资料下载 | 资料分类 | 最近更新资料 | 免费注册 | 用户登录 | 会员中心 | 新手上路 | 给我留言
设为主页
收藏本站
联系我们
| 应用产品 | 嵌入式系统 | DSP | 综合电子技术 | 软件开发 | 开发工具
资料搜索:   | 发布资料 | 发表文章 |
当前位置: 文章首页嵌入式系统操作系统→μC/OS-ll中任务调度算法的改进(4)
μC/OS-ll中任务调度算法的改进(4)
作者:英特尔中国软件中心 吴平  来源于:单片机及嵌入式系统应用  发布时间:2007-2-7 16:57:00

其中睡眠态(dormant)异于多数操作系统的定义,是指任务驻留在程序空间之中,还没有交给μC/OS—II管理。所有任务开始于睡眠态,通过调用任务创立函数把任务交给μC/0S—II。当任务一旦建立,就进入就绪态准备运行。在任务销毁时,可以通过调用OSTaskDel()返回到睡眠态。其余阻塞态、就绪态、运行态和中断态较常见,这里不再详述,可以参考文献[1]第3章。

 
     图2中,如果处于运行态的任务时间片消耗完毕,则该任务进入等待状态  如果全部分时任务都进入等待状态,则系统会为其全部重新分配时间片,并使它们都返回就绪态。除此之外,其余状态关系与μC/0S—Il相同。


     为了实现分时任务时间片调度算法,首先在OS_TCB结构中添加OSTCBTimeSlices,以存储任务剩余的时间片数;同时定义OS-NORMAL_PRIO_START和OS_NOR-MAL_PRIO_START,表示分时任务区间的大小;还必须修改μC/0S的时钟服务程序,即函数OSTimeTick(),来处理与时钟相关的任务状态。修改后处理流程如图3所示。
 

 


[] [返回上一页] [告诉好友] [发表评论] [打 印] [ 字体: ]
上篇文章:μC/OS-ll中任务调度算法的改进(3) 
下篇文章:μC/OS-ll中任务调度算法的改进(5)
∷相关文章∷
· 实时操作系统μC/OS-II在MCF5272上的移植
· μC/OS-ll中任务调度算法的改进(1)
· μC/OS-Ⅱ在ARM7上移植方法的探讨与实现
· μC/OS-ll中任务调度算法的改进(2)
· μC/OS-ll中任务调度算法的改进(3)
∷相关软件∷
嵌入开发网下载中心Copyright © 2000-2006 www.embed.com.cn. All Rights Reserved .