嵌入式操作系统的现状及发展趋势
2009-12-11姚锡忠
姚锡忠
摘要:本文分析了嵌入式操作系统的特点,并且从嵌入式操作系统的应用着手,探讨了嵌入式系统的未来发展趋势。
关键词:嵌入式系统;嵌入式操作系统;实时性;嵌入式Linux
1 引言
嵌入式系统主要由嵌入式处理器、相关支撑硬件、嵌入式操作系统及应用软件系统等组成。嵌入式操作系统(real-time embedded operating system, RTOS 或EOS)是一种支持嵌入式系统应用的操作系统软件,它是嵌入式系统极为重要的组成部分,通常包括和硬件相关的底层驱动软件、系统内核、设备驱动接口、通信协议、图像界面、标准化浏览器等browser。嵌入式操作系统具备通用操作系统的基本特点,如能够有效管理越来越复杂的系统资源;能够把硬件虚拟化,使得研发人员从繁忙的驱动程式移植和维护中解脱出来;能够提供库函数、驱动程式、工具集连同应用程式 。和通用操作系统相比较,嵌入式操作系统在系统实时高效性、硬件的相关依赖性、软件固态化连同应用的专用性等方面具备较为突出的特点。
2 嵌入式操作系统的发展历史
从1981年Ready System发展了世界上第1个商业嵌入式实时内核(VRTX32),到今天已经有近30年的历史。嵌入式操作系统伴随着嵌入式系统的发展经历了三个比较明显的阶段:
第一阶段:无操作系统的嵌入算法阶段。这一阶段的嵌入式系统是以可编程控制器的形式、以单芯片为核心的系统,同时具有与一些监测、伺服、指示设备相配合的功能。这种系统大部分应用于一些专业性极强的工业控制系统中,一般没有明显的被称为操作系统(RTOS)的支持,而是通过汇编语言编程对系统进行直接控制,运行结束后清除内存。这一阶段系统的主要特点是系统结构和功能都相对单一,针对性强,但无操作系统支持,几乎没有用户接口,比较适合于各类专用领域中。第二阶段:简单监控式的实时操作系统阶段。这一阶段的嵌入式系统主要以嵌入式CPU为基础、简单操作系统为核心的嵌入式系统。系统的特点是处理器种类繁多,通用性比较差;系统开销小,效率高;一般配备系统仿真器,操作系统具有一定的兼容性和扩展性;应用软件较专业,用户界面不够友好;系统主要用来控制系统负载以及监控应用程序运行。第三阶段:通用的嵌入式实时操作系统阶段。以通用型嵌入式实时操作系统(RTOS)为标志的嵌入式系统,如VxWorks、pSOS、OS-9、Windows CE就是这一阶段的典型代表。这一阶段系统的特点是能运行在各种不同类型强大的微处理器上;具有强大的通用型操作系统的功能,如具备了文件和目录管理、多任务、设备支持、网络支持、图形窗口以及用户界面等功能;具有大量的丰富的应用程序接口(API)和嵌入式应用软件丰富。
3 嵌入式操作系统的应用特点
与其他类型的操作系统相比,嵌入式操作系统具有以下一些特点。
实时性:所谓实时性,其核心含义在于操作系统在规定时间内准确完成应该做的事情,并且操作系统的执行线索是确定的,而不是单纯的速度快。嵌入式任务往往是时间关键性约束的,必须在某个时间范围内完成。
可剪裁性:为了能够适应各种应用需求的变化,能否对系统的功能模块进行配置是嵌入式系统与普通系统的另一区别。不论从硬件环境、应用环境还是开发界面来看,应用于嵌入式环境的RTOS让开发人员可以根据硬件环境和应用环境的不同而对操作系统进行灵活的裁剪和配置。
可靠性:嵌入式系统一旦开始运行就不需要人的过多干预。在这种条件下,要求负责系统管理的嵌入式操作系统具有较高的稳定性和可靠性。运行于嵌入式环境中的RTOS要求应用软件具有与操作系统同样的可靠性,这种设计思路对应用开发人员提出了更高的要求,同时也要求操作系统自身足够开放。
体积小:嵌入式系统提供的资源有限,由于硬件的限制,嵌入式操作系统必须小巧简捷。特殊的开发调试环境:提供完整的集成开发环境是每一个嵌入式系统开发人员所期待的。一个完整的嵌入式系统的集成开发环境一般需要提供的工具是编译/连接器、内核调试/跟踪器和集成图形界面开发平台,其中的集成图形界面开发平台包括编辑器、调试器、软件仿真器和监视器等。
4 嵌入式操作系统的应用现状
据调查,目前全世界的嵌入式操作系统已经有两百余种,有许多商业的嵌入式操作系统,也有大量开放源代码的嵌入式操作系统,其中著名的有Vxwork、QNX、PalmOS、Windows CE、uC/OS和Linux等。WindRiver公司的VxWorks是专门为实时嵌入式系统设计开发的操作系统软件。VxWorks 支持各种工业标准,包括POSIX、ANSI C 和TCP/IP网络协议。VxWorks 运行系统的核心是一个高效率的微内核,该微内核支持各种实时功能,包括快速多任务处理、中断支持、抢占式和轮转式调度。微内核设计减轻了系统负载并可快速响应外部事件。QNX是由加拿大QNX软件系统有限公司开发的分布式实时操作系统,它由微内核和一组共操作的进程组成,具有高度的伸缩性,可灵活地剪裁,最小配置只占用几十KB内存。因此,可以广泛地嵌入到智能机器、智能仪器仪表、机顶盒、通讯设备、PDA等应用中去。3Com公司的Palm OS在掌上电脑和PDA市场上独占其霸主地位。Palm OS是一种32位的嵌入式操作系统,提供了串行通信接口和红外线传输接口,利用它可以方便地与其它外部设备通信、传输数据,拥有开放的OS应用程序接口,开发商可根据需要自行开发所需的应用程序。Windows CE是微软开发的一个开放的、可升级的32位嵌入式操作系统,是基于掌上型电脑类的电子设备操作。它是精简的Windows 95。Windows CE的图形用户界面相当出色。Windows CE内核较小,能作为一种嵌入式操作系统应用到工业控制等领域。其优点在于便携性、提供对微处理器的选择以及非强行的电源管理功能。内置的标准通信能力使Windows CE能够访问Internet并收发E_mail或浏览Web。除此之外,Windows CE特有的与Windows类似的用户界面使最终用户易于使用。Windows CE的缺点是速度慢、效率低、价格偏高、开发应用程序相对较难。
5 嵌入式操作系统的发展趋势
通过对现有嵌入式操作系统进行分析,我认为它们虽然提供了较为强大的类似于桌面操作系统的功能,但针对嵌入式系统的特征与特性而言,其共同的缺点是缺乏应用的高效性,网络连接功能较差,系统对应用程序开发支持相对较弱,因此,迫切需要面向应用的、专用特制的新一代嵌入式操作系统。特定应用的嵌入式实时操作系统(application specific operating systems,ASOS)是指面向应用的、专用特制的嵌入式实时操作系统。它除具有基本的处理多任务、文件及设备驱动的操作系统功能之外,还具有如下系统特性:
面向特定应用的简化型系统调用接口,专门支持一种或一类嵌入式应用;最小内核处理集,系统开销小,运行效率高,并可用于各种非计算机设备;可伸缩性、可裁减的系统体系结构,提供多层次的系统体系结构;具有各种即插即用的设备驱动接口; 具有网络如Internet或无线接入功能,提供TCP/UDP/IP/PPP协议支持及统一的 MAC 访问层接口,为各种移动计算设备预留接口。同时,随着硬件技术、应用需求和开发需求的变化,嵌入操作系统也需要支持面向对象和可重用等技术。这也要求未来嵌入式操作系统的开发要注意以下几个方面:通过自动化配置提高系统移植的效率,即尽量将操作系统的移植工作让开发工具自动完成;系统性能向信息化、网络化、智能化发展;面向构件的体系结构,即将操作系统的功能模块构件化,建立标准统一的网络通信协议,并在嵌入式操作系统构件化基础之上实现应用程序的智能化。
6 结束语
随着Internet及芯片技术的快速发展,嵌入式系统应用的持续升温,嵌入式操作系统也得到了蓬勃发展,当然也对嵌入式操作系统在提高嵌入式系统开发的效率,增强嵌入式应用软件的可移植性等方面提出了更高的要求,使嵌入式系统的开发方法更具科学性。
参考文献
[1]嵌入式操作系统的定义及其发展趋势. http://info.ec.hc360.com/HTML/001/25204.htm.
[2]何小庆.嵌入式Linux_嵌入式系统软件的机遇和挑战.电子产品世界.2002.9.A.