快捷搜索:

汇总ARM的嵌入式操作系统有什么不一样

嵌入式操作系统(Embedded OperaTIon System,EOS)是指用于嵌入式系统的操作系统。嵌入式系统分为4层,硬件层、驱动层、操作系统层和利用层,如下图所示。嵌入式操作系统是认真嵌入式系统的整个软、硬件资本的分配、义务调整,节制、和谐并发活动。它必须表现其所在系统的特性,能够经由过程装卸某些模块来达到系统所要求的功能,是一种用途广泛的系统软件。

嵌入式系统的4层布局

嵌入式LINUX

嵌入式linux 是将日益盛行的Linux操作系统进行裁剪改动,使之能在嵌入式谋略机系统上运行的一种操作系统。 Linux做嵌入式的上风,首先,Linux是开放源代码;其次,Linux的内核小、效率高,可以定制,其系统内核最小只有约134KB;第三,Linux是免费的OS,Linux还有着嵌入式操作系统所必要的很多特色,凸起的便是Linux适应于多种CPU和多种硬件平台而且机能稳定,裁剪性很好,开拓和应用都很轻易。同时,Linux内核的布局在收集方面是异常完备的,Linux对收集中最常用的 TCP/IP协议有最完整的支持。供给了包括十兆、百兆、千兆的以太网络,以及无线收集,Token Ring(令牌环网)、光纤以致卫星的支持。

移植步骤:1.Bootloader的移植;2.嵌入式Linux操作系统内核的移植;3.嵌入式Linux操作系统根文件系统的创建;4.电路板上外设Linux驱动法度榜样的编写。

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编写的。

移植的主要的事情是驱动,硬件抽象层的移植。为了更好地舆解和调试系统,也应该适当地懂得上层对硬件抽象层的调用环境。

TInyOS

TInyOS是一个开源的嵌入式操作系统,它是由加州大年夜学的伯利克分校开拓出来的,主要利用于无线传感器收集方面。法度榜样采纳的是模块化设计,以是它的法度榜样核心每每都很小,一样平常来说核心代码和数据大年夜概在400 Bytes阁下,能够冲破传感器存储资本少的限定。TInyOS供给一系列可重用的组件,一个利用法度榜样可以经由过程连接设置设置设备摆设摆设文件(A Wiring Specification)将各类组件连接起来,以完成它所必要的功能。

