这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 » 论坛首页 » 嵌入式开发 » 软件与操作系统 » [原创]我的uC/OS-II,我的读书笔记之任务划分(上)

共18条 1/2 1 2 跳转至

[原创]我的uC/OS-II,我的读书笔记之任务划分(上)

院士
2012-09-21 15:02:04     打赏
  我的uC/OS-II,我的读书笔记之任务划分(上) 一个具体的嵌入式应用系统进行“任务划分”是实验操作系统应用软件设计的关键,任务划分是否合理直接影响软件设计的质量。当任务划分得合理时,软件设计将比较简洁、高效;否则将可能比较繁杂,甚至失败。本章将介绍任务划分的问题。 任务特性 “任务”的基本特性是“动态性”“独立性”“并发性”。这是“任务”与“程序模块”的本质区别。 任务的动态性:“任务”的状态是动态变化的,通常有“就绪态”“运行态”“等待态”等。“任务”并不是随时都可以运行的,而一个已经开始运行的“任务”并不能保证一直占有CPU的使用权。 任务的独立性:在操作系统环境下的“任务”看来,CPU为自己“独占”。所谓“独占”,即“旁若无人”,一个任务“看不见”另外一个任务。在这种情况下,一个任务不可能像“调用子程序”那样调用另外一个任务; 举例说明之:当两个“模块”需要进行“信息”传输时,主模块以“实参”形式将信息传输给子模块的“形参”,子模块以“返回值”的形式将结果传输给主模块。“模块”之间的信息传输是“当面”完成的,因为模块之间是相互“看得见”。“当面”的本质是“同步”“给”和“拿”在同一时刻完成。 但由于“任务”之间互相“看不见”,所以它们之间的信息传输就无法“当面”完成。当两个任务需要进行信息传输时,只能采用“异步”方式。类似于,我们将购物清单和货款交给“第三方”,由“第三方”转交给“购买者”。“购买者”完成购物后,货物同样只能通过“第三者”转交。(“第三者”的角色由操作系统中的各种“通信”机制实现。)由于“第三者”的介入,主人“给”钱的时间和“购买者”拿到钱的时间不同,交货时间与“我”拿到货物的时间也不同,即“传输是异步的”,其时间的滞后与多种因素有关,无法事先准确固定。所有“任务”在逻辑上都是“平等”的,在信息传输上都是“异步”的。 任务的并发性:操作系统的“任务调试”功能是为了解决这样一个问题:在某个时刻,有多个任务均处于就绪状态,应该让哪个任务运行?uC/OS采用“可剥夺型”任务调试算法。“已经就绪的高优先级任务”可以剥夺另一个“正在运行的低优先级任务”的运行权而进入运行状态。 任务划分的目标 首要目标是满足“实时性”指标,即在最坏的情况下,系统中所有对实时性有要求的功能都能够正常实现。 任务数目合理,任务数目适当减少是非常有利的。 简化软件系统,这里主要还是指得合理划分任务。 降低资源要求,因为任务与任务之间如果协同。      以上是任务划分的理论方法,具体的划分方法,咱们下周在一起探讨……



关键词: 原创     我的     OS-II     读书     笔记     任务     划分    

高工
2012-09-21 22:14:43     打赏
2楼
目标相当明确,解释十分到位,楼主V5...

菜鸟
2012-09-21 22:14:45     打赏
3楼
版主又开始更新了,大家来围观啊~

高工
2012-09-22 10:32:20     打赏
4楼
持续关注,你的给力啊,,嘻嘻。。辛苦了。。

高工
2012-09-22 22:55:12     打赏
5楼
今怎么没有后续更新?周末放假就偷懒啊 哈哈哈

助工
2012-09-29 10:41:16     打赏
6楼

俺也在学习中 楼主多指教指教


院士
2012-09-29 17:15:36     打赏
7楼
一齐努力啊~~

专家
2022-08-14 22:50:52     打赏
8楼

楼主V5...


专家
2022-08-28 09:39:00     打赏
9楼

持续关注


专家
2022-08-28 09:42:48     打赏
10楼

很不错,支持一下


共18条 1/2 1 2 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]