一、什么是嵌入式软件
嵌入式软件是数字化产品的核心,作为嵌入式软件的基础和龙头,嵌入式操作系统在产业发展过程中扮演了越来越重要的角色。所谓嵌入式软件(Embedded Software),从广义上讲是计算机软件的一种,是由程序及其文档组成,可分成系统软件、支撑软件、应用软件三类。
嵌入式软件是与嵌入式系统密不可分的。嵌入式系统最初是指用以控制设备的计算机,通常是在设备内部,为了控制设备行为或是嵌入在其它系统中的一种专用软件和硬件。它一旦启动就执行某一特定的程序,中间无需人工干预,直到关机为止。但通常要求具有实时响应能力,一般不要求复杂的用户界面,甚至不要求支持键盘、显示器、串行口、硬盘等外设接口,也不需用户进行二次开发。它被广泛地用于仪器仪表、工业控制设备、电梯、程控交换机、微波设备、交通灯、家用电器等设备中。近年来,随着信息技术的飞速发展,嵌入式系统具有了新的内涵,同时萌生了许多形态各异的接入设备,如手持电脑、可上网的无线移动手机、机顶盒、家庭网关、可上网的电视机、可上网的车载盒、智能家用电器等等。相应地对嵌入式软件也提出了与最初不同的要求。
二、嵌入式操作系统的基本组成
嵌入式操作系统种类繁多,有资源开销很少的IC卡操作系统,也有功能较强的网络计算机操作系统。这些嵌入式操作系统从功能到性能各具特色,为各种硬件环境及应用提供了相应的支持和服务。
目前,市场上共有几十种操作系统,有深嵌入系统,也有浅嵌入式系统;有多任务系统,也有单任务系统;有实时系统,也有分时系统。总之,不同厂商推出的操作系统或多或少都有差异,但许多嵌入式操作系统一般具有如下一些内容和功能:系统核心、窗口图形系统、文件系统、设备驱动程序和网络协议等。
当前许多嵌入式操作系统都有一个多任务核心,以满足多种嵌入式系统的需要,对于系统核心的功能,各种嵌入式系统差别较大,但即使是微内核系统,系统核心也负责完成如下一些基本任务:进程间通讯、线程调度、中断和内存管理等。
在一些嵌入式系统中,窗口系统没有被采用,随着嵌入式操作系统的广泛应用,嵌入式系统性能的提高,窗口系统越来越成为许多嵌入式操作系统的重要内容。窗口系统一般具有如下一些基本功能:窗口管理功能、接口,提供菜单、按纽、编辑框、组合框、控件框、滚动条、对话框和默认窗口等多种窗口界面对象。许多嵌入式操作系统都有文件系统,一般支持ROM、RAM、FLASH和外接卡文件系统,提供文件的创建、打开、读写和检索等功能。
设备驱动是大多嵌入式系统的重要内容,驱动内容包括RS232接口、网络设备、LCD、笔、鼠标、触摸屏等。嵌入式设备正逐渐成为主要的互联网接入设备,与之对应,嵌入式操作系统也必须支持相关的网络协议,目前许多嵌入式操作系统都支持TCP/IP。
三、嵌入式操作系统发展现状
20世纪80年代,商业化的嵌入式操作系统开始得到蓬勃发展。目前国内外已有几十种商业操作系统可供选择,如VxWorks、pSOS、Palm、OS、Neculeus、Windows、CE和“女娲Hopen”等。
在中国,嵌入式操作系统可分为两大类型:一类是自主版权的操作系统,另一类是基于Linux的操作系统。自主版权的操作系统方面,国内有“女娲Hopen”操作系统、桑夏2000操作系统和DeltaOS操作系统等。“女娲Hopen”是凯思集团推出的产品,目前已进入产业化阶段,目前“女娲Hopen”已能支持所有主流的嵌入式芯片。凯思与联想、TCL、Motorola、Winbond、上海贝尔等国内外知名厂商合作开发出了多种产品:联想“天玑810”、天玑e卡通、“天玑911”、TCL集团家庭信息显示器HiD、天亿股票机顶盒、VoD视频点播机顶盒等。
桑夏2000操作系统是深圳桑夏公司推出的产品,是一个面向嵌入式应用的实时操作系统,具备文件系统和嵌入式数据库引擎,提供了基本的图形用户接口,支持层次化、模块化的软件模型,可行动在“龙珠”等三种系列的CPU上,支持包括TCP/IP协议在内的网络通讯协议。
DeltaOS是北京银京成公司开发的嵌入式实时操作系统,它主要包括:内核DeltaCORE、嵌入式TCP/IP DeltaNET、嵌入式文件系统DeltaFILE以及嵌入式图形接口DeltaGUI。DeltaOS支持ARM7、StrongARM、PPC8XX、PPC4XX、X86、MIPS等多种嵌入式微处理器,可应用于消费电子产品、通信产品、工业控制及军用电子产品中。
近年来,嵌入式Linux进展较快。在中国,以Linux为基础的嵌入式操作系统比较活跃,其中中软Linux、红旗Linux、东方Linux是业界的代表。
中软总公司以数控平台为背景,推出了中软Linux3.0。中软嵌入式Linux是实时系统,这套基于Linux的嵌入式系统不仅满足了数控机床的需求,同时可以应用于其它工业控制领域。
红旗Linux把工控和信息家电作为主要的发展领域。红旗Linux为用户提供了Windows风格的控件集、图形中文环境和嵌入式数据库的开发工具。中科红旗公司开发出了针对工控领域的嵌入式Linux系统。
东方Linux是凯思集团推出的产品。凯思通过与中芯微合作,已经推出了网络计算机(NC)采用东方Linux的NC系列产品除具有传统终端的功能之外,还具有本地计算能力,用户可以通过NC使用安装在服务器上的应用程序,并可以使用多种本地软件。该产品工作方式基于集中与开放网络服务的运算模式,兼容多种网络协议标准,用户可以在任意地点通过网络连接设备,实时访问服务器端的应用程序。该产品可应用于政府、国防、教育、商业、金融等领域。
四、嵌入式操作系统的应用
1.掌上电脑(PDA):随着掌上电脑等手持设备性能的提高,嵌入式操作系统将成为必需的配置;随着行业的推广,行业应用软件市场将迅速扩大;掌上电脑功能的不断扩展,专项功能软件面临新的发展机会。
2.机顶盒:机顶盒是一个很宽泛的概念。从广义上说,凡是与电视机连接的网络终端设备都可称为机顶盒。机顶盒一般可分为三类:数字电视机顶盒(使模拟彩电能够接收数字电视信号)、网络电视机顶盒(通过电视机能够浏览互联网)、VoD数字机顶盒(基于宽带网实现上网和双向视频点播功能)。机顶盒市场有赖于三大条件:较好的网络环境、丰富的内容(数字节目、用户关心的网络内容、VoD节目源)和相关政策、行业标准。嵌入式操作系统在机顶盒中起着重要的作用。依赖于操作系统的支持,机顶盒可以上网、收发电子邮件、运行各种行业应用软件、实现视频点播。随着机顶盒的广泛应用,嵌入式操作系统也将面临良好的市场机遇。
3.手机:手机是嵌入式软件的主要载体之一,数量特别巨大。手机最早只有基本的语音服务,其后增加了简单的附加应用(比如电话簿),后来又加入了WAP方式访问Internet的功能,提供话音、数据和多媒体应用及服务。无线Internet是必然的发展方向,人们可以在移动的条件下实现日常办公和生活娱乐,也可以实现随时随地完成个人通信和信息交流,如上网浏览、音像点播、网上购物以及各种定制信息。这些新功能的实现,大多依赖了嵌入式操作系统。
4.数码相机:嵌入式软件系统是数码相机的核心技术,数码相机的大部分功能主要通过软件来控制和实现。一方面,嵌入式软件贯穿整个数码摄影的全过程。以嵌入式软件为核心的系统可以对数码相机的整个摄影过程进行控制,实现对数字影像的采集、处理、存储和传递的管理。另一方面,通过嵌入式软件系统可集成多种硬件,适合于不同应用环境。利用嵌入式软件的可扩充特性和硬件提供的标准接口,数码相机可以与其它电子产品相联接,甚至相融合;通过各种软件功能模块来扩充数码相机的功能和其它应用,为用户提供全面的、多方位的、网络化的、个性化的功能和服务。
5.数字电视:数字电视能够支持家庭信息化、宽带互联网和互联社区的服务。而这些扩展的功能,都离不开软件。随着接收机系统业务种类的增加,接收机系统的管理复杂程度将大大增加,需要一个嵌入式操作系统,能够实时地管理、控制硬件和处理任务。因此,数字电视为嵌入式软件带来了新的发展机遇。
五、发展趋势
1.嵌入式产品将与互联网应用相互促进,快速发展,嵌入式产品将成为互联网的主要终端之一,网上将出现大量的服务于嵌入式产品的软件,并有专门服务于嵌入式产品的内容。
2.随着微电子技术的快速发展,芯片功能更加强大,SOC(System on Chip)将成趋势,这不仅能降低成本,缩小产品体积,还将增强产品的可靠性。同时,软件硬件的紧密结合,嵌入式软件与硬件界限更加模糊,嵌入式软件时常以硬件形态存在,这种方式可提高实时性,增强可维护性。
3.无线通讯产品将成为嵌入式软件的重要应用领域,一方面,已有无线产品将借助芯片技术和嵌入式软件来提高性能,另一方面当前许多嵌入式产品都将增加无线通讯功能。因此,未来几年,蓝芽等相关技术会与嵌入式软件相互促进,共同发展,使更多的产品具有通讯功能,使更多的通讯产品更好地为用户服务。
4.嵌入式操作系统会与嵌入应用软件协同发展。嵌入式系统中的重要角色包括嵌入式应用软件,嵌入式系统应用领域千差万别,只有充分重视应用软件的发展,才能满足丰富多彩的应用要求。
5.嵌入式操作系统是在多种硬件平台上发展起来的,随着嵌入式系统的广泛应用,信息交换、资源共享机会增多,由此相关的标准问题也将日渐突出,如何建立相关标准成为业界关注的问题。