Products overview

 嵌入式系统中一直很少使用数据库,因此对大部分人来说,很难想象嵌入式数据库在哪些场合才能发挥出优势 事实上,嵌入式数据库大致可在以下两大领域使用:

    ①会计、证券交易等业务的应用软件 在这类软件中应用,不是把数据库作为服务器端组成C/S结构,而是将数据库嵌入到应用程序(使之成为程序的一部分)进行使用 通常也称为“软件嵌入”

    ②车载导航、路由器、信息家电、DVD记录装置、iPOD、机器人等嵌入式系统 在这类嵌入式系统当中,除了硬件部分外,还需用软件对其进行控制 这时将嵌入式数据库嵌入到这些硬件当中,可使系统的性能和效率大大提高 通常也称作“硬件嵌入” 2 嵌入式数据库应用实例

    2.1 FA领域的实例

    下面举例介绍嵌入式数据库产品在控制仪器、数据收集装置中的使用

    FA(Faetory Automation)是采用计算机控制技术使工厂自动化,既可提高生产效益又可实现必要的功能 嵌入式数据库在FA领域已经广泛使用

    2.1.1 汽车碰撞测试装置

    嵌入式数据库经常在汽车碰撞测试装置中使用,

    如图所示:

    所谓汽车碰撞测试,是检验汽车安全性能的一种有效手段 在测试中,让汽车高速碰撞某个物体,然后收集嵌入在车体中各个部位的各种感应器所发出的数据,再对这些数据进行分析,这需要在碰撞的瞬间大量地收集和保存数据 这时,如何能尽快地保存数据是一个问题 为了解决这个问题,在汽车碰撞测试装置中使用嵌入式数据库,取得非常好的实际效果

    2. 1.2发电机监视装置

    在美国型发电厂的发电机监视装置里,使用了嵌入式数据库 发电厂的发电机是非常重要的生产设备,所以要严格管理以防发电机停机 发电机的监控装置通过收集发电机的各种数据进行监视,如图2所示

    这种需要实时监控的场合,在数据库里预先录入了监视数据用的程序模块,当来数据进入“异常值”、“异常范围”,“警戒范围”的时候.这些程序模块会检测出这些数据,然后自动报警.同时通知监视中心有异常情况 这种数据收集也可用于发电机系统的模拟试验

    2.1.3监视引擎

    在美国的大型飞机制造厂,为了收集引擎的测试数据和飞机内部机械的数据,在飞机上也装载了嵌入式数据库 在美国的大型汽车制造厂的引擎废气排放测试装置里,也嵌入了数据库,废气排放测试的结果全部保存于数据库,以后的其他测试、分析以及模拟试验等环节就能有效利用这些数据 2008年奥运会所使用的环保巴士内也使用了嵌入式数据库

    2.1.4在FA领域中使用数据库的注意事项

    在这个领域利用嵌入式数据库时,会有一些常见的典型问题,如往数据库写入数据的速度和性能等问题 一方面要求内存消耗量足够少,一方面又需要对大量数据的进行运算,所以必须同时满足两个相反的要求 再者,像发电机装置监视的例子那样,数据监视模块必须要嵌入到数据库中(在实际的嵌入式数据库中,这些监视模块主要是通过用户自定义的函数来实现数据的收集、监视和报警等)

    另外,在出现故障时能否通过事务处理和恢复注册等功能进行数据的恢复也很重要

    2.2车载导航的实例

    2.2.1 车载导航的GPS与自动导航装置组合

    车载导航系统在日本等发达国家已经普及,在中国实际使用者应该也有很多 不过对日常使用的车载导航,了解它的内部构造的人并不多 这里就有关车载导航的系统构造进行简单说明

    车载导航GPS(Global Position System,全世界定位系统)是利用装有车速脉冲、罗盘传感器等的“自动导航法”装置,为正在驾车的驾驶员进行现在的位置及驶向目的地行驶路线导航的一种电子仪器

    车载导航刚开始开发时,只使用“自动导航法”装置 由手靠装置自身来推算出车辆的位置,因此行驶开始后有必要对行驶到一定地点的行驶方向和行驶角度进行小调鏊 现在GPS方法非常盛行 该方法通过GPS推算出车辆的僮嬖 不过只靠GPS,不管怎样设计总会有某种程度的误差 因此,现在的车载导航通过对GPS和“自动导航法”装置组合的方法来弥补双方的缺点,以推算出车辆的位置

    2.2.2车载导航与地图信息的融合

    车载导航正在朝以下各方向进化,即它不局限于检测出车辆自身的位置,还可以根据需要调出道路信息和地图信息等,并把这些信息和车辆的行驶状况相对照进行计算后提示给用户,如图3所示 为了得到这些信息,应在车载导航上装载DVD—ROM之类的存储设备 由于地图信息不是需要频繁更新的相对静止信息,DVD—ROM之类的ROM存储设备完全可以满足这些信息的处理要求

    2.2.3用车载导航处理交通信息

    随着技术的发展,现在的车载导航系统把交通信息、堵车信息等也都反映在车载导航中了 因为这些信息要不断地被更新,所以ROM存储设备已很难满足需求了

    为此,许多最新的设计方案中用硬盘存储介质(HDD,Hard Disk Drive)代替ROM存储介质 这样,能够对多种信息进行更新的新一代车载导航产品问世了 另外,由于装载了HDD使得车载导航的运行速度变得更快

    2.2.4车载导航上追加媒体终端功能

    现在可以播放音乐、能与因特网联网的具备个人电脑功能的车载导航系统已经出现了 另外,还可将电视功能作为标准配置装在车载导航系统上 电视机除了具有原先的模拟播放形式外,还具有点播方式的数字电视功能

    2.2.5现在的车载导航存在的问题

    现在的车载导航还有许多功能不能满足客户的要求 例如:不能进行复合检索和模糊检索 所谓“复合检索”就是类似这样的检索要求:“要在距离人民广场10 km范围内并距离火车站3 km的范围内的地方寻找三星级以上宾馆” 所谓“模糊检索”是,只知道要检索的公司名或地点名的一部分,通过“中间一致”和“后方一致”的方式检索出所有匹配的类似目标

    大部分车载导航是通过使用ROM存储方式提供地图信息、店铺信息以及设施的数据来进行计算的,不能够随时对有变化的一部分数据进行更新,只能重新再制作一张DVD—ROM,对所有的信息进行一次性的完全更新

    除此以外,不同的使用者应该可以设定自己的个性化数据,即在使用车载导航时,根据个人的身份数据的不同,应能产生不同的检索结果(这被称为“个性化功能”) 在目前的车载导航上还不能够实现这种功能

    要实现这些功能,必须使用嵌入式数据库

    2.2.6 数据库用在车载导航场合能实现的功能

    下面再详细说明一下嵌入式数据库在装入车载导航装置后能实现的新功能

    在检索功能方面,不但能实现上面的复合检索和模糊检索等,还能实现空间检索 所谓的“空间检索”,就是能在二维地图上进行检索 具体地说,就是手机带有的道路向导和车载导航的路由检索功能中预先把坐标数据和属性数据保存于数据库中,在检索条件里设定一个空间范围(例如:离某地几km内,同时在另外一个范围内 类似二个圆的交集)

    个人住所地址或店铺名称等发生更改时,使用嵌入式数据库的优势就体现出来了 例如“A百货店”改为“B百货店”时,要是不更换新的DVD—ROM就一直是“A百货店”,如果换上新的DVD—ROM就会变成“B百货店”,“A百货店”就不能被检索了,二者都是不能被接受的 这时如果使用嵌入式数据库,则在一定的时期内对输入的“A百货店”或“B百货店”都能进行检索;过了一定时期后,还可以删掉“A百货店”,只让“B百货店”成为检索对象

    以个人履历信息为基础的详细个性化功能的形式如:在“张三”的车载导航的履历中,他经常去垒球场 以后,只要“张三”检索体育场,首先就会显示垒球场的信息

    现在的车载导航有个很麻烦的问题,那就是由于不能随时随地按要求部分地更新导航设备中需要更新的相关信息,而使整个导航仪器的信息不准确 下一代的车载导航通过使用数据库来解决这个问题,使数据能够得到及时更新;并且在数据更新的同时,还可以进行数据检索 还有一个重要的优点就是,车载导航的数据库不会因为引擎停止、电源切断等原因而被损坏 当然,用在车载导航中的嵌入式数据库资源消耗量(CPU和储存容量)必须很低,而且对有关历史信息、路径信息也须有某种程度的安全保护功能

    加载数据库后的车载导航系统功能如图4所示

    2.3信息家电的实例

    2.3.1 与网络连接的家电是将来的主流

    信息家电正在改变人们的生活 以电视机、大容量刻录机、DVD、HD、AV机等为代表的家电数字化进程正在稳步推进 另外,电视节目也将以数字化的形式传输和播放 这些节目可以预先存储在服务器上再播放,即所谓的“服务器蓄积型”播放形式

    所谓信息家电就是具有信息处理能力的家电产品 例如:数码相机、手机等产品,以及今后以和计算机网络连接为前提的产品(例如DVD、刻录机、机顶盒等) 这些产品一定会越来越多

    2.3.2 信息家电中使用嵌入式数据库的例子

    信息家电领域使用数据库的实例如图5所示

    例如一个用于卫星播放或有线播放的机顶盒 机顶盒里保存有大量的数据,如节目表、节目内容、某时间段播放的电影内容介绍、主演演员的介绍等信息 这些信息的管理和下载、录入和检索等都要通过数据库来实现 用了数据库技术以后,对节目信息可以同时进行下载和检索 这是利用多进程的数据库来实现的,一个数据库可以支持多个用户同时访问 另外,使用节目名字、种类等进行更复杂的复合检索都变得简单易行

    和互联网电视从远程下载节目信息的接收装置一样,许多信息家电需要进行远距离的电视节目信息的管理、下载、检索,并根据演员的名字或节目种类进行复合检索 今后的DVD刻录机、带HDD的DVD刻录机等产品也需要这些功能

    另外,通过在卡拉OK遥控装置中装载嵌入式数据库,就可以提供根据曲名、种类进行复杂的复合检索 通过设定广告播放控制盒等设备的各种参数,可以实现广告内容的定时管理等功能

    2.3.3信息家电中使用数据库的注意事项

    要在信息家电领域使用数据库,数据库的内核必须足够的小 电源断电后的恢复功能(即电源断电后自动恢复到原先状态的功能)也是必要的 在实际应用中,电源发生瞬间或者长时间断电的时候,对数据进行保护是毋庸置疑的 数据库通常是通过事务处理来对数据进行保护的 具体地说,这种事务处理就是把日志写入文件系统 因此,一旦文件系统被破坏,就不能进行事务处理了 也就是说,仅靠文件系统层面来实现电源断电恢复功能或数据保护功能是很难的 嵌入式数据库里可以带有其他的硬件所提供的独立的高性能、高稳定性的文件系统来完善电源断电恢复功能和数据保护功能 这时,可以根据需要选择文件系统层面的断电保护和数据库层面的断电保护

    在信息家电的制造中,常常受生产成本或价格的制约,仅靠硬件达不到预期的高性能 因此需要嵌入式数据库,以支持内存存取和磁盘存取 把最重要的数据表放到内存,可以大大提高性能,降低成本

    2.4 宇宙航空和机器人的实例

    现在,嵌入式数据库在宇宙航空和机器人等方面有很多实际应用 例如木星探查伽利略计划,卫星观测系统,地上测定、命令处理系统,卫星控制系统,天气预报的发布系统,战争模拟游戏等 除此以外,还有许多其他的宇宙航空项目和机器人项目中使用了嵌入式数据库,如图6所示

    嵌入式数据库在宇宙航空以及机器人的应用程序中起着核心的作用 在数据库中保存着全部的程序、指令、可执行的模块,并将这些制作成基于知识(knowledgebased)或者基于规则(rule based)的系统 可执行模块将根据传感器的信息执行各种动作或命令

    将来,保存于数据库中的执行模块很可能实现自动执行的功能

    嵌入式系统在工业控制中的应用

    • 作者:admin

    • 来源:

    • 时间:2008-07-24

    • 阅读:79

    摘 要:工业控制是嵌入式系统的应用的重要领域,Linux 系统是嵌入式系统开发的有力工具,本文主要利用Linux系统来具体实现一个嵌入式工业控制系统。同时,所讨论的实时系统的研究,为在一个系统中同时支持多种实时调度方法提供了可能性。

    关键字:实时性 嵌入式系统 工业控制

    1. 前言

    嵌入式技术是21世纪最有生命力的新技术之一,目前已经广泛应用于社会生活的各个方面。嵌入式系统的应用与开发则是当今计算机行业发展的一个热点。现今嵌入式软件的应用与开发的领域主要有:国防、移动通信、电子、办公自动化、机/车顶盒、掌上电脑(或PDA)、手机软件、工业控制、信息家电等领域。工业等各部门对智能控制需求的不断增长,对嵌入式微处理器的实时性、运算速度、可扩充能力、系统可靠性、功耗和集成度等方面提出了更高的要求。

    2. 嵌入式系统与工业控制网络

    美国电气工程师协会(IEE)的一个定义:嵌入式系统是用来控制或监视机器、装置或工厂等大规模系统的设备。嵌入式系统通常具有如下特性:

    (1)通常只执行特定功能;是在特定领域内完成特定的功能的专用计算机系统,比如,它可用于一种工业仪器,也可能用于航天设备中的某个电子装置。这一点与一般桌上型办公设备或数据库系统有很大区别。

    (2)嵌入式系统中硬件配置一般是根据系统的性能指标来确定的;除了附加的调试接口外,没有多余的硬件设备,一般是以计算机周边器件构成核心,其规模可在大范围内变化。如从8051芯片到X86芯片。而且嵌入式系统中是软件和硬件紧密结合。

    (3)严格的时序和稳定性要求;这是因为在机器控制的大型系统中,程序运行稍有差错则可能使得整个系统失去控制,甚至酿成灾害。而且系统一般不进行交互动作,所以要求系统的自动运行要稳定、纠错能力强,可靠运行。

    (4)具有实时性;因为在工业控制应用中大多数是属于过程控制,这些领域对系统要求是必须具有实时性,而且还要求有实时性的嵌入式操作系统。

    (5)嵌入式系统的开发一般采用宿主机/目标机模式;在某个环境下调试好目标机器的软件和硬件,才能使目标机器离开开发环境,从而独立运行。

    嵌入式系统是电脑软件与硬件的综合体,它是以应用为中心,以计算机技术为基础,软件硬件可裁剪,从而能够适应应用系统,对功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。它将操作系统和功能软件集成于计算机硬件系统之中,简单的说就是系统的应用软件与系统的硬件一体化,类似于BIOS的工作方式,具有软件代码小,高度自动化,响应速度快等特点。特别适合于要求实时的和多任务的体系。

    工业控制网络是由传感器、执行机构、显示和数据记录设备等组成,用于监视和控制电气设备的系统。通常除遇到系统不能自愈的故障需要人工干预排除外,均应有自动实现监控功能。在工业应用中,控制网络可以用于监视设备的状态、调节转速和流量等、采集模拟输入量、顺序开关/起停设备、与主控机通信并在显示器或专门定制的显示设备上显示各参量的大小和状态。由于工业控制系统特别强调可靠性和实时性。控制网络数据通信以引发物质或能量的运动为最终目的。用于测量与控制的数据通信的主要特点是:允许对实时的事件进行驱动通信,具有很高的数据完整性。

    智能仪表的出现推动着工业控制网络的发展,新一代的工业控制网络呼唤功能更强大的仪表和控制器的出现,面向工业控制的嵌入式系统应势而生。

    3. 系统实现

    系统的实现包括硬件实现和软件实现。

    硬件实现

    系统结构框图如图1。两个串行通信接口可以采用RS232。用以采集来自其他设备的远程的数据,然后由ARM微处理器进行处理,处理后的结果通过以太网接口分发给其他设备。为了调试的方便,Flash存储器使用了两个,512K的用于存储引导装载程序,2M的用来承载包含应用程序的操作系统映像。此种设计方式可以使在启动加载方式下,调试不同操作系统的应用程序时,只需要简单的更换包含对应的操作系统的引导程序的Flash芯片就能做到。为了满足大多数情况的需要,内存选用容量为16M的16bit的芯片。10M以太网接口的设计是考虑到通用性。为了调试的方便,这里使用了一个JTAG(国际标准测试协议)接口,可以访问其他系统资源,它还可以跟仿真器相连。USB接口分为两个主机接口和一个设备接口。LED用来在调试和使用过程中的显示数据结果。

    图1 系统硬件结构图

    软件实现

    软件的实现包括两个方面,一个是系统的内核,另一个是设备的驱动程序。

    (1)首先编译 Kernel的源代码:

    执行下列命令:

    cd /usr/src/linux

    make mrproper

    make xconfig

    会出现一个界面,可以根据自己的实际需要来选择。在编译内核的过程中,最繁杂的事情就是这步配置工作。在配置过程中,大部分选项可以使用其缺省值,只有小部分需要根据用户不同的需要选择。选择的原则是将与内核其它部分关系较远且不经常使用的部分功能代码编译成为可加载模块,有利于减小内核的长度,减小内核消耗的内存,简化该功能相应的环境改变时对内核的影响;不需要的功能就不要选;与内核关系紧密而且经常使用的部分功能代码直接编译到内核中。在选项Code maturity level options、Loadable module support、Processor type and features、Networking options、Network device support、ISDN subsystem、Character devices等分别选择适合自己所需要的项目。File systems建议选择相应的项目,为了以后扩充使用。

    (2)为每个设备编写程序

    Linux系统的设备驱动程序完成的主要工作是:

    ① 对每个硬件设备进行初始化和释放;

    ② 数据传输,将数据从内核传到硬件设备,或者从硬件设备传到内核,读取应用程序传送给硬件设备的数据和回送应用程序请求的数据;

    ③ 检测和处理硬件设备出现的错误和异常;

    Linux系统的设备驱动程序的主要组成部分有:

    ① 自动配置和初始化子程序;

    ② 服务于I/O请求的子程序;

    ③ 中断服务子程序;

    根据所选择的设备和设备所要完成的功能分别进行编写。

    4. 实时性解决办法

    实时操作系统是实时控制系统和实时处理系统的统称。所谓实时就是要求系统及时响应外部条件的要求,在规定的时间内完成对该事件的处理,并控制所有实时设备和实时任务协调一致地运行。实时控制系统实质上是过程控制系统。实时操作系统首先考虑的是系统的实时性和可靠性。实时处理系统主要指对信息进行及时的处理。

    高实时性是许多工业控制网络的基本要求,Linux 在这样的环境下还存在许多缺陷。它不是一个真正的实时操作系统,内核不支持事件优先级和抢占实时特性。那么,要将 Linux 系统改造成为适用于工业控制领域内的嵌入式系统必须解决一个重要的问题——实时性。所以,在开发嵌入式 Linux 的过程中,首要问题是扩展 Linux 的实时性能。目前把Linux改造为嵌入式实时系统的方法有两个:一个方法是对Linux系统的内核进行改造;另一个方法是在 Linux 系统底层添加一个硬件抽象层,也就是添加一个实时内核进行改造。其目的都是为了保证系统会首先执行优先级更高的实时进程然后才是优先级低的普通进程,并且防止别的普通进程打断实时进程的运行。

    为达到系统实时性的要求,本文对Linux 内核进行改造的方法。改造方法主要是通过截取硬件底层中断,在硬件上实现一个抽象层,通过抽象层来传递和控制 Linux 中断。目前,为满足实时性而进行的系统改造主要集中在双内核、中断和时钟机制、内核状态调整、进程间通信方式的调整和进程抢占式调度算法这五个方面:

    第一, 双内核技术

    这种方法对于支持工业控制,数据采集等等有硬实时性要求的应用系统比较合适。所谓的双内核主要是指,在标准的 Linux 内核的下面再提供子内核,这个子内核不是一个完整的内核,它没有足够的驱动程序,缺乏扩展库,它是标准内核的补充,主要处理实时任务。而原来的 Linux 内核作为在其上运行的一个核心任务。在硬件中断和原来的 Linux 内核之间加入一个实时内核,通过实时内核解决原 Linux 内核的关中断问题,该实时内核始终不关闭硬件中断,可以接受所有的中断信号,当中断信号需要实时进程来处理时,由优先级更高的实时进程抢占Linux内核。

    第二,中断和时钟机制。

    实时系统与外部中断处理相关的一个重要的方面是“关闭中断”处理机制,需要保证确认硬件外部中断时内核不再重入,并且紧跟一个软件中断处理流程,实质就是用软中断来代替硬中断。实时系统与外部中断处理相关的另一个重要的方面是系统中断嵌套的能力,即可以指定外部事件服务的相对优先级,并且保证关键的外部操作能够提前处理。同时,可以改造时钟机制来缩小软中断的切换时间。

    第三,提高内核的可抢占性。

    为了提供进程间通信和进程抢占式调度的良好实现,需要对进程状态进行改造,完全的改造 Linux 内核为可强占内核。加一个抢占点来改良系统响应时间长的问题,所谓的抢占点就是,在这个点的时候如果系统中有更高优先级的进程就序,系统提供这样一个机会高优先级的进程运行。那么就可在一个用户进程在核心状态执行时能被一个更高的优先级的可执行进程抢占。将实时进程包括在内核里,实时内核本身也通过内核模块的方式进行装载与卸载,其目的是为了方便进程间通信的及时进行,并且可以实现更好的进程抢占式调度算法。

    第四,进程间通信方式调整。

    <P< div>

    数据库 EMPRESS Berkeley DB Solid

    运行时占用RAM 200K—800K 300KB左右 450K—2M

    使用风险 长时间的开发经验,得到广泛的应用,免维护性高 开源数据库,技术支持不到位。而且商业性应用也不是免费的 主要应用于内存数据库当中,不具备嵌入式软件特点,维护性能差

    数据库分类 嵌入式关系型数据库 非关系、非对象型数据库 内存式关系型数据库

    开发工具 EmpHTML、EmpPerl、EmpTcl/Tk、JumpStart 任何一种便携式开发工具(支持Berkeley DB接口语言) N/A

    应用模式 1.以组件形式内嵌在程序中;

    2.数据库服务器模式 以组件形式内嵌在程序中 1. 以组件形式内嵌在程序中;

    2. 数据库独立使用;

    3. 与大型磁盘数据库配合(Oracle、DB2)使用

    支持接口 支持Shell、C、C++、JAVA、ODBC、JDBC、SQL、HTML、XML、Perl、Tcl/Tk接口 支持C、C++、JAVA、TCL接口,不支持SQL 支持ODBC、JDBC、SQL和C语言接口

    存储过程、触发器、函数等 支持 不支持 支持

    支持的OS Unix、Windows、Linux、Vxworks、 Windows CE 、OSE、 QNX Linux、QNX、Windows、VxWorks Unix、Windows、Linux、Vxworks、SymbianOS、 Windows CE 、OSE、 QNX

    在网络与通信设备、消费电子、数字家电、汽车电子、医疗电子、工业控制、办公自动化、金融电子、军事、航空航天等国民经济的各个领域,嵌入式软件均已得到广泛应用,中国嵌入式软件的产业规模,已超过1000亿元人民币。在应用深度方面,也由最简单的仅有执行单一功能的控制能力的嵌入式系统,发展到几乎与PC具有一样的功能,很多复杂的嵌入式系统,由若干个小型嵌入式系统组成。 原文位置

    ,他说:想发财就去万通商联找优质玩具供货商!  面对如此泛化的应用,如此巨大的市场规模,嵌入式软件的发展,呈现哪些特征呢?

    按照操作系统的应用情况,嵌入式系统的发展,可划分为以下三个阶段:

    首先是无操作系统的嵌入算法阶段。

    这一阶段的嵌入式系统,是以可编程控制器的形式、以单芯片为核心的系统,同时具有与一些监测、伺服、指示设备相配合的功能。这种系统大部分应用于一些专业性极强的工业控制系统中,一般没有明显的被称为操作系统的支持,而是通过汇编语言编程,对系统进行直接控制,运行结束后清除内存。这一阶段系统的主要特点,是系统结构和功能都相对单一,针对性强,但无操作系统支持,几乎没有用户接口。

    其次是简单监控式的实时操作系统阶段

    这一阶段的嵌入式系统,主要以嵌入式处理器为基础、以简单监控式操作系统为核心。系统的特点是:处理器种类繁多,通用性比较弱;系统开销小,效率高;系统一般配备系统仿真器,具有一定的兼容性和扩展性;操作系统的用户界面不够友好,其主要用来控制系统负载、以及监控应用程序运行。

    最后是通用的嵌入式实时操作系统阶段。

    以通用型嵌入式实时操作系统为标志的嵌入式系统,如Vx鄄Works、pSOS、OS-9、WindowsCE、Symbian,就是这一阶段的典型代表。这一阶段系统的特点,是能运行在各种不同类型强大的微处理器上;具有强大的通用型操作系统的功能,如具备了文件和目录管理、多任务、设备支持、网络支持、图形窗口以及用户界面等功能;具有大量丰富的应用程序接口和嵌入式应用软件丰富。

    当系统需要连接Intenet网/实现图形用户界面、或文件系统时,若采用支持TCP/IP协议栈/GUI/FS的嵌入式操作系统,可极大地降低复杂多任务系统开发的难度。

    RTOS的引入,解决了嵌入式软件开发标准化的难题,促进嵌入式开发软件的模块化和可移植化,为软件工程化打下基础。随着嵌入式系统中、软件比重不断上升、应用程序越来越大,对开发人员的知识结构、应用程序接口和程序档案的组织管理等,都提出了新要求。引入RTOS,相当于引入了一种新的管理模式,对于开发单片机和开发人员,都是一个飞跃。

    二是嵌入式数据库逐渐受到关注。

    随着手持设备、POS(销售点终端)、网络和安全装置的流行,更多的应用要求实时地收集、存储和处理数据,而使用精简代码编写的运行速度快、内存占用小的嵌入式数据库,应运而生。嵌入式数据库系统能和嵌入式操作系统有机地结合在一起,为应用开发人员提供有效的本地数据管理手段,同时提供各种定制条件和方法。

    嵌入式移动数据库将随着各种移动设备、智能计算设备、嵌入式设备的发展而迅速发展。随着设备上的嵌入式应用对数据管理的要求不断提高,嵌入式数据库技术的地位也日显重要,它将在在各个应用领域中,扮演越来越重要的角色。目前,各大数据库厂商在嵌入式数据库领域的竞争,日趋激烈,Oracle、IBM、Sybase、微软等,均在这一领域有所行动。特别是Oracle,2005年并购全球最大的内存数据库厂商TimesTen之后,2006年又收购了全球下载用户最多的嵌入式数据库厂商Sleepycat及其BerkeleyDB产品,进一步丰富了其嵌入式软件的产品线。

    三是DSO在嵌入式软件开发中得到广泛应用。

    DSO(设备软件优化)是一套帮助嵌入式系统厂商,使其产品中的软件开发活动更加快速、可靠的工具和方法,同时还可以让这些软件的开发成本大幅度降低,并且通过提高软件的可靠性,降低产品的维护成本。

    与传统的嵌入式软件开发环境与工具不同,DSO提供了更加完整的解决方案。传统的嵌入式软件开发环境,一般都是针对某个产品的开发,DSO则完全不同,它是在整个电子制造企业和产品生命周期这两个更大的范畴内,对设备软件的开发、部署和维护进行规划,充分考虑到产品生命周期各个阶段的需求,实现了更大跨度的最优化。

    DSO是对传统嵌入式软件开发工具的全面升级,其中不仅包括操作系统和集成化的开发平台,而且包括产品生命周期中,各个阶段所需的开发和维护工具,以及相应的技术支持与服务。以网络互联、高度智能化和安全可靠为特征的新一代设备软件优化,已经在嵌入式系统与软件产业中,发挥了明显的作用,成为了一个独立的市场。

    四是基于Linux的嵌入式软件厂商大量兴起。

    自由开源软件在嵌入式应用上,受到青睐,Linux日益成为主流的嵌入式操作系统之一。目前,国外不少大学、研究机构和知名公司,都加入了嵌入式Linux的开发工作,成熟的嵌入式Linux产品不断涌现。国际有名的嵌入式Linux操作系统提供商Montavista,收购了PalmSource的爱可信和奇趣科技等,都加强了对中国市场的投入,并在整个嵌入式操作系统市场中,占据了重要地位。而嵌入式操作系统的领先厂商,也改变了原来的单一产品路线,开始推出自己的Linux软件产品,实现“两条腿走路”。国内的嵌入式软件厂商也以Linux为突破口,纷纷开发各种基于Linux的操作系统产品。这些嵌入式Linux厂商,已经形成了一个不容忽视的群体。

    五是国际厂商加强了对中国市场的投入。

    最近几年,由于看好中国嵌入式软件产业的发展势头,越来越多的国际嵌入式软件厂商纷纷进入中国,并不断加强对中国市场的投入,包括收购中国本土企业、与本土企业建立合作关系、与大学科研机构建立合作关系、增加分支机构、加强渠道建设等等活动。由于中国嵌入式软件产业发展潜力巨大,未来几年内,国际嵌入式软件厂商对中国市场的投入,将持续加强。

    六是国际厂商深入发展行业市场。

    国际嵌入式软件厂商在基本垄断中国嵌入式平台软件的同时,已经将目光投向了规模更大的行业市场,致力于研究分析不同行业对嵌入式软件开发的特殊需求,推出了面向特定行业的嵌入式软件开发平台。面向各个行业的嵌入式软件开发平台,正在赢得电子工业的广泛认同。例如,Oracle公司加大了嵌入式业务的力度,2006年2月,公司成立了亚太及日本区嵌入式事业部,而半个月之后,就宣布正式进军中国的嵌入式软件市场,为手机、家电和汽车等热门消费品,提供嵌入式软件。

    微软则将目标应用定位于智能手机、新兴的GPS、IP机顶盒、无线投影仪、以及其它工业电子、医疗设备等嵌入式产品操作系统。

    风河公司(正被IBM收购)的特定市场平台(MSP)产品,已经包括了网络设备平台(PNE)、消费设备平台(PCD)、工业设备平台(PID)、汽车信息平台(PCI)和面向军事/航空应用的关键安全平台(PSC)。这种做法,不仅改变了风河的业务模式,也改变了客户、乃至整个嵌入式软件行业的工作模式,为电子产品生产企业提高客户满意度和产品的市场竞争力,提供了更直接的支持。

    七是中国ISV在嵌入式软件产业中的作用将加大。

    由于国际嵌入式软件厂商在基础、通用的嵌入式平台软件中的强大统治力,中国嵌入式软件产业的中心,偏重于产业链后端,即面向具体应用的嵌入式软件,目前同时从事软硬件开发的电子设备制造商,发挥了重要作用。在近几年的中国软件百强排名中,华为、中兴、海信、海尔这样的电子设备制造商,长期占据了前几名的位置。但未来独立软件提供商ISV的作用将逐步加大,原因在于以下三点:

    首先是嵌入式软件的发展,将由技术驱动转向应用驱动,单一载体的应用将越来越丰富,设备制造商开发全系列软件,将变得越来越困难和不现实。

    其次是随着各种电子设备网络化智能化的趋同性,开发跨越设备类型的通用嵌入式软件成为可能,如浏览器软件、智能人机交互软件等,使得通用软件的应用载体数量成倍扩大,为ISV的壮大培育了市场基础。

    再次是缩短新产品上市时间,将为设备制造商带来抢占市场的先机。随着市场竞争的激烈,新功能的研发全靠自己单打独斗,很难保证完成时间,必将促使设备制造商寻找合作伙伴共同开发软件,或购买软件成品。

    总而言之,随着需求的旺盛、技术的进步和市场的成熟,嵌入式设计与应用已成为工业现代化、智能化的必经之路,嵌入式软件产业与数字化时代的传统产业和新兴产业的融合趋势,进一步加强。嵌入式软件产业将在未来5年内,继续保持高速增长态势,到2011年,中国嵌入式软件的产业规模,有望达到4650亿元人民币,成为中国软件产业快速发展的重要驱动力。