(1)提供源代码
与Linux 一样,μC/OS-Ⅱ源代码也是开放的,用户可以登录μC/OS-Ⅱ的网站下载针对不同微处理器的移植代码。 如Intel 公司的80x86、8051、80196 等,Zilog 公司的z-80、z-180,Motorola公司的PowerPC、68K、CPU32 等,TI 公司的TMS320 系列,还包括ARM 公司、Analog Device 公司、三菱公司、日立公司、飞利浦公司和西门子公司的各种微处理器。 这极大地方便了实时嵌入式系统μC/OS-Ⅱ的开发,节省了开发成本。 另外,《嵌入式实时操作系统μC/OS-Ⅱ》一书的附带光盘中有μC/OS-ⅡV2.52 版本的所有源代码。 该源代码清晰易懂,且结构协调。 作为μC/OS-Ⅱ的最初发布者,本书的作者Jean J.Labrosse 还介绍了这些代码的工作原理以及这一段的代码是如何拼在一起的。
(2)可移植
μC/OS-Ⅱ的绝大部分源代码是使用移植性很强的ANSI C 编写的,与微处理器硬件相关的部分是使用汇编语言编写的。 为了便于将μC/OS-Ⅱ移植到不同架构的微处理器上,使用汇编语言编写的部分代码已经压缩到了最低的限度。
(3)可固化
只要具备合适的软硬件工具,就可以将μC/OS-Ⅱ嵌入产品中,使其成为其中的一部分。
(4)可裁剪
使用条件编译可实现对以μC/OS-Ⅱ的裁剪,用户只需编译必需的μC/OS-Ⅱ的功能代码即可,而不必编译不需要的功能代码,其目的就是避免μC/OS-Ⅱ占用程序和数据资源。
(5)可剥夺
μC/OS-Ⅱ是完全可剥夺型的实时内核,μC/OS-Ⅱ总是运行就绪条件下优先级最高的任务。
(6)多任务
μC/OS-Ⅱ最多可以管理64 个任务,然而,μC/OS-Ⅱ的作者则建议用户一定要预留8 个任务给μC/OS-Ⅱ,这样留给用户的最多可用的任务只有56 个。(www.xing528.com)
(7)可确定性
绝大多数μC/OS-Ⅱ的函数调用和服务的执行时间具有确定性;也就是说,用户总是能知道μC/OS-Ⅱ的函数调用与服务执行了多长时间。
(8)任务栈
μC/OS-Ⅱ的每个任务都有自己独立的栈,与此同时每个任务到底需要多少栈空间是可预知的。
(9)系统服务
μC/OS-Ⅱ提供多种系统服务方式,如信号量、互斥信号量、事件标志、消息邮箱、消息队列、块大小固定的内存的申请与释放及时间管理函数等。
(10)中断管理
中断可以使正在执行的任务暂时挂起,如果优先级更高的任务被中断唤醒,则高优先级的任务在中断嵌套全部退出后立即执行,中断嵌套数最多可达255 层。
(11)稳定性与可靠性
μC/OS-Ⅱ是基于μC/OS 的升级版本,μC/OS 自1992 年以来已经有数百个商业应用。μC/OS-Ⅱ与μC/OS 的内核是一样的,只是提供了更多的功能而已。 另外,2000 年7 月,μC/OS-Ⅱ在一个航空项目中得到了美国联邦航空管理局对商用飞机的、符合RTCADO—178B 标准的认证。 这一结论表明该操作系统的质量得到了认证,可以在任何应用中使用。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。