微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > FreeRTOS嵌入式实时操作系统

FreeRTOS嵌入式实时操作系统

时间:09-16 来源:互联网 点击:

内存,尤其是当不同的任务需要不同大小的内存的时候。方法二的缺点是,不能把应用程序释放的内存和原有的空闲内存混合为一体,因此,若应用程序频繁申请与释放“随机”大小的内存,就可能造成大量的内存碎片。这就要求应用程序申请与释放内存的大小为“有限个”固定的值(如图2中申请与释放内存的大小固定为l KB、2 KB或3 KB)。方法2的另一个缺点是,程序执行时间具有一定的不确定性。

μC/OS—II提供的内存管理机制是把连续的大块内存按分区来管理,每个分区中包含整数个大小相同的内存块。由于每个分区的大小相同,即使频繁地申请和释放内存也不会产生内存碎片问题,但其缺点是内存的利用率相对不高。当申请和释放的内存大小均为一个固定值时(如均为2 KB),FreeRTOS的方法2内存分配策略就可以实现类似μC/OS—Ⅱ的内存管理效果。

2.5 FreeRTOS的移植

FreeRTOS操作系统可以被方便地移植到不同处理器上工作,现已提供了ARM、MSP430、AVR、PIC、C8051F等多款处理器的移植。FrceRTOS在不同处理器上的移植类似于μC/0S一II,故本文不再详述FreeRTOS的移植。此外,TCP/IP协议栈μIP已被移植到FreeRTOS上,具体代码可见FreeRTOS网站。

2.6 FreeRTOS的不足

相对于常见的μC/OS—II操作系统,FreeRTOS操作系统既有优点也存在不足。其不足之处,一方面体现在系统的服务功能上,如FreeRTOS只提供了消息队列和信号量的实现,无法以后进先出的顺序向消息队列发送消息;另一方面,FreeRTOS只是一个操作系统内核,需外扩第三方的GUI(图形用户界面)、TCP/IP协议栈、FS(文件系统)等才能实现一个较复杂的系统,不像μC/OS-II可以和μC/GUI、μC/FS、μC/TCP-IP等无缝结合。

3 结 论

作为一个源码公开的操作系统,学习FreeRTOS可以更好地掌握嵌入式实时操作系统的实现原理;作为一个免费的操作系统,采用FreeRTOS可在基本满足较小系统需要的情况下降低系统成本、简化开发难度。在实践中,采用FreeRTOS操作系统和MSP430单片机构成的温度控制系统稳定可靠,实现了较好的控制效果。相信随着时间的发展,FreeRTOS会不断完善其功能,以更好地满足人们对嵌入式操作系统实时性、可靠性、易用性的要求。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top