




已阅读5页,还剩79页未读, 继续免费阅读
(计算机应用技术专业论文)面向行业应用的嵌入式编程中间件研究.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
摘要 摘要 计算机技术、通信技术和计算机网络的快速发展,推动信息技术迅速渗透到 国民经济和社会生活各个方面,嵌入式技术更是在这些应用中得到了长足的发展, 但软件发展滞后于硬件发展的“软件危机”在嵌入式系统领域也同样严峻。因此 对嵌入式软件的开发提出了新的要求:应以缩短开发周期、实现高重用性、扩展 性和维护性为目的,针对特定的行业特性采用不同的领域中间件技术,依照一致 的软件开发框架,以任务或对象为基本骨架,通过屏蔽细节的规范接口来实现特 定的应用。 由于各种嵌入式操作系统的自身的差异,同样功能的应用软件,必须针对特 定的嵌入式操作系统进行编写。为了解决嵌入式操作系统的互操作和应用程序在 不同嵌入式操作系统间的移植问题,引入了嵌入式中间件的概念。本文首先就嵌 入式中间件技术展开论述,介绍了目前国内外几种比较成熟的嵌入式中间件产品, 然后分析了几种典型的嵌入式中间件的开发技术,比如操作系统的封装技术、面 向对象的嵌入式中间件、开放原则的嵌入式中间件以及本文提出的参考l i n u x 的虚 拟文件系统( v f s ) 设计的可移植嵌入式中间件技术。 基于上述理论,本文介绍了嵌入式中间件在面向某工程系统的扩展库o s e 及面 向环境检测领域的开放实现这两种具体实现技术。其中对嵌入式操作系统的o s e 扩 展库,本文介绍了o s e 的实现原理、整体结构和基本扩展模块,并详细说明了其中 系统关机和系统空闲时间率测量模块的功能和设计方案,及具有三个终端的o s e 验 证系统结构、运行方法和验证结果,最后专门测试分析了o s e 的时间性能。 另一个实际应用是设计面向环境检测领域的嵌入式中间件,以支持面向环境 检测行业的应用软件的开发。通过对环境检测的行业的分析,结合目前的技术现 状,本文整理出了面向环境检测领域的嵌入式中间件的整体结构;基于对面向环 境检测领域的嵌入式中间件的整体结构的分析,将该中间件分解成了支持操作系 统基本功能的接口和面向环境检测行业的接口两部分,并详细介绍了其中的重要 接口和设计实现方法。 最后对全文进行了总结,并指出了在项目实现中的一些不足和需要改进的地 方。 【关键词】嵌入式系统;操作系统;中间件;系统调用;环境检测;文件系统 a b s t r a c i a b s t r a c t t h ed e v e l o p i n go fc o m p u t e r , c o m m u n i c a t i o na n dn e t w o r kt e c h n o l o g ym a k e st h e i n f o r m a t i o nt e c h n o l o g y ( i t ) t os p r e a di n t oa l la s p e c t so ft h es o c i e t y t h ee m b e d d e d c o m p u t e rt e c h n o l o g yi sd e v e l o p i n gw i t ht h es h o r t so fd e v e l o p s o f t w a r ei nd u r i n gt h ei t d e v e l o p m e n t w i t ht h ea i mo fd e v e l o p i n gal a r g eo fe m b e d d e dc o m p u t e re q u i p m e n t s , w en e e dm o r eq u i c k l ya n de a s i e rd e s i g nl a r g en u m b e ro fs o f t w a r e t h e n ,w ec a nd e s i g n ak i n do fe m b e d d e dm i d d l e w a r et h a tc a ns h i e l dt h ed i f f e r e n to ft h eo p e r a t i n gs y s t e m s ( 0 s ) a p p l i c a t i o np r o g r a mi n t e r f a c e s ( a p i ) t h em i d d l e w a r ec a ns u p p l yu n i f o r ma p i st o t h ea p p l i c a t i o n s b e c a u s eo ft h ed i f f e r e n c eo fo p e r a t i n gs y s t e m s ,t h ea p p l i c a t i o n sn e e db ed e s i g n e d s e r v i a lt i m e s i no r d e rt or e s o l v et h ep r o b l e mo fa p p l i c a t i o n sm i g r a t eo nd i f f e r e n t e m b e d d e do p e r a t i n gs y s t e m s ,w eu s et h ee m b e d d e dm i d d l e w a r eb e t w e e nt h ea p p l i c a t i o n a n dt h eo p e r a t i n gs y s t e m f i r s t ,t h ep a p e ri n t r o d u c es e v e r a lm i d d l e w a r ep r o d u c t st h a t h a v eb e e nd e v i s e db yf a m o u so r g a n i z e s ;t h e n ,w ei n t r o d u c es o m em e t h o d st od e s i g nt h e m i d d l e w a r e s t h em i g r a t em i d d l e w a r ei nd i f f e r e n te m b e d d e do s sd e s i g n e db yr e f e r e n c e v i r t u a lf i l e ss y s t e m ( v f s ) o fl i n u xi sf i r s td e s i g n e di nt h ep a p e r i nt h e p a p e r , w eh a v ed e s i g n e d a no p e r a t i n gs y s t e m e x t e n s i o n ( o s e ) a n d o r i e n t e d e n t i r o n m e n td e t e c te x t e n s i o no fe m b e d d e do p e r a t i n gs y s t e m t h eo s ei s d e s i g n e df o r “t h et e n t hf i v e y e a r sp l a n ”,s u p p l ys o m ee x t e n s i o nf u n c t i o nt h a tn e e db y t h ee n g i n e w ed e s i g nad e m ot od i s p l a yt h ef u n c t i o no ft h eo s ei nt h ep a p e r t h ep a p e r a l s ot e s ta n da n a l y z et h et i m ec o n s u m eo ft h eo s e t h eo r i e n t e d e n t i r o n m e n td e t e c te x t e n s i o ni s d e s i g n e da sas t a n d a r da p i so f e n t i r o n m e n td e t e c tf i e l d t h ea p i sh a st w op a r t st h a ta r es y s t e ma p i se n c a p s u l a t i o np a r t a n df u n c t i o ne x t e n s i o np a r t t h es y s t e ma p i se n c a p s u l a t i o np a r ti sb a s eo nt h eo p e r a t i n g s y s t e ma p i s ;t h ef u n c t i o ne x t e n s i o np a r ti sd e s i g n e df o rs p e c i a lf u n c t i o ns u p p l yf o rt h e e n t i r o n m e n td e t e c t w ea l s or e a l i z es e v e r a la p i st h a td e v i s ef o rt h es p e c i a lf u n c t i o ni n p a p e r 【k e yw o r d s 】e m b e d d e ds y s t e m ;o p e r a t i n gs y s t e m ;m i d d l e w a r e ;s y s t e mc a l l s ; e n v i r o n m e n td e z e c t :f il es y s t e m 独创性声明 本人声明所呈交的学位论文是本人在导师指导下进行的研究工作 及取得的研究成果。据我所知,除了文中特别加以标注和致谢的地方 外,论文中不包含其他人已经发表或撰写过的研究成果,也不包含为 获得电子科技大学或其它教育机构的学位或证书而使用过的材料。与 我一同工作的同志对本研究所做的任何贡献均已在论文中作了明确的 说明并表示谢意。 签名:马 红 日期:办。6 年r 月f 日 关于论文使用授权的说明 本学位论文作者完全了解电子科技大学有关保留、使用学位论文 的规定,有权保留并向国家有关部门或机构送交论文的复印件和磁盘, 允许论文被查阅和借阅。本人授权电子科技大学可以将学位论文的全 部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫描 等复制手段保存、汇编学位论文。 ( 保密的学位论文在解密后应遵守此规定) 签名:玛纽导师签名:塞盈 日期:如。石年f 月i e l 第一章绪论 1 1 嵌入式系统的概念 第一章绪论 所谓嵌入式系统,是指以应用为中心,以计算机技术为基础,其软硬件可配 置,对功能、可靠性、成本、体积、功耗有严格约束的一种专用系统【”。 从2 0 世纪6 0 年代开始,嵌入式系统以一种专用机的形式应用于军事装备系 统中;2 0 世纪7 0 8 0 年代嵌入式系统逐渐应用于工业控制等领域;目前,嵌入 式计算机系统已经广泛应用于工业、交通、能源、通信、科研、医疗卫生、国防 以及日常生活( 消费电子、c e ) 的各个领域,发挥着极其重要的作用。 嵌入式系统也被称为无处不在的计算机,最广泛的存在形式是隐藏在各个设 备之中,成为一种看不见,但随时都在为我们服务的计算机。 1 1 1 嵌入式系统的组成 与普通计算机一样,嵌入式系统也有硬件和软件两大部分组成。微处理器和 外围硬件设备构成了嵌入式系统的硬件部分,嵌入式操作系统和嵌入式应用软件 构成了嵌入式系统的软件部分,如图1 - 1 所示。 图1 ,l 嵌入式系统结构 硬件部分可以分为三个层次:核,山处理器、外围电路和外部设备。核心处理 器是嵌入式系统的核心部件,负责控制整个嵌入式系统的执行;外围电路包括嵌 入式系统的f o 端口、内存、复位和电源等,与微处理器一起构成了目标系统; 外部设备是嵌入式系统和外部环境交互的设备,包括外部存储设备、输入输出设 备和打印设备。 电子科技大学硕士学位论文 软件部分可以分为四个层次:设备驱动程序、嵌入式操作系统、应用中间件 和应用程序。设备驱动程序负责嵌入式系统与外部设备的信息交互;操作系统负 责管理嵌入式系统的硬件和软件资源,分为基本核和扩展两个部分,基本核是操 作系统的核心,负责整个系统的任务调度、存储分配、时钟管理和终端管理等等, 扩展部分提供操作系统的扩展功能,包括网络支持、文件系统、数据库等等;应 用编程中间件为编制应用程序提供各种编程接口库,针对不同的应用领域,不同 的要求分别构建,简化应用程序;应用程序实现嵌入式系统的功能。 1 1 2 嵌入式系统的特点 由于嵌入式系统大多内嵌在智能设备之中,与通用计算机系统相比,嵌入式 系统有自己的特点1 2 j : 1 ) 嵌入式系统通常是形式多样,面向特定应用的软硬件综合体; 2 ) 嵌入式系统得到多种类型的处理器和处理器体系结构的支持; 3 ) 嵌入式系统极其关注成本; 4 ) 嵌入式系统有实时性和可靠性的要求; 5 ) 嵌入式系统使用的操作系统一般要适应多种类型的处理器、可裁剪、轻量 型、实时可靠、可固化; 6 ) 嵌入式系统的开发通常需要专门的开发工具和特殊的方法; 7 ) 嵌入式系统集合了计算机技术、微电子技术和具体行业技术,使得开发技 术密集,涉及的知识范围比较广。 1 1 3 嵌入式系统的分类 现在的嵌入式系统大多使用了嵌入式操作系统,根据嵌入式操作系统的对实 时性能的强弱,可以分为强实时系统和弱实时系统。 1 1 强实时系统:系统对系统的相应时间有严格的要求,如果系统向应时间不 能满足要求,就要引起系统的崩溃或者致命的错误1 3 】。 2 1 弱实时系统:系统对系统响应时间有要求,但是如果系统响应时间不能满 足要求,不会导致系统出现致命的错误或者崩溃。 1 2 中间件技术 为了解决在分布式的异构平台上运行应用程序的需要,人们提出了中间件的 第一章绪论 概念1 4 】。中间件是位于( 硬件和操作系统) 平台和应用程序之间具有标准的程序 接口和协议的通用服务。中间件是属于基础软件的一个大类,是可以复用的软件。 针对不同的操作系统和硬件平台,他们可以有符合接口和协议规范的多种实现。 一般的对中间件的定义是i d c 的表述:中间件是一种独立的系统软件或者服 务程序,分布式应用软件借助这种软件在不同的技术之间共享资源,中间件位于 客户机和服务器的操作系统之上,管理计算机资源和网络通信。 这里对中间件的定义表明,中间件是一类软件,而不是一种软件:中问件不 仅实现互连,还要实现应用之间的互操作;中间件一般是基于分布式环境处理的 软件。可以看出,中间件具有如下一些特点: 1 ) 满足特定领域各种应用的需要; 2 ) 运行于多种硬件和o s 平台; 3 1 支持分布计算,提供跨网络和平台的透明性或者服务的交互; 4 1 支持标准的协议: 5 1 支持标准的接口。 由于标准接口对于可移植性和标准协议对于互操作性的重要性,中间件已经 成为许多标准化工作的重要工作内容。对于应用软件的开发,中间件提供的程序 接口定义了一个相对稳定的高层应用环境,不管底层的计算机硬件和系统软件怎 么样更新换代,只要将中间件升级更新,并保持中间件对外的接口定义不变,应 用软件几乎不需要做任何修改,这样保护了企业在应用软件开发和维护中的重大 投入。在因为工程需要更换新的操作系统时,电只需要更换在该操作系统下的中 间件,应用程序也可以继续使用。这样提高了应用软件的生存力 5 】。 中间件所包括的范围十分广泛,针对不同的应用需要,涌现出了很多各具特 色的中间件产品。因此,在不同的角度或不同的层次上,对中间件的分类也会有 所不同。比较常见的中间件有以下几类: 1 ) 通信处理( 消息) 中间件:建网和制定出通信协议,能在不同平台之间通 信,实现在分布式系统中可靠的、高效的、实时的跨平台数据传输,也被 称为消息中间件。这是中间件产品中唯一不可缺少的种类,也是销售额最 大的中间件产品,目前的w i n d o w s 2 0 0 0 操作系统中乜包含了其部分功能, 主要产品有t o n g l l n k 、b e a 的e l i n k 、i b m 的m q s e r i e s 等等; 2 1 事务处理( 交易) 中问件:在分布式事务处理系统中要处理大量的事务, 常常在系统中要同时做上万笔交易事务,在联机事务处理系统中,每笔事 务常常要多台服务器上的程序顺利地协调完成,一旦中间发生某种故障 电子科技大学倾士学位论文 时,不但要求完成恢复工作,而且要能够自动切换系统,使得系统能够永 远保持运行,实现高可靠性运行;同时要使大量事务在多台应用服务器能 够实时的并发运行,并进行负载平衡地调度,实现昂贵的可靠性机和大型 计算机系统同等的功能,为了实现这个目标,要求系统具有监视和调度整 个系统的功能。b e a 的t u x e d o 是这个方面的代表,b e a 也成为增长率 最高的中间件厂商。 3 1 数据存取管理中间件:在分布式系统中,重要的数据都集中存放在数据服 务器中,他们可以是关系型的、复合文档型、具有各种存放格式的多媒体 型,或者是经过加密或压缩存放的,这类中问件为在网络上缓冲存取、 格式转换、解压等带来方便。 4 ) w e b 服务器中间件:浏览器图形用户界面已经成为了公认的规范,然而 它的会话能力差、不能作数据写入、受h t l r p 协议的限制等。要解决以上 问题就必需进行修改和扩充,于是形成了w 曲服务器中间件,如 s i l v e r s t r e a m 公司的产品。 5 1 安全中间件:一些军事、政府和商务部门上网的最大障碍就是安全保密问 题,而且不能使用国外提供的安全保障措施( 如防火墙、加密、认证等) , 必须使用国产的产品。系统中产生的不安全因素几乎都是由操作系统引起 的,就需要使用中间件来解决,以适应灵活多变的要求。 6 1 对象中间件:当前开发大型应用软件通常采用基于构架和构件的技术,在 分布系统中,还需要集成各节点上的不同系统平台上的构件或新老版本的 构件,由此产生了构架中间件,功能最强大的是c o r b a ,可以跨任意平 台,但是太庞大:j a v a b e a n s 比较灵活简单,很适合用于做浏览器,但运 行效率差;d c o m 模型主要适合w i n d o w s 平台,已经得到了广泛的使用。 7 ) 特殊领域中间件:为特定应用领域设计的参考模式,建立相应构架,配置 相应的构件库和中间件,为应用服务器开发和运行特定领域的关键任务 ( 如数字电视、电子商务等) 。具有上面几类中间件的一些特征。 1 3 面向行业应用的嵌入式编程中间件 嵌入式系统的应用范围越来越广,对功能的要求也越来越高,使得嵌入式系 统越来越复杂。随着3 g 通信时代的到来、分布式系统的发展、计算机操作系统和 硬件配置不断提高,人们对嵌入式软件的开发规模、周期、性能、质量等方面也 4 第一章绪论 相应的提出了更高、更苛刻的要求,这些都给嵌入式软件的开发带来了新的挑战: 1 ) 如何根据不同需求迅速的升级软件,开发新的业务和功能; 2 1 如何在异构环境下增强应用程序之间的移植能力和交互能力。 因此面向行业的嵌入式中间件,正在成为嵌入式软件平台的一个发展方向【6 o 所谓面向行业应用的嵌入式编程中间件( 简称嵌入式中间件) ,是指在嵌入式操作 系统和嵌入式应用程序间使用一层中间件。嵌入式中间件提供统一的编程接口规 范,为应用程序提供操作系统的功能,表现为操作系统的功能。统一的应用编程 接口,解决了使用不同操作系统的嵌入式系统的互操作和应用程序在不同嵌入式 操作系统间的移植性问题,也可以被理解为对嵌入式操作系统的封装,形成一个 虚拟操作系统。 封装嵌入式操作系统而成的虚拟操作系统,实际是嵌入式操作系统之上的一 个嵌入式中间件,是为了能缩短特定领域的嵌入式系统软件的开发周期,增强嵌 入式操作系统功能和实现嵌入式程序的可移植性、可维护性和代码继承性而对所 使用的特定嵌入式操作系统的再“加工”【7 1 。通过对嵌入式中问件调用操作系统 的功能,给应用软件的开发人员提供统一规范的调用接口,屏蔽操作系统的底层 具体细节,特别是能够屏蔽不同的操作系统之间的差异。通过调用规范的调用接 口,能够很大幅度的降低开发难度,提高应用程序的可移植性、可维护性和可继 承性【8 】。 一般而言,嵌入式操作系统给用户提供消息队列、调度控制、内存管理、时 钟管理、i o 驱动等基本接口,对这些接口功能的实现也可采取先实现一个最小 的操作原语闭集,然后在实际应用中再做相应的扩充【8 j o 考虑到c 库是各种常见 操作系统都提供了的,因此嵌入式中间件的实现主要考虑标准c 库以外的功能接 口的实现,如进程或线程、信号量、计时器等。将操作系统扩展层设计成为独立 于操作系统之外的一个嵌入式中间件,就可以作为第三方软件提供给应用软件开 发人员直接调用。如图卜2 表示了面向应用编程的嵌入式中间件和操作系统、应 用软件的关系。 ,。h “。1 1 。1 。1 1 。一。1 。 应用程序 面向应用编程的嵌入式中间件 竺全兰竺竺至兰 图1 - 2 嵌入式系统软件结构图 电子科技大学硕士学位论文 设计面向领域的嵌入式中间件主要有两个方面的目的1 8 j : 1 1 提高嵌入式应用软件的生存能力,可以在不同的操作系统上移植。应用程 序通过操作系统封装层来访问操作系统,实现了与操作系统无关,使应用 程序具有可移植性。 2 ) 提供面向领域的扩展功能编程接口,增强操作系统对具体领域的功能支 持。嵌入式操作系统扩展层不但提供了操作系统的固有功能,而且对某个 具体领域的应用程序提供在该领域所需功能的强大支持。 1 4 嵌入式中间件的特点分析 应用行业的多样化特性决定了嵌入式软件平台也是多元化的,其中我们将不 同行业的共性抽象出来,作为平台封装的一个重要目标,其作用体现在【2 1 : 1 1 可移植性。应用软件通过标准规范的接1 2 i 来实现,平台独立于下层具体的 操作系统,屏蔽下层的实现细节,当根据需要选择不同的操作系统时,应 用程序不用作或只作极小的改动,即应用可以在不同的嵌入式系统之间移 植。 2 ) 支持跨平台操作。为不同操作系统上的应用软件集成提供方便,从而满足 企业内部对系统伸缩性和可扩展性的要求。 3 ) 缩短项目的开发周期。软件无需修改、重编译、重连接、或频繁的重起运 行中的应用,就可方便的被更新和扩展。 4 ) 平台具有较好的可维护、可重用和可扩展性。丰富的功能模块和灵活的定 制机制,并且具有规范的开发扩展框架,使得平台开发者可以根据规范 的设计模式对平台功能进行维护、扩展和继承。 从另一角度看,由于行业的特殊性,嵌入式平台不仅需提供通用的功能和接 口,更应根据行业特定需求提出的解决方案,封装其架构与功能,为上层特定应 用提供一致的开发和运行平台。例如,a p c 公司针对电信行业展出了面向呼叫 中心多业务平台;东方通科技在金融行业完成消息中间件t o n g l i n k 和交易中间 件t o n g e a s y ;深圳阿派斯公司主营产品是基于e j b 技术的w e be n a b l e d 应用服 务器等等。 第一章绪论 1 5 本文研究任务和相关课题 本论文是在国家“十五”项目之子项目“面向某工程系统扩展库o s e 研究与 实现”和云南省科技厅项目“基于a r m 的嵌入式l i n u x 操作系统平台研究”支持 下展开的,对面向应用编程的嵌入式中间件的若干关键技术进行了研究和探索, 为设计面向行业领域的嵌入式中间件设计做准备。本文的研究主要围绕面向两个 不同领域的中间件技术展开,借鉴l i n u x 操作系统的虚拟文件系统和反射中间件 的设计思想,探讨嵌入式中间件在不同的行业需求下的设计模式: 1 1 分析和探讨中间件实现的核心技术; 2 ) 通过研究现有的主流运行支撑技术,借鉴l i n u x 操作系统的虚拟文件系统 和反射中间件的设计思想,提出了一种可以在不同嵌入式操作系统平台上 方便移植的嵌入式中间件; 3 1 针对某工程,研究、设计和实现了c r t o s 的操作系统扩展库o s e 的网 络版和o s e 测试验证系统; 4 1 在面向环境检测领域设计l i n u x 操作系统上的嵌入式中间件,提供环境检 测领域的功能支持。 1 6 本文组织结构 全文总共分为六章: 第一章:绪论 本章首先介绍了嵌入式系统、嵌入式软件的特点及其发展,并介绍了中间件 的概念,引出嵌入式中间件的概念及其特点,接着介绍了本文的课题内容和背景; 第二章:嵌入式中间件实现技术及分析 本章首先介绍了国内外的嵌入式中间件发展现状,然后介绍了几种嵌入式中 间件的设计方法,包括系统封装、面向对象、开放实现和本文提出的可移植技术: 第三章:嵌入式操作系统扩展库o s e 的实现 本章首先介绍了该工程的行业特性,然后介绍了0 s e 的整体结构,重要详细 介绍了系统关机模块和空闲时间测量模块的设计、实现。最后设计了o s e 库的验 证系统; 第四章:操作系统扩展库0 s e 的性能分析 本章对所设计的0 s e 进行了时问丌销的性能测量,并对测量的数据进行了分 屯子科技大学硕士学位论文 析; 第五章:面向环境检测领域的中间件结构 本章设计了面向环境检测领域的嵌入式中间件接口规范,并在l i n u x 操作系 统上实现了几个扩展功能接口; 第六章:全文总结 本章全文进行了总结,分析了目前研究成果中的不足,并指出今后研究工作 的方向。 第二章 嵌入式中间件的实现技术及分析 第二章嵌入式中间件的实现技术及分析 2 1 国外研究现状及分析 国外很早就注意到了统一编程接口的问题,从8 0 年代初就开始了相关的研究 工作。国内起步比较晚,目前还处在萌芽状态,但是国内的研究工作进展很快。 下面介绍几种国外已经成功运用的应用编程接口规范。 2 1 1p o s i x 标准 为了制定统一的接口标准,早在8 0 年代末m e e 和i s o 组织共同制定了一个可移 植操作系统接口( p o s i x ) 【9 j ,该标准根据u n i x 操作系统的系统调用接口标准, 统一了操作系统调用接口,只有符合p o s i x 标准的操作系统,才能够运行u n i x 的 程序,目前有很多操作系统都支持部分的p o s i x 标准。p o s i x 接口由2 部分组成, 即基本通用p o s i x 接口和实时扩展的p o s i x 接口。包括系统界面、s h e l l 和工具、实 时扩充、a d a 语言链接、安全性扩充、系统管理、网络扩充、f o r t r a n 语言链接 等标准。p o s i x l 0 0 3 的主要目的是定义一致的界面,方便生产者、增值者和消费者。 自上个世纪九十年代中期p o s i x l 0 0 3 推出以来,日益受到计算机工业界的重视,越 来越多的操作系统宣布支持该标准,在通用操作系统中如此,在实时操作系统中 也是如此, 如q n x 、v x w o r k s 、p s o s 等【1 0 l 。 对于作为各电子产品软件平台的操作系统扩展层,它的p o s i x 接口是p o s i x 实 时扩展接口的子集,包括线程,时间,信号量,消息包队列,定时器等部分内容。 操作系统扩展层在实现p o s i x 接口时应尽量直接采用r t o s 提供的p o s i x 接口,如果 r t o s 不支持某些p o s i x 接口,则操作系统扩展层需要自己实现该p o s i x 接口 1 1 】。 该标准的目的是定义标准的基于u n i x 操作系统的系统接口和环境来支持源 代码级的可移植性。现在的标准主要提供了依赖c 语言的一系列标准服务,在将 来的版本中,标准将致力于提供基于不同语言的规范。 该标准对核心需求部分定义了一系列任何编程语言都通用的服务,这一部分 服务主要从其功能需求方面阐述,而非定义依赖于编程语言的接口。语言规范主 要有两部分组成。一部分包括了访问核心服务的编程语言的标准接口,这些核心 服务为标准中基于编程语言的核心需求部分所定义;另一部分包含了一个特殊语 电子科技大学硕士学位论文 言服务的标准接口。基于任何语言,与该标准一致的执行都必须遵循语言规范的 任何章节。 该标准一共被分为四个部分: 陈述的范围和一系列标准参考; 定义和总概念; 各种接口设备; 数据交换格式; p o s i x 规范就是各个u n i x 厂商经过协商,达成的u n i x 操作系统应该遵循 的一套基本系统调用的规定。在任意一种基于p o s t x 标准开发的软件产品,都可 以方便的移植到其它支持p o s i x 标准的平台上。这一目标虽然尚未完全实现,但 已经在很大程度上提高软件的可移植性,缩短软件的生产周期,减少预算。 2 1 2o s e kv d x o s e k v d x 1 2 】编程接口标准是欧洲汽车电子行业提出了一个面向汽车行业 的标准接口规范。它是专门为分布式,实时系统结构定制的标准。由欧洲汽车制 造供应商和德国k a r l s r u h e 大学联合开发的。主要目标是针对汽车工业中的各种嵌 入式应用,该规范主要包括四个部分: 操作系统o p e r a t i n gs y s t e m ( o s ) ; 通信c o m m u n i c a l i o n ( c o m ) ; 网络管理n e t w o r km a n a g e m e n t ( n m ) : o s e k 实例化语言o s e ki m p l e m e n t a t i o nl a n g u a g e ( o i u ; o s e k v d x 主要关心操作系统、通信和网络管理三个部分的问题。在 o s e 幻,v d x 的四个模块中,用户可以根据自身的需要进行选择配置,都是可选的 ”。这四个部分的关系如下图2 1 所示。 l 操作系统进程内通信通信 三叵 竺竺 图2 - 1o s e k 系统模块关系 从图中我们可以看出,与通常系统概念不同,o s e k v d x 中的操作系统o s 1 0 第二章嵌入式中间件的实现技术及分析 和通信模块c o m 、网络管理n m 三个部分是并行的,而非一般系统的包含和涵 盖的关系,这是因为在控制逻辑比较简单的情况下,常常没有用到操作系统。 o s e 吲v d x 希望能够做到在没有操作系统的情况下,也能进行通信和网络连接, 这样的设计,就充分考虑到了通信的独立性。从图中,我们还可以发现,o s 和 c o m 之间的灰色还有一个进程间通信模块,一般操作系统中都包含有进程内的 通信机制,对于o s e k f v d x 而言,这个模块可以被视作操作系统内的范畴,也 可以认为是通信模块的子模块。 汽车应用都是强实时的嵌入式应用,o s e k 操作系统提供支持事件驱动的必 要功能。o s e k v d x 的操作系统要用在许多控制单元上,要在广泛的硬件的基础 上支持时间关键的应用,系统将这些不同的配置划分为不同的c c ( c o m f o r m a n c e c l a s s ) 。o s e k 用不同的调度机制和配置特点来满足不同的c c 的要求,o s e k 具 有一些自己的特点。 在o s e k 任务分为基本任务和扩展任务:基本任务只有三种状态:r e a d y 、 r u n n i n g 、s u s p e n d e d 。而扩展任务( e x t e n d e dt a s k s ) 在以上三种状态的基础上,还 具有w a i t i n g 、t r i g g e r 两种状态i ”1 。 抢占机制包括三种:非抢占、完全强占、混合强占。在任务的定义中可以将 任务定义成抢占和非抢占。在系统中如果完全是由非抢占的任务构成,调度机制 就是非抢占的调度,反之,则为抢占机制。两种属性的任务都具有,则为混合抢 占。系统抢占与否,需要根据当前任务的属性来决定。 中断也被分为三种类型:一类中断、二类中断、三类中断。一类中断不需要 调用o s a p i ,是执行的最快的中断;二类中断,通常会使用一些开销比较小的系 统调用。第三类中断包含前面两种情况,知识在内部定义了丌关中断区。 从o s e k 操作系统的这几点可以看出,o s e k 操作系统是加强实时性和可配 置性的措施。 o s e k v d x 的通信模块为应用提供的通用的通信接口。通信分为内部通信和 外部通信。内部通信跟一般的操作系统中的通信相类似,主要用于同一节点上的 进程间通信;外部通信用于不同节点间任务与任务的通信。o s e k 的c o m 通信 接口屏蔽了总线、通信协议和网络的差异,也屏蔽了内部通信和外部通信之间的 差异。不论是通过内部通信还是外部通信,其对应用程序的通信接口是相同的。 o s e k v d x 通信部分,对照i s o 的七层防议只定义了三层:作用层( 相当于 应用层) ,网络层,数据链路层。当发生外部通信时,作用层调用网络层和数据链 路层为通信服务;当发生内部通信时,作用层直接处理来自控制单元内部的通信。 电子科技大学硕士学位论文 网络层( n e t w o r kl a y e r ) ) b 作用层提供消息响应、消息分割,重组服务。网络层 处理不同的消息通信协议,提供流控制机制,实现两个处理对等节点之间的通信 流动。它依赖于数据链路层提供数据连接服务。 数据链路层( d a t al i n kl a y e r ) 为网络层、作用层和网络管理模块提供未经确认 的数据报( 帧) 传递服务。o s e k 的c o m 只定义数据链路层服务需求集合。 网络管理m m ) 模块为e c u 提供正常运行的环境和防止冲突的机制,保证系 统的安全性和可靠性。联网的e c u 接受网络管理软件的监测;必须有一定的容错 性,能应付短暂的系统失效;能为网络管理模块提供诊断支持。 根据系统对相应能力的要求,网络管理模块提供了两种网络监控的机制:通 过监视应用消息实现间接监控;通过专门的n m 通信信令实现直接监控。 网络管理规范描述了节点管理和全局网络管理的方法。网络模块具体实现要 根据下层的通信协议和资源分配策略作响应调整。o s e k 的n m 规范包括a p i 接 口、节点监控算法、n m 和c o m 的通信接口、睡眠状态转换算法、n m 数据通信 协议。网络管理规范具有开放性,能够适应不同的总线接口。比如c a n 、v a n 等等总线,并能够适应不同的硬件需求。 2 1 3j 2 m e “一次编程,到处使用”是j a v a 软件设计的基本思想,j 2 m e i ”j 即j a v a2m i c r o e d i t i o n ,是s u n 公司推出的在移动设备上运行的微型版j a v a 平台,常见的移动设 备,如手机、p d a 、电子词典、机顶盒等各种信息终端都可以运行j 2 m e 。 由于移动终端的差别非常大,j 2 m e 也不仅仅是简单的微型版j v m 。为了满足这 些移动设备的千差万别,s u n 定义了一系列的针对不同类型设备的规范,而j 2 m e 就 是这些许多的规范组成的集合运行的平台。 针对消费电子和嵌入式设备领域丰富多样的设备和彼此相差极大的计算能力 及各种硬件条件,j 2 m e 首先根据最基本的一些特征把它们划分为两类。 1 ) 具备间断网络通信能力的个人移动信息设备:比如手机、双向呼机、 p d a ( p e r s o n a ld i g i t a la s s i s t a n t ) ,等等; 2 ) 有固定的不间断网络连接的共享连接信息设备:比如机顶盒( s e t t o p b o x e s ) 、w e b t v 、支持i n t e r n e t 的有屏幕电话、汽车娱乐汽车导航系统 等等。 s u n 的j 2 m ef a q 里有一个很好的概括:j 2 m e 技术有两个设计中心手持的设 备和可以插到墙体上插座的设备。第一类设备往往是个人化的,移动的,使用电 第二章嵌八式中间件的实现技术及分析 池的,体积和功耗都受到限制,因此功能和计算能力都有限。第二类设备一般是 固定的,因此体积没有太大的限制,由于固定,具有持续电源供给,因此功耗也 没有太大的问题,计算能力相对充裕。 计算能力是这两类设备的主要区别,对其上可能的应用和环境显然有本质的 影响,不同类别的设备不可能采用相同的j a v a 平台,必须分别定义。针对这两大 类设备的平台规范就是c o n f i g u r a t i o n 。第一类设备的c o n f i g u r a t i o n 称为c l d c ( c o n n e c t e d ,l i m i t e dd e v i c ec o n f i g u r a t i o n ) ,第二类设备的c o n f i g u r a t i o n 称为 c d c ( c o n n e c t e dd e v i c ec o n f i g u r a t i o n ) 。 属于同一类的设备计算能力是相似的,但是其他功能和条件还有非常大的区 别。作为j a v a 平台必须保证相容性,这就必须舍弃所有的设备特殊性。因此 c o n f i g u r a t i o n 就是支持一组通用设备的最4 , j a v a 平台,作为这些设各的最小公分 母来保证不同设备问的平台相容性。 在c o n f i g u r a t i o n 中舍弃了设备的特殊性来保证j a v a 平台的相容性,大拿市仅 仅有c o n f i g u r a t i o n 是不够的,特殊的具体设备有其独特的功能和硬件条件。因此 在c o n f i g u r a t i o n 的基础上,根据设备具体功能在进行一次划分,依据功能的划分 也就是其硬件条件的划分,比如屏幕的大小、内存的大小、计算能力、电力供应 等等都是从属于功能的,因此同功能的设备的硬件条件都是非常相似的。p r o f i l e 就是针对每一类功能设备的特殊性定义的与设备特性相关的a p i ,建筑于 c o n f i g u r a t i o n 之上,是对c o n f i g u r a t i o n 的扩展和补充。 2 1 4b r e ws d k b r e ws d k ”】是美国高通互联网服务公司( q u a l c o m m ) 制定的一套面向手机 软件的b r e w 体系标准。b r e w 就是无线二进制运行环境( b i n a r yr u n t i m e e n v i r o n m e n tf o rw i r e l e s s ) ,是高通公司2 0 0 1 年推出的基于c d m a 网络“无线互联 网发射平台”上增值业务开发运行的基本平台,专为无线设备设计的应用程序执 行环境。b r e w 提供的功能环境就好像p c 机上的操作系统一样,可以通过服务提 供商下载指定类型的应用程序或游戏来使用。同时,通过b r e w 接口功能,供应 商可以提供成套的完整的资讯、商务、娱乐功能。从这里我们可以b r e w 的产生基 于两个需求:第一,屏蔽设备间差异,向开发商( 包括硬件商和软件商) 提供一 个通用的平台;第二,提供一个功能强大的编程环境,刺激软件开发。 b r e w 包括三个方面的产品:运行环境、开发环境、软件分发系统。所谓运 电子科技大学硕士学位论文 行环境,是指开发完成以后的b r e w 设备,比如手机,软件硬件的总称,b r e w 免费向制造商提供b r e w 的标准以及运行平台软件。开发环境,主要是b r e w 提供的应用程序的开发软件s d k ,它所面向的是软件的开发人员。软件分发 系统,支持运营商向最终用户提供下载,并提供一种第三方软件商与运营商之间 的服务、付款方式,着这个部分是面向运营商的。 b r e w 是一层驻留在无线设备中芯片系统软件和应用程序之间的软件接口 层,这层软件可以包含一个或多个应用程序或者类模块。每个模块必须对应一个 相关的m i f 。m i f 中包含与模块相关的信息,例如支持的类、支持的小程序和小 程序的细节、标题图标等。m i f 是通过b r e w m i f 编辑器创建的。 另外模块可以从b r e w 资源文件中读取数据。应用程序可以存取资源文件中 的字符串、位图、对话框等。b r e w 的资源文件,由b r e w 资源编辑器生成。 b r e w 中包含多个a e e ( a p p l i c a i o ne x e c u t i o ne n v i r o m e n t ) 接口,如i s h e l l i d i s p l a y 和i m e n u c t l ,每个接i s 都封装了一组资源和允许管理这些资源的方法。接 口是由3 2 位的接口i d 来识别的。在使用接口之前必须通过调用i s h e l l 接口的 c r e a t e l n s t a n c e 0 方法创建一个实例,从而获得对应的全局性唯一标识符,该标识 符相当于一个指向接口的指针。下面简要介绍几种关键性的接口。因为这些接口 涉及到了关于接口设计的很多重要思想,所以这里专门对i b a s e 接口、i s h e l l 接口、 i m o d e 和i a p p l e t 接口进行介绍。 i b a s e 接口类可定义所有a e e 类对象包含的基本结构,同在公共类定义中定 义的前两个接口一样,每个a e e 接口类或结构都包含i b a s e 函数或方法。a e e i b a s e 类提供了两个基本的功能域,由于a e e 对象能够动态分配因此必须使用一 个独立于特定内存管理器的机制,来释放对象。b a s e 接口的a d
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 门诊报销面试题及答案
- 简谱旋律考试题及答案
- 黑热病考试题及答案
- java面试题及答案约瑟夫环
- 智能驾驶技术趋势-1
- 孩子公益意识提升技巧
- 提升孩子专注力技巧
- 家电公司质量追溯管理规定
- 2.5直线与圆的位置关系(第1课时位置关系、切线的判定与性质)(教学课件)数学苏科版九年级上册
- 保安队列训练培训课件
- 2025年上海市高考化学试卷(含答案)
- 《人工智能概论-面向通识课程》全套教学课件
- 三区人才面试题及答案大全
- 物业服务礼仪培训大纲
- 2025年舞台灯光设备项目市场调查研究报告
- 防火钢质门、卷帘门项目可行性研究报告-商业计划书
- 2024年云南师范大学辅导员考试真题
- 普查保密协议书
- 《初学者指南:美术基础课件》
- 冶金矿山采矿设计规范
- 配送车辆违章管理制度
评论
0/150
提交评论