嵌入式操作体系是什么
嵌入式操作体系(Embedded OperaTIngSystem,简称:EOS)是指用于嵌入式体系的操作体系。嵌入式操作体系是一种用处广泛的体系软件,一般包含与硬件相关的底层驱动软件、体系内核、设备驱动接口、通信协议、图形界面、规范化浏览器等。嵌入式操作体系担任嵌入式体系的悉数软、硬件资源的分配、使命调度,操控、和谐并发活动。它有必要体现其地点体系的特征,能够经过装卸某些模块来到达体系所要求的功用。
接下来跟从小编来了解一下常用的十款嵌入式操作体系吧。
常见的嵌入式操作体系
一、VxWorks
VxWorks操作体系是美国WindRiver公司于1983年规划开发的一种嵌入式实时操作体系(RTOS),是Tornado嵌入式开发环境的要害组成部分。杰出的持续发展才干、高功用的内核以及友爱的用户开发环境,在嵌人式实时操作体系范畴逐步占有一席之地。
VxWorks具有可裁剪微内核结构;高效的使命办理;灵敏的使命间通讯;微秒级的中止处理;支撑POSIX 1003.1b实时扩展规范;支撑多种物理介质及规范的、完好的TCP/IP网络协议等。
然而其价格昂贵。由于操作体系自身以及开发环境都是专有的,价格一般都比较高,一般需花费10万元人民币以上才干建起一个可用的开发环境,对每一个运用一般还要别的收取版税。一般不通供源代码,只供给二进制代码。由于它们都是专用操作体系,需求专门的技能人员把握开发技能和保护,所以软件的开发和保护本钱都十分高。支撑的硬件数量有限。
二、Windows CE
Windows CE与Windows系列有较好的兼容性,无疑是Windows CE推行的一大优势。其间WinCE3.0是一种针对小容量、移动式、智能化、32位、了解设备的模块化实时嵌人式操作体系。为树立针对掌上设备、无线设备的动态运用程序和服务供给了一种功用丰厚的操作体系渠道,它能在多种处理器体系结构上运转,而且一般适用于那些对内存占用空间具有必定约束的设备。它是从全体上为有限资源的渠道规划的多线程、完好优先权、多使命的操作体系。它的模块化规划答应它对从掌上电脑到专用的工业操控器的用户电子设备进行定制。
操作体系的根本内核需求至少200KB的ROM。由于嵌入式产品的体积、本钱等方面有较严厉的要求,所以处理器部分占用空间应尽或许的小。体系的可用内存和外存数量也要受约束,而嵌入式操作体系就运转在有限的内存(一般在ROM或快闪存储器)中,因而就对操作体系的规划、功率等提出了较高的要求。从技能角度上讲,Windows CE作为嵌入式操作体系有许多的缺陷:没有敞开源代码,使运用开发人员很难完结产品的定制;在功率、功耗方面的体现并不超卓,而且和Windows相同占用过的体系内存,运用程序巨大;版权答应费也是厂商不得不考虑的要素。
三、嵌入式Linux
这是嵌入式操作体系的一个新成员,其最大的特点是源代码揭露而且遵照GPL协议,在近一年多以来成为研讨热门,据IDG猜测嵌入式Linux将占未来两年的嵌入式操作体系比例的50%。
由于其源代码揭露,人们能够恣意修正,以满意自己的运用,而且查错也很简略。遵照GPL,无须为每例运用交纳答应证费。有许多的运用软件可用。其间大部分都遵照GPL,是敞开源代码和免费的。能够稍加修正后运用于用户自己的体系。 有许多的免费的优异的开发工具,且都遵照GPL,是敞开源代码的。有巨大的开发人员集体。无需专门的人才,只需懂Unix/Linux和C言语即可。跟着Linux在我国的遍及,这类人才越来越多。所以软件的开发和保护本钱很低。优异的网络功用,这在Internet年代特别重要。安稳——这是Linux自身具有的一个很大长处。内核精悍,运转所需资源少,十分合适嵌入式运用。
支撑的硬件数量巨大。嵌入式Linux和一般Linux并无本质区别,PC上用到的硬件嵌入式Linux简直都支撑。而且各种硬件的驱动程序源代码都能够得到,为用户编写自己专有硬件的驱动程序带来很大便利。
在嵌入式体系上运转Linux的一个缺陷是Linux体系供给实时功用需求增加实时软件模块。而这些模块运转的内核空间正是操作体系完结调度战略、硬件中止反常和履行程序的部分。由于这些实时软件模块是在内核空间运转的,因而代码过错或许会损坏操作体系然后影响整个体系的可靠性,这关于实时运用将是一个十分严峻的缺点。
四、μC/OS一Ⅱ
μC/OS一Ⅱ是闻名的源代码揭露的实时内核,是专为嵌入式运用规划的,可用于8位,16位和32位单片机或数字信号处理器(DSP)。它是在原版别μC/OS的根底上做了严重改善与晋级,并有了近十年的运用实践,有许多成功运用该实时内核的实例。它的首要特点如下:
揭露源代码,简略就能把操作体系移植到各个不同的硬件渠道上;
可移植性,绝大部分源代码是用C言语写的,便于移植到其他微处理器上; 可固化;
可裁剪性,有挑选的运用需求的体系服务,以削减斗所需的存储空间;
占先式,彻底是占先式的实时内核,即总是运转安排妥当条件下优先级最高的使命;
多使命,可办理64个使命,使命的优先级有必要是不同的,不支撑时刻片轮转调度法; 可确定性,函数调用与服务的履行时刻具有其可确定性,不依赖于使命的多少; 实用性和可靠性,成功运用该实时内核的实例,是其实用性和可靠性的最好依据。 由于μC/OS一Ⅱ仅是一个实时内核,这就意味着它不像其他实时存在体系那样供给给用户的仅仅一些API函数接口,还有许多作业需求用户自己去完结。
五、TInyOS
TInyOS是一个开源的嵌入式操作体系,它是由加州大学的伯利克分校开发出来的,首要运用于无线传感器网络方面。程序选用的是模块化规划,所以它的程序中心往往都很小,一般来说中心代码和数据大概在400 Bytes左右,能够打破传感器存储资源少的约束。TInyOS供给一系列可重用的组件,一个运用程序能够经过衔接配置文件(A Wiring Specification)将各种组件衔接起来,以完结它所需求的功用。
六、嵌入式实时操作体系(RTOS)
在工业操控、 军事设备、航空航天等范畴对体系的呼应时刻有严苛的要求,这就需求运用实时体系。当外界事情或数据发生时,能够承受并以足够快的速度予以处理,其处理的成果又能在规则的时刻之内来操控生产进程或对处理体系作出快速呼应,并操控一切实时使命和谐一致运转的嵌入式操作体系。故对嵌入式实时操作体系的了解应该树立在对嵌入式体系的了解之上参加对呼应时刻的要求。
七、FreeRTOS
FreeRTOS是一个迷你操作体系内核的小型嵌入式体系。作为一个轻量级的操作体系,功用包含:使命办理、时刻办理、信号量、音讯行列、内存办理、记载功用等,可根本满意较小体系的需求。FreeRTOS使命可挑选是否同享仓库,而且没有使命数约束,多个使命能够分配相同的优先权。相同优先级使命的轮转调度,一起可设成可掠夺内核或不行掠夺内核。
八、WinCE
WinCE是微软公司嵌入式、移动核算渠道的根底,它是一个敞开的、可晋级的32位嵌入式操作体系,是根据掌上型电脑类的电子设备操作体系,它是精简的 Windows 95,Win CE的图形用户界面适当超卓。WinCE是从全体上为有限资源的渠道规划的多线程、完好优先权、多使命的操作体系。它的模块化规划答应它关于从掌上电脑到专用的工业操控器的用户电子设备进行定制。操作体系的根本内核需求至少200K的ROM。
一般来说,一个WinCE体系包含四层结构:运用程序、WinCE内核映像、板级支撑包(BSP)、硬件渠道。而根本软件渠道则首要由 WinCE体系内核映像(OS Image)和板卡支撑包(BSP)两部分组成。由于WinCE体系是一个软硬件紧密结合的体系,因而即便CPU处理器相同,可是假如开发板上的外围硬件不相同,这个时分仍是需求修正BSP来完结一个新的BSP。因而换句话说,便是WinCE的移植进程首要是改写BSP的进程。
九、Android
Android 是一个包含操作体系,中间件以及一些重要运用程序的专门针对移动设备的层次结构的软件集。Android 作为一个彻底开源的操作体系,是由操作体系Linux、中间件以及中心运用程序组成的软件栈。经过 android SDK 供给的 API 以及相应的开发工具, 程序员能够很便利的开发android渠道上的运用程序。其整个体系由运用程序,运用程序结构,运用程序库,Android运转库,Linux内核 (Linux Kernel)五个部分组成。Android操作体系内置了一部分运用程序, 包含电子邮件客户端、SMS程序、日历、地图、浏览器、通讯录以及其他的程序,值得一提的是这些一切的程序都是用java编写的。
移植的首要的作业是驱动,硬件笼统层的移植。为了更好地了解和调试体系,也应该适当地了解上层对硬件笼统层的调用状况。
十、QNX
QNX由加拿大QNX软件体系有限公司开发,广泛运用于自动化、操控、机器人科学、电信、数据通信、航空航天、核算机网络体系、医疗仪器设备、交通运输、安全防卫体系、POS机、零售机等使命要害型运用范畴。
QNX共同的微内核和音讯传递结构使其运转和开发时十分便利。QNX具有十分好的伸缩性,用户能够把运用程序代码和QNX内核直接编译在一起,使之为简略的嵌入式运用生成单一的映像。