与微型计算机和大型计算机的通用操作系统相比,嵌入式操作系统具有可移植、强调实时性能、内核精简、抢占式内核、使用可重入函数、可配登、可裁减、高可靠性的基本特点。
1、可移植
目前,嵌入式处理器的体系结构有十儿种,包括x86、8051、ARM、FR-V(富士通公司)、68K、MIPS、PowerPC、SPARC、SuperH(日立公司)等,嵌入式外围设备也有成百上千种。硬件平台的多样性以及提高代码可重用性的双重条件,导致嵌入式操作系统研发机构力求做到嵌入式操作系统具备良好的可移植(portable)特征,以迎合市场的需要。
因此,嵌入式操作系统通常分为两个部分:硬件相关部分和硬件无关部分。板级支持包(BSP)和硬件抽象层(HAL)属于前者,内核、中间件和API属于后者。内核主要包括任务管理、进程调度、内存管理、时钟节拍管理和中断管理模块,一般与硬件平台无关。BSP包括底层硬件的引导加载程序、I/O初始化处理和管理程序.充当硬件与软件系统的桥梁,因此当嵌入式系统的硬件平台变化时,只需要改变BSP/HAL以及Bootloader部分的代码即可。
2、强调实时性能
传统的观点认为,嵌入式操作系统应该具有强实时性能。但是近年来的大量应用现实正逐步地改变这种情况。由于手机和媒体播放器之类的软实时嵌入式产品日益普及,导致一些嵌入式操作系统降低了实时性能。尽管如此,实时性能仍然被认为是评价嵌入式操作系统的最重要技术指标。
3、内核粉简,所占空间小
内核是操作系统中靠近硬件并且享有最高特权的一层。为了适应嵌入式计算机存储空间小的限制,嵌入式操作系统的内核都尽最小型化。例如:VxWork。操作系统内核最小可裁减到8KB,此时需要的ROM存储空间为8KB -488KB,需要的RAM存储空间为30-620KB:Nucleus Plu,内核在典型的CISC体系结构上占据大约20KB空间.而在典型的RISC体系结构上占据空问为40KB左右,其内核数据结构占据1.5KB空间;QNX的内核大约占12KB,国产Hopen操作系统的内核大约占l0KB, WinCE操作系统的内核大约占25 KB。从上面给出的5个RTOS内核尺寸都在50KB以下,这说明RTOS能够在很小内存空间的硬件平台上运行。
4、抢占式内核
从内核调度的基本特点分类,可以把嵌入式操作系统内核分为抢占式内核(preemptivekernel)和不可抢占式内核(non-preemptive kernel)。抢占式内核也叫做占先式内核,或者可剥夺内核。抢占式内核的最大特点是优先级最高的任务能够立即执行,从而能够保证系统具有高度实时性能。
5、使用可重入函数
在实时多任务操作系统中,如果一个函数的代码能够同时被多个任务并发调用(分享),并且在调用该函数时这些多任务之间不会产生数据干扰错误,那么这个函数就是可重入(reentrant)函数。实时操作系统要求使用可重入函数。
可重入听数的重要价值在于任意时刻被中断后再继续运行都不会丢失数据。在可重入的数中使用变量有两个原则:①尽量使用局部变量,即把变量保存在CPU寄存器中或者栈区中。②如果使用全局变量,则要对全局变量进行保护。
6、可配置
为了适应各种硬件运行环境,嵌入式操作系统必须具有良好的可配置功能(configurable),这也是嵌入式操作系统区别于通用操作系统的一个重要方面。在嵌入式领域,具体的底层硬件和应用需求差别很大。例如,为了实现媒体播放,有的嵌入式系统斋要存储管理单元(MMU)来实现虚拟存储器,以满足流媒体数据存储的需要,而有的系统为了提高实时性能则需要把MMU关掉;有的嵌入式系统希望实时时钟的节拍周期为50ms,有的希望是lOms;有的嵌入式系统要求响应底层硬件的多级中断,有的只要求响应单级中断。
7、可裁剪
除了内核之外,许多嵌入式操作系统还拥有几十个乃至上百个功能部件(控制模块),以适应不同的硬件平台和具体应用的设计要求。设计入员在研发过程中可以根据产品的资源限制和功能/性能需求对嵌入式操作系统的功能部件进行增删,去除所有不必要的部件,同时添加增强功能和提高性能的部件,最终编译成一个满足特定设计要求的具有最小尺寸的操作系统目标程序。由上所述,可裁剪(tailorable)就是指编译之前对嵌入式操作系统功能部件进行增加和删除,可定制是可裁剪的另外一种表达方式,两者含义大致相同。
8、高可靠性
嵌入式系统往往在无入操作和值守的环境下运行,有的嵌入式系统运行时间很长甚至是常年运行,因此对可靠性的要求就成为嵌入式操作系统的一个重要特点。现在有一些嵌入式操作系统,如VxWorks, 5C/OS-II等,已经经过了多年应用的考验,也有无数的工程师对它们的代码进行了检查,一般来说这些操作系统都是稳定和安全的,其有公认的高可靠性。
文章由供应商小编原创,转载请注明文章来源出处,谢谢合作!
阅读(730) | 评论(0) | 转发(0) |