Chinaunix首页 | 论坛 | 博客
  • 博客访问: 830995
  • 博文数量: 281
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 2770
  • 用 户 组: 普通用户
  • 注册时间: 2009-08-02 19:45
个人简介

邮箱:zhuimengcanyang@163.com 痴爱嵌入式技术的蜗牛

文章分类
文章存档

2020年(1)

2018年(1)

2017年(56)

2016年(72)

2015年(151)

分类: 嵌入式

2016-08-18 13:30:51

微型嵌入式操作系统对比

 GPL(General Public License),即GNU通用公共许可证

1、     uCos-II(ucos ii):商业和GPL双许可。μC/OS-II是一种可移植的,可植入ROM的,可裁剪的,抢占式的,实时多任务操作系统内核。是实现一个基于优先级调度 的抢占式的实时内核,并在这个内核之上提供最基本的系统服务,如信号量,邮箱,消息队列,内存管理,中断管理等。

2、     FreeRtos:和ucos-ii有部分类似,移植更方便,有赶超uCos-II的趋势,GPL许可。相对μC/OS-II、embOS等商业操作系 统,FreeRTOS操作系统是完全免费的操作系统,具有源码公开、可移植、可裁减、调度策略灵活的特点,可以方便地移植到各种单片机上运行。 FreeRTOS的内核可根据用户需要设置为可剥夺型内核或不可剥夺型内核。当被设置为可剥夺型内核时,处于就绪态的高优先级任务能剥夺低优先级任务的 CPU使用权,这样可保证系统满足实时性的要求;当FreeRTOS被设置为不可剥夺型内核时,处于就绪态的高优先级任务只有等当前运行任务主动释放 CPU的使用权后才能获得运行,这样可提高CPU的运行效率。FreeRTOS操作系统既有优点也存在不足。其不足之处,一方面体现在系统的服务功能上, 如FreeRTOS只提供了消息队列和信号量的实现,无法以后进先出的顺序向消息队列发送消息;另一方面,FreeRTOS只是一个操作系统内核,需外扩 第三方的GUI(图形用户界面)、TCP/IP协议栈、FS(文件系统)等才能实现一个较复杂的系统,不像μC/OS-II可以和μC/GUI、 μC/FS、μC/TCP-IP等无缝结合。

3、     eCos: GPL许可。eCos由Redhat推出的小型即时操作系统,最低编译核心可小至10K的级别,适合用于作bootloader增强,微小型系统。 此系统和嵌入式Linux系统的差异是他将操作系统做成静态连结(static library)的方式,让应用程式透过连结(linker)产生出具有操作系统的特性的应用程式。eCos最大的特点是模块化,内核可配置。如果说嵌入 式Linux太庞大了,那么eCos可能就能够满足要求。它是一个针对16位、32位和64位处理器的可移植开放源代码的嵌入式RTOS。和嵌入式 Linux不同,它是由专门设计嵌入式系统的工作组设计的。重要的是,eCos提供的Linux兼容的API能让开发人员轻松的将linux应用移植(这 点和RTEMS很相似),与此同时,应用程序不用跑在Linux复杂的内核机制上(这套机制,对于大型服务器也许还凑合,但是对于短小精悍的嵌入式应用, 太浪费了),大大节省了RAM的使用。

 

4、     TINYOS: GPL许可。TinyOS是UC Berkeley(加州大学伯克利分校)开发的开放源代码操作系统,专为嵌入式无线传感网络设计,操作系统基于构件(component-based)的 架构使得快速的更新成为可能,而这又减小了受传感网络存储器限制的代码长度。

5、     Salvo:商业和GPL双许可。针对microchip MCU设计的RTOS,非常小巧的RTOS。

6、     PicoOS: GPL许可。一个不错的RTOS,可惜现在基本没有维护了。

7、     QP:量子框架RTOS,信息待查阅(很小巧的操作系统,采用面向对像设计方法,和UML建模,又很在乎软件的可靠性、稳定性、可测试性、可维护性、可扩展性)。

8、     CoOS:商业和GPL双许可。免费并开源;ARM Cortex M3及M0定制操作系统; 高度可裁剪性,最小系统内核仅974Byte; 支持优先级抢占和时间片轮转; 自适应任务调度算法; 零中断延时时间; 堆栈溢出检测; 信号量、邮箱、队列、事件标志、互斥等同步通信方式;支持多种编译器:ICCARM、ARMCC、GCC。CoOS和UCOS两者从本质上是就不一样的, 首先CoOS是专门针对Cortex M系列的芯片,其次,在实现上,CoOS摒弃了主流的实时内核(如UCOS)通过“开关中断”实现系统临界区的方案,转而自行设计一套系统锁来维护整个系 统运行时对临界资源的独占访问,这样做无需通过开关中断来实现临界区,从而达到几乎零中断延时的效果。相比UCOS的优势在于CoOS是ARM Cortex M3及M0定制操作系统,在ARM Cortex M3及M0芯片的开发中,有以下优势:

1.实时性要好些,CoOS不用在临界代码时开关中断;

2.占用空间要小些,高度可裁剪性,最小系统内核仅974Byte;

3.功能上比UCOS多支持时间片轮转调度和可变长分区的内存管理;

4.CoOS有配套的集成开发环境,UCOS没有,目前已经支持jlink;

5.CoOS是免费开源的,而UCOS是需付费的;

 

PS: 还有下面一些如果也可以认为RTOS的话:aortos/BeeOS/Carbon/ChibiOS/emlib/ertos /HomeOS/HTC/ivmuk/LEJOS OSEK/nutx/radlib/SCMRTOS/small rtos/tirtos/uSmartX/XMK。

阅读(896) | 评论(0) | 转发(0) |
0

上一篇:dma_alloc_writecombine

下一篇:CFI接口

给主人留下些什么吧!~~