μC/OS-II,意为“微控制器操作系统版本”。其不仅提供了一个完整的嵌入式实时 内核的源代码,而且对这些代码的细节进行了详尽的解释。他不仅告诉读者该实时内核是怎么写的,还解释了为什幺这么写,而且该实时内核可以被方便的移植到几 乎所有的嵌入式应用类CPU上。对于商业应用中哪些昂贵的实时操作系统软件,μC/OS-II是一个很好的学习平台。
说到μC/OS-II,这里先介绍一下嵌入式应用程序的开发模式。基于 单片机的嵌入式系统在软件设计时没有操作系统,而是将应用程序设计成一个死循环程序,系统轮流处理事件,对于事件响应比较高的事件,则使用中断来处理。这 种方法的好处是代码简单、代码量小、事件处理单一,但是在事件响应上得不到保障。建立在操作系统之上的软件设计方法有别于单片机的这种循环系统。 μC/OS-II 是以任务为最小程序单元的,它在内核环境下被分割为独立的且可并行执行的基本逻辑单位的程序(这是其最大的特点),任何任务不用关心资源的具体管理方法, 而是交给操作系统,有操作系统来决定,这使得代码的层次很清晰,可以提高程序的执行效率。下面是μC/OS-II 软件设计的基本代码结构:
void Task_one(void *pdata) //任务1的代码
{
}
void Task_two(void *pdata) //任务2的代码
{