嵌入式实时操作系统(RTOS

在工业节制、 军事设备、航空航天等领域对系统的相应光阴有苛刻的要求,这就必要应用实时系统。当外界事故或数据孕育发生时,能够吸收并以足够快的速率予以处置惩罚,其处置惩罚的结果又能在规定的光阴之内来节制临盆历程或对处置惩罚系统作出快速相应,并节制所有实时义务和谐同等运行的嵌入式操作系统。故对嵌入式实时操作系统的理解应该建立在对嵌入式系统的理解之上加入对相应光阴的要求。

FreeRTOS

FreeRTOS是一个迷你操作系统内核的小型嵌入式系统。作为一个轻量级的操作系统,功能包括:义务治理、光阴治理、旌旗灯号量、消息行列步队、内存治理、记录功能等,可基础满意较小系统的必要。FreeRTOS义务可选择是否共享客栈,并且没有义务数限定,多个义务可以分配相同的优先权。相同优先级义务的轮转调整,同时可设成可剥夺内核或弗成剥夺内核。

FreeRTOS 的移植主要必要改写如下三个文件。1.portmacro.h 2.port.c 3. port.asm

μTenux

μTenux基于ARM微节制器平台,对uT最适用于ARM Cortex M0-M4系列的微节制器,代码开源、免费,是一个功能强大年夜的抢占式实时多义务操作系统。μTenux除具有实时嵌入式操作系统的一样平常特点:可移植性,可固化,可裁剪等特点以外,它还具有如下优点:(1)微内核。无MMU, ROM/RAM占用量小,所占ROM最大年夜60KB,最小10KB;RAM最大年夜12KB,最小2KB;(2)开源免费;(3)支持所有32位ARM7/9和 Cortex M系列的微节制器;(4)可设置设置设备摆设摆设多达到256个义务以及140个义务优先级;(5)有优越的商业支持, T-Engine论坛进行总的掩护。

移植主要包括:芯片系统时钟移植,外设移植和通用输出/输入端口的移植以及看门狗模块移植。因为斟酌到内核代码的紧张性以及其在全部移植中的紧张意义,且为了全部系统有更好的实时性,可选用汇编说话编写操作系统的启动代码。

VxWorks

VxWorks系统供给多处置惩罚器间和义务间高效的旌旗灯号灯、消息行列步队、管道、收集透明的套接字。实时系统的另一关键特点是硬件中断处置惩罚。为了得到最快速靠得住的中断相应,VxWorks系统的中断办事法度榜样ISR有自己的高低文。VxWorks实时操作系统由400多个相对自力的、短小精粹的目标模块组成,用户可根据必要选择适当模块来裁剪和设置设置设备摆设摆设系统,这有效地包管了系统的安然性和靠得住性。系统的链接器可按利用的必要自动链接一些目标模块。这样,经由过程目标模块之间的按需组合,可获得许多满意功能需求的利用。

移植历程可以参考收集上一些BSP代码,BSP的英文全称为board support package,即板级支持包,它的感化是针对特殊的硬件平台,为VxWorks内核供给操作的接口

μClinux

嵌入式Linux 作为一个开放源代码的操作系统,以价格低廉、功能强大年夜又易移植的特点正在被广泛利用,μClinux是专门针对没有MMU的处置惩罚器而设计的嵌入式 Linux,异常得当中低端嵌入式系统的需求。 在GNU通用公共许可证的授权下,μClinux操作系统的用户可以应用险些所有Linux的API函数,不会由于没有内存治理单元MMU而受到影响;而且,μClinux在标准的Linux根基长进行了适当的裁剪和优化,形成了一个高度优化的、代码紧凑的嵌入式Linux,体积小了,然则仍旧保留了 Linux的大年夜多半的优点,比如稳定性好、强大年夜的收集功能、优越的可移植性、完整的文件系统支持功能、以及标准富厚的利用法度榜样接口API等,可以支持类似 ARM7TDMI等类型多的小巧玲珑的中央处置惩罚器。

eCos

eCos中文翻译为嵌入式可设置设置设备摆设摆设操作系统或嵌入式可设置设置设备摆设摆设实时操作系统。得当于深度嵌入式利用,主要利用工具包括破费电子、电信、车载设备、手持设备以及其他一些低资源和便携式利用。eCos是一种开拓源代码软件,无任何版权用度。 eCos最大年夜的特征是模块化,内核可设置设置设备摆设摆设。假如说嵌入式Linux太宏大年夜了,那么eCos可能就能够满意要求。它是一个针对16位、32位和64位处置惩罚器的可移植开放源代码的嵌入式RTOS。和嵌入式Linux不合,它是由专门设计嵌入式系统的事情组设计的。eCos具有相称富厚的特点和一个设置设置设备摆设摆设对象,后者能够让你拔取你所必要的特点。

eCos的软件分了多少的模块,移植事情主要在他的hal层进行,所谓hal(硬件抽象层)便是把和硬件相关的软件凑到一路。

μC/OS-II

μC /OS-II是一个完备的、可移植、可固化、可裁剪的占先式实时多义务内核。μC/OS-II绝大年夜部分的代码是用ANSI的C说话编写的,包孕一小部分汇编代码,使之可供不合架构的微处置惩罚器应用。其布局小巧简洁且支持抢占式的多义务调整与治理。此实时操作系统治理义务数多达64个,且供给内部法度榜样存储器治理、系统运行光阴治理、多义务实时调整与治理等功能。因为它的作者占用和保留了8个义务,以是留给用户利用法度榜样最多可有56个义务。付与各个义务的优先级必须是不相同的。这意味着μC/OS-II不支持光阴片轮转调整法。μC/OS-II为每个义务设置自力的客栈空间,可以快速实现义务切换。

将μC/OS-II操作系统移植到目标处置惩罚器上,必要从硬件和软件两方面来斟酌。硬件方面,目标处置惩罚器需满意以下前提:

①处置惩罚器的C编译器能孕育发生可重入代码;

②用C说话可以开/关中断;

③处置惩罚器支持中断,并且能够孕育发生准时中断(平日在10~1000 Hz之间);

④处置惩罚器能够支持容纳必然量数据的硬件客栈;

⑤处置惩罚器有将客栈指针和其他寄存器读出和存储到客栈或内存中的指令。

软件方面,主如果一些与处置惩罚器相关的代码移植,其散播在OS_CPU.H、OS_CPU_C.C和OS_CPU_A.ASM这3个不合的文件中。

滥觞:维库电子市场网

您可能还会对下面的文章感兴趣: