嵌入式操作系统及实时性问题
嵌入式系统与嵌入式操作系统嵌入式系统是以嵌入式计算机为技术核心,面向用户、面向产品、面向应用,软硬件可裁减的,适用于对功能、可靠性、成本、体积、功耗等综合性能有严格要求的专用计算机系统。…the systems that run embedded applications are often hidden fromour view, when embedded systems work correctly and well, they make us forget their existence. 嵌入式操作系统EOS(Embedded Operating System),负责嵌入系统的全部软、硬件资源的分配、调度,控制、协调并发活动;它必须体现其所在系统的特征,能够通过装卸某些模块来达到系统所要求的功能。EOS是相对于一般操作系统而言的,它除具备了一般操作系统最基本的功能,如任务调度、同步机制、中断处理、文件处理等外,还有以下特点:
嵌入式操作系统的特点:①可装卸性。开放性、可伸缩性的体系结构。②强实时性。EOS实时性一般较强,可用于各种设备控制当中。③统一的接口。提供各种设备驱动接口。④操作方便、简单、提供友好的图形GUI。⑤提供强大的网络功能。支持TCP/IP协议及其它协议,提供TCP/UDP/IP/PPP协议支持及统一的MAC访问层接口,为各种移动计算设备预留接口。
嵌入式操作系统的特点:⑥强稳定性,弱交互性。嵌入式系统一旦开始运行就不需要用户过多的干预,这就要负责系统管理的EOS具有较强的稳定性。嵌入式操作系统的用户接口一般不提供操作命令,它通过系统的调用命令向用户程序提供服务。⑦固化代码。在嵌入式系统中,嵌入式操作系统和应用软件被固化在嵌入式系统计算机的ROM中。辅助存储器在嵌入式系统中很少使用,因此,嵌入式操作系统的文件管理功能应该能够很容易地拆卸,而用各种内存文件系统。⑧更好的硬件适应性。也就是良好的移植性。
常用的嵌入式操作系统:Palm OS、Windows CE、LinuxRT Linux其它商业OSPalm OSPalm OS是一种32位的嵌入式操作系统。Palm OS是一套专门为掌上电脑开发的OS。在编写程序时,Palm OS充分考虑了掌上电脑内存相对较小的情况,因此它只占有非常小的内存。Palm OS使掌上电脑与PC机上的信息实现同步,把台式同的功能扩展到了掌上电脑。Palm应用范围相当广泛,如:联络及工作表管理、电子邮件及互联网通信、销售人员及组别自动化等等。Palm外围硬件也十分丰富,有数码相机、GPS接收器、调制解调器、GSM无线电话、数码音频播放设备、便携键盘、语音记录器、条码扫描、无线寻呼接收器、探测仪。其中Palm与GPS结合的应用,不但可以作导航定位,还可以结合GPS作气候的监测、地名调查等。
Windows CEWindows CE是微软开发的一个开放的、可升级的32位嵌入式操作系统,是一个基于掌上型电脑类的电子设备的操作系统。Windows CE是精简的Windows 95。Windows CE的图形用户界面相当出色。其中CE中的C代表袖珍(Compact)、消费(Consumer)、通信能力(Connectivity)和伴侣(Companion);E代表电子产品(Electronics)。Windows CE不仅继承了传统的Windows图形界面,并且在Windows CE平台上可以使用Windows 95/98/2000上的编程工具(如Visual Basic、Visual C++等)、使用同样的函数、使用同样的界面风格,使绝大多数的应用软件只需简单的修改和移植就可以在Windows CE平台上继续使用。
LinuxLinux是一个类似于Unix的操作系统。它起源于芬兰一个名为Linus Torvalds的业余爱好,但是现在已经是最为流行的一款开放源代码的操作系统。Linux从1991年问世到现在,短短10年的时间内已发展成为一个功能强大、设计完善的操作系统,伴随网络技术进步而发展起来的Linux OS已成为Microsoft公司Windows 95/98的强劲对手。Linux系统不仅能够运行于PC平台,还在嵌入式系统方面大放光芒,在各种嵌入式Linux OS迅速发展的状况下,Linux OS逐渐形成了可与Windows CE等EOS进行抗衡的局面。目前正在开发的嵌入式系统中,50%以上的项目选择Linux作为嵌入式操作系统。Linux现已成为嵌入式操作的理想选择。
嵌入式Linux OS的特点:①精简的内核,性能高、稳定,多任务。②适用于不同的CPU,支持多种体系结构,如X86、ARM、MIPS、ALPHA、SPARC等。③能够提供完善的嵌入式GUI以及嵌入式X-Windows。④提供嵌入式浏览器、邮件程序、MP3播放器、MPEG播放器、记事本等多种应用。⑤提供完整的开发工具和SDK,同时提供PC上的开发版本。⑥用户可定制,可提供图形化的定制和配置工具。⑦支持常用嵌入式芯片的驱动,支持大量的周边硬件设备,驱动丰富。⑧针对嵌入式的存储方案,提供实时版本和完善的嵌入式解决方案。⑨完善的中文支持,强大的技术支持,完整的文档。⑩开放源码,丰富的软件资源,广泛的软件开发者的支持,价格低廉,结构灵活,适用面广。
几种嵌入式操作系统的比较: