您的当前位置:首页嵌入式操作系统研究

嵌入式操作系统研究

来源:乌哈旅游
2003年4月 

第14卷第2期装备指挥技术学院学报

JournaloftheAcademyofEquipmentCommand&TechnologyApril 2003Vol.14 No12

嵌入式操作系统研究

刘绍南

(装备指挥技术学院试验工程系,北京101416)

  摘   要:嵌入式技术有着广阔的应用空间,是武器装备数字化、信息化、小

型化的关键技术,已经成为赢得新形式下军事斗争必不可少的物质保证之一;对嵌入式操作系统作一个轮廓性的说明,并对自己的研究成果进行了概括与总结;通过此文可以了解嵌入式操作系统的概念、操作系统的模型、研究的范围、目前研究的水平及在研的嵌入式操作系统的结构特点等。

关 键 词:嵌入式系统;操作系统;后PC时代中图分类号:TP316.2文献标识码:A    文章编号:CN1123987(2003)0220098204

  嵌入式操作系统的研究在近来几年非常广

泛,特别是“维纳斯计划”登陆中国,使中国各大公司感觉到自己的未来市场又将被微软统治,因而纷纷着手研究自己的嵌入式操作系统,其中有名的是凯思公司推出的“女娲计划”。应该说国内公司进行的嵌入式操作系统的研究和实践是非常广泛的,和有价值的。它有效的使国内的嵌入式操作系统市场没有被国外产品完全垄断,同时又使国内在此领域的研究得到了发展。

广义上说用以控制设备的计算机,就叫嵌入式系统。由于设计目标、硬件平台等的变更,使得许多优秀的用汇编语言编写的控制程序不能方便地移植,出现了很大的局限性。所以需要引入嵌入式操作系统的概念。由于嵌入式操作系统的应用广泛,需求量大,所以很多有实力的公司与机构参与到对它的研究中来。有人认为,嵌入式系统是信息产业走向21世纪知识经济时代的最重要的经济增长点之一。

单体模型:单体模型把该有的功能都整合于一个整体,其中分不出明显的模块,也无集中排程,主要掌控的程序负责对内,外的联系,需要什么样功能就由应用程序直接呼叫,操作程序内部之间的关系就像炒大锅菜一般,或者用藕断丝连来形容它,其中的函数调用关系复杂,很难分割出单独的个体,如MS2DOS。这种模型的最大特点就是牵一而发全身,所以更新、升级困难。

层状模型:层状模型的主要特色是一种由上而下的多层阶梯结构,与应用程序越有关的东西摆在越靠近应用程序的地方(较上层),与应用程序越无关或不希望应用程序直接碰触到的东西则摆在距离应用程序较远的地方(较下层),命令则一律由上往下层发送,执行,不允许跨层或任意方向发送至其它层。与单体模型比较,层状模型主要有2个优点,①操作系统按功能模块化使得子系统(模块)的更新,除错容易;②应用程序仅接触到操作系统的最上层应用程序界面(API)部分,不易对整个系统造成伤害。API是由操作系统提供的较低层的成套函数或切入点,程序设计者于其程序中呼叫种种API以获得各种内建于操作系统的功能,如开放文件、读挡、移动游标位置等等。

主从模型:在网络方面说到主从模型时,一般指的是一部负责提供数据的服务器及另一部取得

1 嵌入式操作系统概念

1.1 嵌入式操作系统的模型

在操作系统理论上,有较常见的3种模型:单体模型(monolithicmodel)、层状模型(layeredmodel)和主从模型(client/servermodel)。

 收稿日期:2002206230 基金项目:国家重大基础研究项目 作者简介:刘绍南(1963-),男(汉族),湖南绥宁人,副教授.

© 1995-2004 Tsinghua Tongfang Optical Disc Co., Ltd. All rights reserved.

 第2期               刘绍南:嵌入式操作系统研究99

数据的工作站,其中所分享的数据通常是文件和打印机。操作系统的主从模型也很类似,但所分享的数据是系统所提供的种种服务,当然也负责提供服务的程序及所接受服务的程序,WindowsNT采用的操作系统架构就是主从模型。这2个主从模型在抽象上都有个服务器及客户机主体,只是形式不一样,换言之,透过这种机制,可将操作系统主体设计成分散于一群机器的分散式操作系统,应用系统扮演客户端角色,操作系统本身则作为服务器,应用程序向操作系统要求服务,操作系统则提供服务。1.2 嵌入式操作系统的特点

假如我们按照控制系统的发展思路来说的话,(实际上操作系统的发展不是这样),我们将控制系统专家编制的优秀软件中的公共部分进行抽取,形成一个与硬件关联不大,与具体应用关系也不大的软件中间层,而这部分是可以方便移植到各种硬件平台上,同时其上的应用程序也可以方便移植。将这个中间层进行扩充,按照操作系统的规范进行编写,这就形成了嵌入式操作系统。因此嵌入式操作系统具有如下特点:

1)具备自引导功能

