uC/OS-II 是一个可以基于 ROM 运行的、可裁减的、抢占式、实时多任务内核,具有高度可移植性,特别适合于微处理器和控制器,是和很多商业操作系统性能相当的实时操作系统(RTOS)。
为了提供最好的移植性能,uC/OS-II 最大程度上使用 ANSI C 语言进行开发,并且已经移植到近 40 多种处理器体系上,涵盖了从 8 位到 64 位各种 CPU(包括 DSP)。
uC/OS-II 是专门为计算机的嵌入式应用设计的,绝大部分代码是用 C 语言编写的。CPU 硬件相关部分是用汇编语言编写的、总量约 200 行的汇编语言部分被压缩到最低限度,为的是便于移植到任何一种其它的 CPU 上。用户只要有标准的 ANSI 的 C 交叉编译器,有汇编器、连接器等软件工具,就可以将 uC/OS-II 嵌人到开发的产品中。uC/OS-II 具有执行效率高、占用空间小、实时性能优良和可扩展性强等特点, 最小内核可编译至 2KB 。uC/OS-II 已经移植到了几乎所有知名的 CPU 上。
uC/OS-II (V2.91 版本)体系结构如所示:
序号 | 文件 | 描述 |
---|---|---|
1 | os_cpu.h | 进行数据类型 的定义,以及处理器相关代码和几个函数原型 |
2 | os_cpu_a.asm | 移植过程中需要汇编完成的一些函数,主要就是任务切换 函数 |
3 | os_cpu.c | 定义一些用户 HOOK 函数 |