一. 内核概述:
多任务系统中,内核负责管理各个任务,或者说为每个任务分配CPU 时间,并且负责任务之间的通讯。内核提供的基本服务是任务切换。之所以使用实时内核可以大大简化应用系统的设计,是因为实时内核允许将应用分成若干个任务, 由实时内核来管理它们。内核本身也增加了应用程序的额外负荷,代码空间增加ROM 的用量,内核本身的数据结构增加了RAM 的用量。但更主要的是,每个任务要有自己的栈空间,这一块吃起内存来是相当厉害的。内核本身对CPU 的占用时间一般在2 到5 个百分点之间。
UC/OS-II 有一个精巧的内核调度算法,实时内核精小, 执行效率高,算法巧妙,代码空间很少。UC/OS-II 的内核还可以被裁剪, Hmax 中RTOS 的就是一个被高度裁剪过的UC/OS-II 。
二. 任务控制块 OS_TCB :
uC/OS-II 的TCB 数据结构简单,内容容易理解,保存最基本的任务信息,同时还支持裁减来减小内存消耗, TCB 是事先根据用户配置,静态分配内存的结构数组,通过优先级序号进行添加,查找,删除等功能。减少动态内存分配和释放。因为依靠优先级进行TCB 分配,每个任务必须有自己的优先级,不能和其他任务具有相同的优先级。
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
全部0条评论
快来发表一下你的评论吧 !