这5款OS的PK主要分为以下四个方面
1. FLASH和RAM的需求对比
2. 功能对比
3. 实时性对比
4. 安全性对比
1.FLASH和RAM的需求对比
RTX uCOS-II FreeRTOS embOS uCOS-III
FLASH <4.0 Kbytes 6K----26K 6K --- 10K 1.1K - 1.6K 6K----24K
(Code Space) (code footprint) (ROM footprint ) (kernel) (code footprint)
RAM 300bytes +128bytes 1K+ 没找到 18-50bytes 1K+
(kernel) (ram footprint) 没找到 (kernel) (ram footprint)
2. 功能对比
这里暂时先不做了,这个对比的整理比较的麻烦
3. 实时性对比
这里提供一组实时性测试方面的数据,通过任务主动释放CPU权利来测试任务的切换速度
测试条件 :STM32F103VET6,Cortex-M3内核,72Mhz,
软件用的MDK4.54, 1级优化。
测试10000次,2ms测试一次,然后求平均
RTX V4.5 252个时钟周期
uCOS-II V2.92.07 354个时钟周期
embOS V3.86 389个时钟周期
FreeRTOS V7.4.2 514个时钟周期(可能是这种测试方法对这个OS不太适合,另一个时间切换的时
间是374个时钟周期)
uCOS-III V3.03.01 576个时钟周期
4. 安全性对比
安全性的对比,比较的麻烦些,这里提供一下各个OS的安全认证
貌似FreeRTOS, embOS和RTX没有安全方面的认证
FreeRTOS的另一个版本SafeRTOS有安全方面的认证
RTX(Real Time eXecutive)是ARM公司针对ARM7,ARM9,cortex-m内核推出的一款嵌入式实时。 该系统占用内存很小,切换速度很快,特别适合一些内存小的芯片,像只有32KB的flash,8KB的RAM的cortex-m0都可以使用(开4,5个任务都OK的,不像ucos,有点吃力).而且该系统是开源,免版税的.
RTX的源码跟Keil-MDK绑定在一起,安装了Keil-MDK之后,可以在 Keil\ARM\RL\RTX\SRC文件夹下找到源码,文件夹ARM下是arm7,arm9内核的源码,CM下是cortex-m的源码.在cortex-m3下使用,几乎不用做其他的移植工作,就能让系统跑起来,使用很方便.
虽然RTX没像UCOS-II一样过了一些安全验证,但是在2012,2013年的嵌入式市场分析报告中,RTX也是榜上有名的:
RTX没有像ucos那么火,我想跟资料有很大的关系,ucos有本书介绍的很详细,RTX只有帮助文档,而且只有英文.
阅读(9655) | 评论(0) | 转发(0) |