`

【转】嵌入式操作系统(Embedded Operating System)一览

 
阅读更多

EOS与通用的桌面OS相比较主要特点在于:

1,小内核,稳定可靠。

2,需要可装卸、可裁剪,以便能灵活应对各种不同的硬件平台。

3,面向应用,强实时性,可用于各种设备控制当中。

 

 

国际上常见的嵌入式操作系统大约有40种左,右如:Linux、uClinux、WinCE、PalmOS、Symbian、eCos、uCOS-II、VxWorks、pSOS、Nucleus、ThreadX 、Rtems 、QNX、INTEGRITY、OSE、C Executive 。他们基本可以分为两类,一类是面向控制、通信等领域的实时操作系统,如windriver公司的vxworks、isi的psos、qnx系统软件公司的qnx、ati的nucleus等;另一类是面向消费电子产品的非实时操作系统,这类产品包括个人数字助理(pda)、移动电话、机顶盒、电子书、webphone等,系统有Microsoft的WinCE,3Com的Palm,以及Symbian和Google的Android等。

 

 

 

(一)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函数接口,还有很多工作需要用户自己去完成。

 

 

 

(五)QNX

由QNX软件公司所开发的QNX操作系统,也是一套类UNIX的嵌入式操作系统,跟VxWorks同样的,QNX也是一套符合POSIX规范的操作系统。

与VxWorks同样发迹于1980年代的QNX,其特殊之处,在于其并非采用传统的高阶硬件虚拟层方式设计,而是以非常细碎的tasks形式来执行,由许多的微核心为基础组成完整的OS服务,因此QNX的硬件设计者可以自由的选择加载执行或不加载某些特定的服务,而不用去变更QNX的核心程序部份。因此基于QNX的嵌入式操作系统可以做到非常小的程度,而且依然可以具有相当高的效率与完整的菜单现。

QNX操作系统核心仅包含了CPU任务排程、进程间通讯、中断重导向以及定时器等部份,而除此之外包含驱动程序、档案系统堆叠协议以及使用者应用程序的所有程序都是属于在使用者阶段执行。QNX操作系统有个相当特殊的Proc阶段,专门负责程序process的建立,以及存储器管理等交集在系统微核心中的组件。基本上,QNX所有的组件都能透过消息传递这个函式来进行沟通,而具有良好定义的通讯机制,也能保障所有的组件都有完全独立且被保护的储存及执行空间。因此有问题的应用程序不会影响到其它组件的稳定性,发生问题的程序将会被自动终止并重新启动。

与传统的操作系统架构相较起来,微核心架构可以让嵌入式系统获得更为快速的平均回覆时间(MTTR),当硬件驱动程序失效,QNX可以在数毫秒之内,就对该驱动程序进行终止、回收资源并重新启动的步骤,让嵌入式设备可接近无停摆时间表现。

不过微核心RTOS的架构除了优点以外,由于其process间的讯息传递功能将会占用存储器频宽,影响到校能表现,因此在实际应用上,就必须采用特殊的最佳化手段,以避免掉讯息传递功能所带来的性能耗损。

虽然QNX整间公司在2004年出售给Haman International Industries,但QNX操作系统的发展脚步依旧没有停止,在国外,除了与各家国际汽车大厂合作,成为车用电子的主力操作系统以外,也获得相当多的航空公司与重要军事单位采用。而在2005年底,QNX也与国内几家包含联电、Zinwell等公司进行了合作,研华、控创等工业计算机厂商也都有针对这方面在发展。

 

(六)Nucleus Plus

这款嵌入式操作系统主要特征就是轻薄短小,其架构上的延展性,可以让Nucleus RTOS所占的储存空间压缩到仅有13K左右,而且Nucleus Plus是一款不需授权费的操作系统,并且提供了原始码。

Nucleus Plus本身只是Acclerated Technology公司完整解决方案里面的其中一环,这个RTOS本身架构属于先占式多工设计,有超过95%的原始码是用标准的ANSI C语言所编写,因此可以非常有效率的移植到各种不同的平台。Nucleus Plus在CISC架构处理器中,核心部份大约占去20KB左右的储存空间,而在RISC处理器上则是40KB左右,核心资料结构仅占约1.5KB,由于其即时回应、先占式多工、以及多process并行,并且开放原始码等特性,在国防、工控、航天工业、铁路、网络、POS、自动化控制以及信息家电等领域广泛受到应用。

就如同QNX一般,Nucleus Plus也可以根据目标产品的需求,来自行剪裁所需要的系统功能,达到精简体积的目的。而配合相对应的编译器(Borland c/c++、Microsoft c/c++)以及动态连结程序库和各种底层驱动程序,在开发上拥有非常相当大的便利性。诸如飞思卡尔(Freescale)、罗技(Logitech)公司、美国NEC、SK Telecom等公司,都有采用Nucleus Plus嵌入式操作系统作为开发产品使用。

转:http://blog.csdn.net/reniuliu/article/details/3963726

分享到:
评论

相关推荐

    嵌入式系统(Embedded system)概述

    2. **操作系统**:选择合适的嵌入式操作系统,如嵌入式Linux、RTOS等。 3. **软件设计**:采用模块化设计思想,便于维护和扩展。 4. **代码优化**:考虑到资源限制,需要进行代码优化以提高效率。 #### 七、嵌入式...

    常见嵌入式操作系统各种嵌入式操作系统的区别

    嵌入式操作系统是指在嵌入式设备中运行的操作系统,主要分为四个主要部分:启动载入程序(Boot Loader)、核心(Kernel)、根档案系统(Root File System)和应用程式(Applications)。不同的嵌入式操作系统在设计...

    嵌入式操作系统概述

    嵌入式操作系统(Embedded Operating System,EOS)是一种专门设计用于支持嵌入式系统应用的操作系统。它在嵌入式系统(包括硬件与软件两大部分)中占据着极其重要的地位。嵌入式操作系统通常由系统内核、设备驱动...

    嵌入式操作系统:现代电子设备的灵魂

    嵌入式操作系统(Embedded Operating System,简称EOS)是现代电子设备中不可或缺的核心软件,它为各种嵌入式系统提供了高效的资源管理和任务调度。本文将详细介绍嵌入式操作系统的定义、特点、分类,并展示如何在...

    嵌入式操作系统全景:常见选择与代码实操

    嵌入式操作系统(Embedded Operating System, EOS)是专为嵌入式系统设计的软件,它在资源有限的硬件平台上运行,如微控制器、单板计算机等。与通用操作系统相比,嵌入式操作系统具有实时性、多任务处理、确定性、高...

    嵌入式操作系统课件及指导

    嵌入式操作系统(Embedded Operating System, EOS)是设计用于嵌入式系统的软件,通常具有实时性、小巧、高效、稳定等特点。它们可能不包含桌面操作系统中的所有功能,但专注于为特定应用提供服务。例如,RTOS(Real...

    嵌入式资料之嵌入式操作系统课件

    嵌入式操作系统(Embedded Operating System, EOS)通常设计简洁,对实时性、资源占用和稳定性有极高的要求。在给定的“嵌入式资料之嵌入式操作系统课件”中,我们可以从压缩包内的文件名称列表中抽取出一系列关键...

    嵌入式操作系统开发实验报告

    嵌入式操作系统(Embedded Operating System, EOS)是专为特定功能设备设计的,这些设备通常不具有传统个人计算机的用户界面。它们往往需要高效能、低功耗和紧凑的内存占用。LINUX作为一种开放源代码的通用操作系统...

    一步步写嵌入式操作系统 配套源码

    在深入探讨嵌入式操作系统的构建过程之前,我们先理解一下什么是嵌入式操作系统(Embedded Operating System,简称EOS)。嵌入式操作系统是专为特定硬件平台设计的软件系统,用于控制和管理硬件资源,提供高效的服务...

    设计自己的嵌入式操作系统内核.

    嵌入式操作系统(Embedded Operating System, EOS)是专为特定设备或应用设计的操作系统,它通常需要高效、实时和低资源消耗的特性。内核作为操作系统的核心部分,负责调度任务、管理内存、处理中断等基础功能。 ...

    通用操作系统和嵌入式操作系统的区别-经典

    根据应用场景的不同,操作系统可以分为通用操作系统(General Purpose Operating System)和嵌入式实时操作系统(Embedded Real-Time Operating System)。本文旨在深入探讨二者之间的区别,特别是从实时性和资源...

    基本入门嵌入式操作系统课件

    嵌入式操作系统(Embedded Operating System, EOS)是专门为嵌入式系统设计的软件核心,它负责管理硬件资源、提供服务和接口,使应用程序能够高效运行。与通用操作系统相比,嵌入式操作系统往往有更高的实时性、更小...

    自己动手写嵌入式操作系统源代码

    嵌入式操作系统(Embedded Operating System, EOS)是专为特定硬件平台设计的,用于控制和管理嵌入式设备的软件系统。它们通常具有体积小、实时性强、功耗低等特点,广泛应用于各种领域,如物联网设备、工业控制、...

    EOS综述,详细介绍了嵌入式操作系统

    嵌入式操作系统(Embedded Operating System,简称EOS)是一种专门为嵌入式系统设计的操作系统,这些系统通常用于控制、监控或辅助各种设备、机械或工厂的操作。嵌入式操作系统的特点在于其高度优化和定制化的能力,...

    嵌入式操作系统设计与实现(代码)

    1. **操作系统基本概念**:嵌入式操作系统(Embedded Operating System, EOS)是为特定应用而定制的操作系统,包括任务调度、内存管理、中断处理、设备驱动、网络协议栈等组件。与通用操作系统相比,EOS更注重性能、...

    嵌入式操作系统结构与设计考题

    嵌入式操作系统(Embedded Operating System, 简称EOS)是专门为特定设备或应用而设计的操作系统,它通常被优化以高效地运行在资源有限的硬件上,如微控制器、工业设备、移动设备等。本考题来自西安电子科技大学的...

    《一步一步写嵌入式操作系统》书上的源码

    嵌入式操作系统(Embedded Operating System,简称EOS)是用于控制和管理嵌入式设备的操作系统,这些设备通常包括各种传感器、控制器和微处理器等。EOS设计的目标是高效、实时和占用资源少,以适应嵌入式设备的硬件...

    嵌入式操作系统 microblaze7 linux

    嵌入式操作系统(Embedded Operating System,EOS)是嵌入式软件系统的核心部分。在一个完整的嵌入式系统中,嵌入式操作系统介于底层硬件和上层应用程序之间,它是整个系统中不可缺少的重要组成部分。 嵌入式操作...

    嵌入式操作系统教材

    1. **嵌入式操作系统定义**:嵌入式操作系统(Embedded Operating System,简称EOS)是一种专门用于嵌入式系统的软件,它负责管理和调度系统资源,包括CPU、内存、I/O设备等,为应用程序提供运行环境。 2. **系统...

Global site tag (gtag.js) - Google Analytics