操作系统μC/OS-II的特点

来源:互联网 发布:手机淘宝网店怎么登陆 编辑:程序博客网 时间:2024/04/30 08:25
(1)开源性

  与Linux一样,μC/OS-II源代码也是开放的,用户可以直接登录μC/OS-II的官方网站下载,而且在网站 上有针对不同微处理器的移植代码,这极大地方便了实时嵌入式操作系统μC/OS-II的开发,降低了开发成本 。

  (2)可移植性

  在μC/OS-II的源代码中,除了与微处理器硬件相关的部分采用汇编语言编写外,其他绝大部分都采用移植 性很强的ANSI C编写,这样可使μC/OS-U便于移植到多种处理器上。

  (3)可固化性

  μC/OS-II是一款嵌入式实时操作系统,只要具备合适的软、硬件工具,就可以直接在操作系统中嵌入到产 品中,成为产品的一部分。

  (4)可裁减性

  用户可根据自身的需求来实施对μC/OS-II的裁减工作。μC/OS-II使用条件编译来裁减,用户程序可只编译自己需要的系统功能,减少μC/OS-II对代码空间的使用,最小内核可裁减至2KB。

  (5)可抢占性

  μC/OS-II是完全可抢占性的实时操作系统内核,每次都运行就绪条件下的优先级最高的任务。

  (6)多任务性

  μC/OS-II可管理64个任务,一般情况下,需要用户预留8个任务给μC/OS-II。因此,留给用户的任务最多 为56个。系统赋给每一个任务不同的优先级,这样,系统不支持时间片轮转调度法。如图1所示,给出了 μC/OS-II的任务状态转换图。


图1 μC/OS-II的任务状态转换图

  (7)可确定性

  μC/OS-II的函数调用和服务的执行时间可确定性,μC/OS-II的系统服务时间与用户应用程序任务数目的 多少无关,在任何时候用户都能知道μC/OS-II的函数调用与服务的执行时间。

  (8)具有任务栈

  μC/OS-II的每一个任务都有自身独立的堆栈。为了保证应用程序对RAM的需求,μC/OS-II具有栈空间检 验函数,这样可方便地确定每个任务所需要的栈空间的大小。

  (9)中断服务,支持嵌套

  中断可使正在执行的任务暂时挂起。如果优先级更高的任务被中断唤醒,则高优先级的任务在中断嵌套全部 退出后立即执行。中断嵌套可达255级。


uCOS-II 的体系结构:大概框架如下图所示


原创粉丝点击