嵌入式操作系统

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

嵌入式系统是根据应用的要求,将操作系统和功能软件集成于计算机硬件系统之中,从而实现了软件与硬件一体化的计算机系统。嵌入式系统一般不提供与终端用户交互的手段,具有小巧、高度自动化、响应速度快等特点。作为嵌入式系统灵魂的嵌入式操作系统,是随着嵌入式系统的发展而出现的,它是嵌入式系统发展到一定阶段的产物。嵌入式操作系统的出现,将大大提高嵌入式系统开发的效率,改变以往嵌入式软件设计只能针对具体的应用从头做起的历史。在嵌入式操作系统之上开发嵌入式系统将减少系统开发的工作量,增强嵌入式应用软件的可移植性,使嵌入式系统的开发方法更具科学性。可以说,嵌入式操作系统的出现为嵌入式系统的发展铺平了道路。嵌入式操作系统负责嵌入式系统的全部软、硬资源的分配、调度工作,控制并协调并发活动,它必须体现其所在系统的特征,能够通过装卸某些模块来达到系统所要求的功能。

常见的几种嵌入式操作系统,现行应用中比较流行的嵌入式操作系统有Linux、WindowsCE、VxWorks、eCos、μC/OS-II、QNX等,下文将列举这几种相对常见的嵌入式操作系统特性,作为设计选择参考。

1.嵌入式Linux

Linux是开放源代码、免费使用和自由传播的操作系统,发展历史悠久,第三方应用软件非常丰富,多数自由软件都能够运行在Linux系统上。Linux经过不断改版升级,已经发展成一个遵循POSIX标准的纯32位多用户多进程操作系统。嵌入式Linux是将Linux操作系统进行裁剪修改,使之能在嵌入式计算机系统上运行。它广泛应用在移动电话、个人数字助理(PDA)、媒体播放器、消费性电子产品以及航空航天等领域。嵌入式Linux因此具有丰富的开放源代码资源,又具有嵌入式操作系统的特性,有许多公开的代码可以参考和移植,免费的OS使其在价格上极具竞争力。Linux的内核小、效率高,内核的更新速度很快;Linux可定制,其系统内核最小只有约134 KB。Linux适用于多种CPU和硬件平台,是一个跨平台的系统。到目前为止,它可以支持Alpha、ARM、M68K、MIPS、PowerPC、

SH、SPARC、MicroBlaze、Intel X86等二三十种CPU。Linux具有丰富的可配置组件,如数量繁多的设备驱动程序、多媒体、文件系统、网络、内存管理等。嵌入式Linux系统不是实时操作系统,RT_Linux支持实时性,稳定性好,安全性好,不过价格不低。也有针对没有MMU设备移植的μClinux系统(最新的Linux2.6内核可配

置MMU,支持无MMU的CPU,实际上已合并了μClinux)。搭建嵌入式开发环境,可以免费从Linux官网下载gcc编译器、gdb调试器等交叉开发工具。要求运行在Linux系统上,这对Windows用户来说可能是不易接受的。虽然通过Cygwin可以在Windows上交叉开发Linux程序,不过Cygwin首先需要配置并生成交叉工具链。在生成交叉编译器的过程中,可能会遇到多次错误,就需要根据给出的出错信息,进行相应文件的修改。并且在实践中发现,利用Cygwin编译嵌入式Linux应用程序和Red Hat Linux编译的运行效果不一致。虽然Linux下支持的图形化交叉调试工具有不少可用资源,但针对具体的硬件平台,需要的设置工作也不少。可见,嵌入式Linux还缺乏好用的集成开发环境,需要消耗一定人力用于搭建开发环境。

2. VxWorks

VxWorks操作系统是美国WindRiver公司于1983年设计开发的一种嵌入式实时操作系统(RTOS),具有高可靠性、高实时性、高性能、组件丰富可裁剪的微内核结构,以及友好的用户开发环境。它以良好的可靠性和卓越的实时性被广泛地应用在通信、军事、航空、航天等高精尖技术及实时性要求极高的领域中,如卫星通信、军事演习、弹道制导、飞机导航等。在美国的F-16/FA-18战斗机、B-2隐形轰炸机和爱国者导弹上,甚至火星探测器上也用到了VxWorks。支持的CPU有M68K、PowerPC、ColdFire、In-tel X86、ARM、SPARC、MIPS等几十种。Tornado是WindRiver公司推出的集成开发环境,为用户提供支持C、C++语言的交叉编译器和类库。编译器包括GNU的C/C++编译器和Diab C/C++编译器。图形化的工程管理工具非常方便有效,可以方便地对VxWorks操作系统、组件及工程编译参数进行配置。核心工具包括VxSim仿真器、WindView软件逻辑分析

仪、WindShell命令行执行工具、CrossWind集成调试器、Brow-ser系统对象检查工具。这些工具非常实用,方便开发调试。编辑器虽不受推崇,但好在可以设置外部编辑器。VxWorks性能优越,开发调试便利,有强大的技术支持,但是昂贵的价格让开发者望而却步。

3. eCos

eCos(embedded Configuration operating system)是由RedHat推出的小型实时操作系统。它诞生于1997年,最早是Cygnus公司开发,后被RedHat收购。它的特点是源码开放、免费、内核可灵活配置(配置项达200多项,甚至可以配置调度器的级别和最大任务个数,可以说是调整操作系统以适应应用程序),最低编译内核可小至10 KB的级别,适合用于微小型系统,比如增强型bootloader。eCos网络发行版支持的交叉开发主机有Windows和Linux两种版本,开发编译工具可支持GNU开源的开发工具链。eCos系统包含的开发工具有软件配置和构建工具,及基于GNU的编译器、汇编器、链接器、调试器和仿真器。支持的CPU有十几种,包括ARM、Hitachi H8300、Intelx86、MIPS、Matsushita AM3x、Motorola 68k、PowerPC、SuperH、SPARC和NEC V8xx,可以方便对不同平台的移植。eCos 系统组件非常丰富,可加速开发。核心组件有

硬件抽象层、实时内核、μITRON 3.0兼容的API、POSIX兼容的API、ISO C和数学库、从USB支持,TCP/IP网络协议栈、GDB调试支持、串口、以太网驱动等。

4. μC/OS-II

μC/OS-II是Micrium公司的基于优先级抢占、多任务的小型实时操作系统。发布于1992年,最多可以管理255个任务,支持信号量及互斥信号量、消息队列和消息邮箱、固定大小内存块管理、时间/定时器管理等服务。内核代码量小巧,适合学习和研究。作为大学实时操作系统的典型教材,它具有广泛的用户群,已广泛应用于高安全性的设备。其源码

相关文档
最新文档