当一个微处理器最初启动时,它首先执行在一个预定地址处的指令。通常这个位置是只读内存,其中存放着系统初始化或引导程序。在PC中,它就是BIOS。这些程序要执行低级的CPU初始化基本的输入输出操作,BIOS接着判断出哪一个磁盘包含有操作系统,再把OS的初启部分拷贝到RAM中,并把控制权交给它。实际上,整个过程远非这么简单,不过对一般的理解已经足够。而在嵌入式系统中,由于没有BIOS,系统加电直接执行嵌入式操作系统代码,因此在嵌入式操作系统的初启代码时需考虑目标板的设计。

2)实时性

嵌入式系统一般是为完成一个具体任务而设计,因而总是要求系统在规定的时间上完成某些操作,所以嵌入式操作系统必须具备实时性的特点。而在设计操作系统的实时模块时,又需要考虑嵌入式系统对实时的性能需求,采取不同的设计方法。如系统的性能需要硬实时,那么仅仅采用修改优先级是肯定不够的。

3)健壮性嵌入式系统的运行环境一般较PC运行环境恶劣。车载、太空、强电干扰、辐射等等,都有可能造成系统运行指令的紊乱,如果不采取一定的措施,系统将无法正常的运行,在关键的时候出现关

键错误。所以嵌入式操作系统较一般操作系统来说,健壮性是它的一个重要特点。

4)对硬件平台的适应性

嵌入式系统因所需完成目标的不同,其硬件平台五花八门,所以嵌入式操作系统要具有较好的可移植性。在操作系统的设计原则上,硬件抽象层设计的好坏直接关系到操作系统对平台的依赖程度。

5)操作系统尺寸要尽可能地小

嵌入式系统由于其存储设备一般不会采用磁盘,因而存储空间相对较小,从而要求嵌入式操作系统尽可能的短小精悍。1.3 研究嵌入式操作系统的难点

在对嵌入式操作系统的研究中,目前主要有以下2个难点:

1)调试:PC操作系统基本上是在BIOS的引导下加载的。即在目标机上有一个BIOS在运转,使得调试很方便。而嵌入式系统是为特定目标而设计,即使采用了标准的总线,但其地址分布,端口、中断都不会与PC完全一样,所以不会有现成的BIOS适应它。因此,当在一个目标机上调试嵌入式操作系统时,其调试环境是一个难点。一般对目标机的开发板,在硬件上要配置其开发调试环境,但都是比较昂贵的。如果不是研究批量生产的产品,就显得代价太高。一种好的办法是通过一个JTAG接口。一些芯片包含一个JTAG接口,从而可以对芯片编程。这是一种最简便的办法。芯片可以被永久地焊接到板子上。一段电缆从板子上的JTAG连接器连接着一个JTAG接口。这样就可以在操纵JTAG接口的PC上做一些用户定制性编程[1]。

2)开发环境:嵌入式系统是服务于具体任务

的,当在目标机上开发完成操作系统之后,还需要在其上运行针对各种应用的应用程序,这些应用程序的开发环境需要一个仿真开发平台,只要在此开发平台上开发成功的应用程序,就可在目标机上运行。因此,在研发嵌入式操作系统时,其配套的开发环境的研究就是一个比较大的任务。1.4 典型嵌入式操作系统比较

尽管嵌入式系统已有30多年的历史,但嵌入式操作系统得以真正的快速发展,还是在后PC时代。在后PC时代,计算机应用领域已经遍及社会的各个角落。因而嵌入式操作系统得到了很好的发展。

目前国外典型的嵌入式操作系统主要有PowerTV、PalmOS、WindowsCE等。Windows

© 1995-2004 Tsinghua Tongfang Optical Disc Co., Ltd. All rights reserved.

100装备指挥技术学院学报               2003年 

CE内核较小,加上它与Windows类似的用户界

面,使最终用户能非常方便的使用,但其价格较

高、效率低、速度较慢。PalmOS是3Com公司开发的,主要应用在PDA与掌上电脑方面,它有开放的API,使应用程序的开发具有一定的灵活性。PowerTV是一个高级可缩放的实时操作系统,允

许动态扩展和升级。

国内在嵌入式操作系统的研究方面,也非常火爆,但其开发思路大多是基于现有操作系统进行,特别是基于linux的较多。自主开发的较少,目前应用较多的是HopenOS、HBOS等。HopenOS是凯思集团自主研制开发的嵌入式操作系统,有一个体积很小的内核及一些可以根据需要进行定制的系统模块组成。其核心HopenKernel一般为10kB左右大小,占用空间小,并具有实时性、多任务、多线程的系统特征。HBOS是浙江大学自主研制开发的全中文嵌入式操作系统,它具有实时、多任务等特点,能提供二次开发的功能。

图1 嵌入式操作系统的结构

1)容错性。嵌入式系统常常应用在较恶劣的环

2 研究自己的嵌入式操作系统

2.1 充分了解Linux源代码

Linux由于其源代码的开放性,加上它对各

境,代码、服务模块、应用程序的出错等,容错模块

可以有效的监测并处理一些故障。如果利用它提供的接口,可以很好的迁移服务到其他机器上运行。

2)远程加载。在有些嵌入式系统中,远程加载是必须的。但远程加载模块的功能要由其需要远程加载的内容来决定。如果需要加在操作系统,那么远程加载模块就将成为一个自成一体的系统,它接受远程的命令,来做相应的工作。如果是用来加在服务程序或应用程序,就可以做成一个高级服务模块。

3)电源管理。负责对电源的管理。在嵌入式系统中,特别是在星群中电源管理是很重要的。电源管理的主要工作集中在节电上。这与选择的CPU有关系。电源管理方案可以减少能耗并延长系统电池的使用周期,为管理电源,DSOS采用了以下运行状态:

①无电源。在此状态下,CPU被关闭,也不对RAM供电。所有的CCIPS设备都被关闭。

②开启。这是标准的运行模式。CPU在运行并调度线程。RAM和所有平台设备都有电源供应。

③空闲。此时,没有线程运行,CPU处于挂起状态(只处理中断异常)。对RAM供电以保持其全部数据。所有的平台设备都处于打开状态。

④挂起。此时,没有线程运行,CPU处于挂起状态,定时器中断暂停。对RAM供电以保持其全部数据。所有的平台设备都被关闭。⑤紧急关闭。此时CPU挂起。RAM处于自刷新状态,以尽可能减少耗电。所有的平台设备都被关闭。

与电源管理的几种方案相对应,需要设计与实现相关的机制,来满足应用程序在不同状态下

种新技术的支持非常广泛,因而比起pSOS+,VxWorks等专用系统有许多优势,Linux甚至支持蓝牙技术,VxWorks对于新技术的支持远没有Linux那么迅速[2]。因此,从分析Linux源代码入手,设计一个适合具体应用的操作系统是一个好的方法。2.2 嵌入式操作系统结构在经过大量研究后,嵌入式操作系统采用了微内核结构。所谓的“微内核”指的是在操作系统的结构中,尽可能地把文件系统服务、网络服务等高级服务功能从内核中分离出来,让内核变得更简洁,内核只完成一些最基本、最必须的功能。功能结构如图1所示。2.3 嵌入式操作系统特点

从图1中可以看出,系统采用微内核结构后,结构明晰。微内核内只完成操作系统最基本的功能,它仅起一个母体的作用,它孕育和管理系统的最基本功能。而整个操作系统对外的功能基本在高级服务模块中实现。其特点是:

© 1995-2004 Tsinghua Tongfang Optical Disc Co., Ltd. All rights reserved.

 第2期               刘绍南:嵌入式操作系统研究101

的睡眠和唤醒。

4)消息模块。此模块与命名空间管理、网络连接接口构成了友好的通讯机制。为分布式应用提供很好的支持与帮助。

的电话、遥控开关、电子戒指、电子手杖等,再例如作为家庭网络组成部分的电视机、电冰箱、空调等等。这些设备的核心部分都有计算机,但大多是以嵌入式系统的形式存在,而不是以整机的形象出现。所以,也可以说后PC时代的特点是计算机无处不在,而其核心就是嵌入式操作系统技术。在军事领域,嵌入式技术有着广阔的应用空间,是武器装备数字化、信息化、小型化的关键技术,已经成为赢得新形式下军事斗争必不可少的物质保证之一。参考文献:

[1]邹思轶.嵌入式Linux设计与应用[M].北京:清华大学出

3 结束语

863智能计算机首席专家高文教授说:所谓

后PC时代,是英文pervasivecomputing的中文意译,pervasive的原意是普遍的、蔓延的、渗透的,所以pervasivecomputing这个词组直接的翻译应该是渗透到各个方面的计算。因而可以认为,所谓后PC时代是指:计算机无所不在,它渗透到工作和生活的方方面面。当然,这样的无所不在的计算机也绝不都是象今天的PC一样摆在桌子上或放在书包里,后PC时代的绝大多数计算机是以非计算机的形式出现的,例如作为随身物品出现

版社,2002.

[2]谷静雨.Linux的使用、管理与开发[M].北京:人民邮电出

版社,2000.

StudyoftheEmbeddedOperationSystem

LIUShao2nan

(DepartmentofTestEngineering,theAcademyofEquipmentCommand&Technology,Beijing101416,China)

Abstract:Inthefieldofmilitary,embeddedsystemhasawidelyapplicationfield.Itispivotaltech2nologyinweaponequipment’sdigitalization,informationandminiaturization.Ithasbecomeoneofthemostlynecessarysubstanceinmilitarywarfare.Thepaperexplainsanoutlineofembeddedoperationsystemandgivesabriefsummaryandconclusionoftheresearch.Inthepaper,youcanfindouttheconcept,mod2el,researchfield,researchlevelandthestructuralcharacteroftheembeddedoperationsystem.

Keywords:embeddedsystem;operationsystem;pervasivecomputing

(责任编校:程万鑫)

© 1995-2004 Tsinghua Tongfang Optical Disc Co., Ltd. All rights reserved.

因篇幅问题不能全部显示,请点此查看更多更全内容