(计算机应用技术专业论文)基于brew的无线数据应用平台的研究.pdf_第1页
(计算机应用技术专业论文)基于brew的无线数据应用平台的研究.pdf_第2页
(计算机应用技术专业论文)基于brew的无线数据应用平台的研究.pdf_第3页
(计算机应用技术专业论文)基于brew的无线数据应用平台的研究.pdf_第4页
(计算机应用技术专业论文)基于brew的无线数据应用平台的研究.pdf_第5页
已阅读5页,还剩41页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

西= | t :t - 业人学硕士论文 摘要 摘要 随着无线数据行业的快速发展和无线数据应用平台的广泛应用,无线数据 应用平台之间及他们与普通桌面系统之间出现了广泛协同工作的需求。为了解 决这个问题,必须构建可以使移动设备和桌面系统协同工作的分布式系统。 c o r b a 是0 m g 推出的目前得到广泛应用的分布式系统。b r e w 是高通公司最新推 出的一个无线数据应用平台。他可广泛适用于c d m a 手机等移动设备,为无线应 用开发提供了一个统一的软件平台。 该文对c o r b a 进行了深入的分析,并设计和实现了一个可应用于b r e w 平台的移动中间件b o r b 。b o r b 是根据移动设备对原有的c o r b a 进行 了大幅度的裁减所得到的,主要解决了资源有限的问题在b o r b 的实现过程, 我们通过b r e w 支持层解决了b o r b 在b r e w 上运行的问题。针对移动设备 的特点( 资源有限,网络不稳定,所需功能有限) ,对i i o p 协议进行了改造, 并去掉了一些无关的组件。该文还研究了基于b o r b 的电子邮件客户端。利用 b o r b 可以简化电子邮件客户端用到的多种不同的编码和协议,缩短开发周期, 并增强可扩展性。b o r b 为实现无线数据应用的可移植性、可重用性和模块化 提供了坚实的基础。 关键字:中间件,b r e w ,无线数据 西北工业大学硕士论文 a b s t r a c t w i mt h ed e v e l o p m e n to fw i r e l e s sd a t ai n d u s t r ya n dt h ee m p l o y m e n to fw i r e l e s s d a t aa p p l i c a t i o np l a t f o r m ,t h e yn e e dt oc o o p e r a t e ,i n c l u d i n gm o b i l ed e v i c e sa n d d e s k t o p s 刀砖d i s t r i b u t e ds y s t e mc a n a d d r e s st h i sq u e s t i o n 刀碓d b j e c tm a n a g e m e n t g r o u p s c o m m o no b j e c tr e q u e s tb r o k e ri sa n a p p r o p r i a t e d i s t r i b u t e d s y s t e m b r e wi san e ww i r e l e s sd a t aa p p l i c a t i o np l a t f o f i l lo fq u a l c o m m ,w h i c hi s d e s i g n e d f o rh a n d s e t s ,a n di sau n i v e r s a ls o f t w a r e p l a t f o r m f o r a p p l i c a t i o n d e v e l o p m e n t t h i sd i s s e r t a t i o na n a l y z e st h ec o r b a s t a n d a r d d e s i g na n dr e a l i z eam o b i l e m i d d l e w a r eb o r 丑w h i c hi sf i tf o rb r e w :b o r bi st h er e s u l to f c o n f i g u r a t i o nt o f u l lc o r b a ,r e s o l v i n gt h eq u e s t i o no fl i m i tr e s o u r c e i ni m p l e m e n t a t i o no fb o r b , b r e ws u p p o r t1 e v e lm a k e sb o r br u n f l u e n t l y o nb r e w :t h ei i o pw a s r e c o n s t r u c t e d a c c o r d i n g t ot h ef e a t u r e so fm o b i l ed e v i c e s ,l i m i t e d p r o c e s s i n g r e s o u r c e s ,u n r e l i a b l ea n dl o w - b a n d w i d t hw i r e l e s sn e t w o r k s s o m ec o m p o n e n t sw e r e r e m o v e d b e c a u s et h e ya r en n u s e 允lt om o b i l ed e v i c e s t h i sd i s s e r t a t i o na l s os t u d i e d e m a i lc l i e n tt og i v ea ne x a m p l et or e a d e r s b o r bc a ns i m p l i f yt h ev a r i o u se n c o d e m e t h o d sa n dp r o t o c o l s b o r bc a ni m p r o v et h ei m p o r t i n g ,r e u s eo fw i r e l e s sd a t a a p p l i c a t i o n s k e yw o r d s :m i d d l e w a r e ,b r e w ,w i r e l e s s 1 1 两北工业大学硕卜论文 第一章绪论 第1 章绪论 1 1 课题的研究背景及意义 移动通信自20 世纪90 年代以来进入了大发展阶段,全球用户数每20 个月翻一番, 目前全球用户数已经超过1o 亿。我国移动用户也在高速增长,如今已经拥有了接近1 8 亿用户。利用移动终端通过无线方式接入互联网,实现无线移动网络,随时获取自己需要 的信息及服务已经成为了当前的研究热点。 随着移动通讯的关键技术一无线数据应用平台的日益。泛的应用,无线数据应用平台 之间及他们与普通桌面系统之间必然会出现更广泛的协同_ 作的需求。但是和固定 i n t e r n e t 接入相比,无线网络在市场应用、网络带宽和终端能力等方面有很大的差异。这 就会造成应用系统之间,甚至同一个应用系统内,具有很大的差异。使用较低层次的通讯 协议( 如t c p i p ) 来实现协同工作,其代价较大。应用开发者不但要专注具体应用的问题, 更是要花费大量的精力去了解下层平台的特性,以解决所处平台的差异。实现无缝的、灵 活的、完全组件化的无线移动互联还存在很大的围难。 而在当前的桌面和企业应用系统中,这样的协同工作问题已经得到了很好的解决,那 就是使用一种叫软总线( s o f t w a r eb u s ) 的技术( 通常也称中间件) 。通过软总线,应用 系统的对象能达到透明合作的效果。这样的应用系统,具有易于开发、易于维护、易于升 级的特点。c 0 r b a 作为这类技术的主流,已经在桌面和企业应用系统中得到了广泛的应用。 c o r b a ( c o m m o no b j e c tr e q u e s tb r o k e r ) 是公用对象请求代理体系结构,它是o m g ( o b j e c tm a n a g e m e n tg r o u p ) 推出的一个重要的工业规范。通过这种开放的、商业独立的 体系结构使得多种计算机应用能够在网络上协同工作,而不必过多的考虑计算机软件、操 作系统、编程语言、网络的异同。使用标准协议i i o p ( i n t e r n e ti n t e ro r bp r o t o c 0 1 ) , 不同软件供应商提供的基于c o r b a 的程序可以互操作。 c o r b a 既能解决继承传统应用程序和系统时所遇到的问题,也能为动态变化的企业环 境提供适应性。在c o r b a 环境中,由于应用程序的集成是基于面向对象模型的,其开发和 维护成本比面向功能的软件要低得多。 c o r b a 具有使用面向对象设计技术、能够重用更多软件,以及使用语言、平台无关等优 点,这使他对无线数据系统具有很强的吸引力。将c o r b a 引入无线数据系统中,能够很好 的解决无线数据平台之间及无线数据平台与普通桌面系统之间的协同工作问题,而且会降 低开发这样的系统的代价,缩短开发周期,更易于维护和系统升级。 第l 页共4 7 页 两北工业大学硕j 。论文 第一章绪论 由于无线数据平台与普通桌面系统存在很大的差异,这主要是移动终端的资源( 如c p u 的处理能力、内存的容量、功耗等) 有限,所使用的无线网络不稳定带宽窄,因而普通的 c o r b a 系统并不适合移动终端。o m g 对普通c o r b a 规范进行很大的剪裁,推出了适用于嵌入 式系统的规范:m i n i m u m c o r b a 。但是由于无线数据应用平台的特殊性,要把嵌入式c o r b a 改造成真正适合无线数据平台的移动中间件,还有许多的工作要做。 在国外,移动中间件也才刚刚出现。j 2 m e 是s u n 公司推出的支持分布式系统的无线数 据应用平台,但是他必须要同j i n i 协同j i :作才能够发挥出分布式的功能。 在国内,目前还没有将c o r b a 应用丁无线数据应用平台的报道。 本课题旨在设计并实现支持无线数据应用平台的小型互操作中间件,用于支持新型无 线数据应用平台b r e w 的移动终端设备中,使得异种无线数据应用平台之间或无线数据应 用平台与非无线数据应用平台之间实现互联、互通、互操作。 1 2 论文的内容及组织 作者主要研究了以下几方面的内容: 深入分析了移动中间件所涉及到的技术; 根据c o r b a 规范自行设计并实现了一个移动中间件一b o r b 研究了b o r b 在电子邮件系统中的应用 第二章介绍了移动中间件。第三章分析并设计支持b r e w 的移动中间件- - b o r b 。第四章 介绍了b o r b 的实现。第五章介绍了在b o r b 上的一个应用电子邮件。第六章是对全文的 总结。 第2 页共4 7 页 西北t = 业大学颤,【。论文 第二章移动中阈件研究 第2 章移动中间件研究 2 1 移动中间件的目标 通过将中间件技术应用于无线数据应用平台,设计并实现基于b r e w 的移动中间件 b o r b ,提高无线数据应用的开发速度和开发效率并可以更加有效地利用计算资源,实现 一个服务器向多种异构平台提供服务的目标 2 2 无线数据业务介绍 2 2 1 无线数据行业的现状与发展 无线数据行业的现状与个人电脑行业2 0 年前的情形非常相似。由于不同的电脑品牌和 款式间没有个通用的应用软件平台,程序员只能为特定设备编写程序,而消费者也被局 限在狭小的范围内作选择。但是通用个人电脑平台的出现使开发者可以为包括几乎所有计 算机的大众市场编写代码,导致新软件的数量呈爆炸性增长。软件产品的普及推动了硬件 的销售,消费者可以选用他们喜欢的应用来安装到自己电脑中,通过升级系统来更好地发 挥新软件的性能。 对于无线网络运营商来说,通往赢利的道路总是意味着需要为其用户提供有价值。并 且在一定程度上使之欲罢不能的服务至今为止,语音业务一直是无线网络中的主打应 用但显而易见的是,非语音业务( 数据应用或增值业务) 也蕴藏着无限商机,如果运营 商运作得当,并能摸准大众市场的喜好,这一市场必将迸发出无限的活力, 这些数据应用包括实且寸信息服务、游戏、新闯、娱乐以及效率提升工具等,此处不 - - n 举。除此之外,这些应用还包括那些能够使运营商更加高效的与用户交流并降低用户 流失率的应用,比如用以定制用户界面的应用以及能够更新基于手机功能的网络特性的应 _ i j ,同时,新型基于语音的应用一语音识别功能以及“一键通话”功能也即将面市。 无线行业向用户提供这些应用的最佳途径就是利用这样一种解决方案: 开放、全球统一标准、独立于硬件,并且可以连续应用于任何网络、任何移动设 备 提供端到端的解决方案,同时采用开发的技术平台以及完善的商业模型,能够在 整个价值链上实现收入共享 能够使用户通过其无线设备发现、购买、下载并管理应用 第3 页共4 7 页 两北工业丈学硕t 论文 第二章移动中间件研究 要完成这一解决方案的核心问题是缺乏统一、开放的无线数据应用平台移动终端平 台。 2 2 - 2 无线数据应用平台的基本概念 今天的无线应用开发人员面l 晦着众多不同的设备、编程环境和操作系统,它们都有自 己独特的发展过程和风格。大量设备使用的是各自设备制造商自行开发的软件层和界面。 每种应用都必须单独集成到每种不同设备上,这一任务往往需要制造商或开发商自己的团 队花费几个月时间来完成。而且,由于第三方开发商与设备制造商或运营商没有紧密的关 系,他们就没有向无线产品用户分发和销售应用程序的渠道。简而言之,大多数第三方开 发商一直都被阻挡在无线市场之外。 目前市场上已经出现了好几个瞄准无线数据行业需求的系统,如s u n 微系统公司的 j 2 m e 平台,高通公司的b r e w 平台。s u n 为了适应各种不同的需求,专门设计了三套j a v a 的 标准,其中的j 2 m e 是针对有限内存,显示和处理能力的设备,主要是消费电子和嵌入式设 备领域。j 2 m e 最大的优势其实也就是j a v a 的优势”w r i t eo n c e ,r u na n y w h e r e ”。j 2 m e 已 经得到了j a v a 程序员的欢迎,m o t o l o r a 、n o k i a 等厂商也已经宣布支持j 2 m e ,并已经推出 了几款基于j g m e 的产品。j 2 i e 通过和j i m 技术的配合来支持开放的分布式应用结构。高通 公司虽然是这个领域的新手,但是由于他们在无线通讯领域的技术优势,使他们推出的 b r e w 平台非常具有竞争力。由于高通公司在b r e w 上集成了j a v a 虚拟机产品,所以无论是 c c + + ,还是j a v a 语言都可以用来为b r e w 开发应用程序。b r e w 兼顾t c c + + 速度快的特点, 以及j a v a 移植性好的特点。目前,韩国和日本的很多厂商已经宣布支持b r e w 平台,并已经 推出了很多基于b r e w 的手机产品。在无线运营商方面,v e r i z o n 尸, 经开始向全美国提供b r e w 服务。但是,从目前来看,b r e w 还不具有支持开放的分布式应用的能力。这是他的劣势, 也是急需解决的问题。 无线数据应用平台的基本定义是:运行在移动终端上,可以通过运蕾商提供的数据服 务访问i n t e r n e t 的运行环境。无线数据应用平台能够管理移动终端的基本功能( 如电话接 听、短消息发送等功能) ,并能够为用户提供其他的附加功能( 应用空中下载等) 。无线 数据应用平台还应该为应用开发者提供各种模块( 如多媒体、数据库等) ,以方便应用开 发者迅速开发出丰富多彩的应用程序。 无线数据应用平台要在市场上取得成功,就需要满足运营商、设备制造商以及用户的 多方面需求。这就要求它的结构简单易于移植,同时模块化便于满足从低端到高端的多种 需要。为了达到设备毒4 造商的要求更要体积小、能深入到芯片层管理终端的各种功能。 第4 页共4 7 页 西北工业大学硕i :论文 第二章移动中间件研究 图2 - i 终端软件结构 如图2 1 所说明的就是一个简单的无线数据应 用平台在移动终端中的位置。为了管理终端的基本 功能( 如电话接听拨出信号处理流程、短消息发 送接收流程等) ,无线数据应用平台必须建立在 宿主操作系统之上。为了方便移动终端上的应用程 序的移植,无线数据应用平台必须将宿主操作系统 所提供的功能和自身所提供的类库整合成统一的 编程接1 3 。这样,应用程序不用关心底层的功能是如何实现的,只管调用它们就可以了。 图2 2 说明了无线数据应用平台的基本框架。为了整合宿主操作系统的编程接1 3 和移 动终端中的各种芯片所提供的功能,无线数据应用平台设置了转换配置层。它不仅可以将 宿主操作系统的编程接1 3 和各种芯片级的功能转换成统一的应用程序编程接1 3 ,而且还将 无线数据应用平台本身所提供的编程接口也整合了进去。 要成为通用的平台就必须为应用提供统一的应用程序编程接1 3 。但是为了满足设备制 造商产品个性化的要求,又必须保留对宿主操作系统的接口,以及各种芯片级( 定位功能、 多媒体功能、摄像功能等) 的功能。 2 2 3 无线数据应用平台的基本特征 通用无线数据应用平台具有一些基本特征: ( 一)硬件无关 由于设备的复杂性和多样性使得无线数据应用平台需要有不同的层次和类别来适应, 它必须可配置、模块化。这包括了两层功能:一、提供与具体的设备无关的核心功能,这 第5 页共4 7 页 两北工业大学硕士论文 第二章移动中间件研究 也是平台无关性的基础;二、提供针对设备的特殊功能a p i 和扩展类库。 ( 二) 无线r 载 为了满足未来用户多样化的要求,手机软件不但要出厂时预装,而且必须可以自由地 卸载和安装新的软件。由于无线通讯的特点,无线数据应用平台必须支持应用程序的动态 无线f 载和安装,以及空中或本机删除。这使得无线数据应用平台必须采用组件化的思想 进行设计,以最火限度的节约资源。 ( 三) 商业模式 一种技术的成功并不完全取决于它是否先进,成熟完接的商业模式才是最重要的决定 因素。好的商业模式应该能充分调动起所有参与者的积极性,包括移动运营商、手机生产 商和用户。当然商业模式也不应该是死板的,它必须根据目的市场当地的经济发展水平、 商业习惯作出不同的调整。由于中小企业是经济中最有活力的部分,商业模式也必须向他 们倾斜。 2 3b r e w ( 无线二进制运行环境) 2 3 1b r e w 的基本概念 b r e w 运行环境是一个软件接口层,它驻存在无线设备中芯片系统软件和应用程序之间。 b r e w 就是保证软件相容性的基础,但b r e w 并没有摒弃设备的特殊性( 使得各个厂家的产品 有自己的特色) ,0 e mu ia p p ( s ) 和b r e w 处于一个层次。应用程序既可以完全利用b r e w 所提 供的功能进行编程,这样的软件可以毫无障碍的应用于各个不同的硬件平台;也可以将b r e w 和各个设备不同的特性结合起来,以便做出有特色的产品。开发商和制造商完全可以进行 一些扩展,提供无线应用可以利用的附加功能。 b r e w 可管理所有设备的电话功能,把应用程序与复杂的通话设定、验证以及相关任务 分离开来。这一功能使开发者可以专注于实际应用功能。b r e w 提供了一套应用程序接口 ( a p i ) ,包括多媒体功能套件、连接功能套件、定位功能套件等。虽然b r e w l 目前只可应 用在基于高通芯片的设备中,但这一平台拥有独立的无线接口,因此基于其它无线技术的 手机也可以运行b r e w 应用程序。 第6 页共4 7 页 西北丁业大学硕上论文 第二章移动中间件研究 图2 - - 3 b r e w 律蒸缩擒 对应用开发商而言,b r e w 提供了完备的开发环境和模拟器,使开发者可以在熟悉的环 境下进行编程。由于b r e w 可以安装在不同的硬件平台上。开发者并不需要和具体的手机硬 件打交道。只要开发商获得了t r u eb r e w 认证,开发出的应用通过了测试并获得了数字签名, 高通公司就可以将这些应用向全球的运营商推广。对设备制造商而言,高通公司向他们免 费发放b r e w 。并完成相应的集成工作。这有助于他们提高推出新产品的速度,并且可以避 免由于软件的缺陷所带了的损失。b r e w 给运营商带来的益处就更多了,移动运营商可以向 用户提供丰富多彩的应用,充分利用网络资源。在全球移动运营商a r p u 不断下滑的时候, b r e w 所提供的在线游戏、软件下载功能能够有效的提高他们的收入,刺激股价。b r e w 所带 来的收益有应用开发商、高通和移动运营商分成,其中开发商可以拿到接近七成的分成。 非常有诱惑力! b r e w 3 j 高通的无线互联网发射平台“的嵌入功能提供了一套应用程序接口( a p i ) 。无线 第7 页共4 7 页 西北_ t 业大学硕0 论文 第二章移动中间件研究 互联网发射平台是一组高度集成的芯片组功能、系统软件和能提供高级互联网功能与多媒 体特征的附加程序,大大减少了对大多数附加配件的需要。如果必要,制造商或其他开发 人员可以在任何时候对b r e w 环境进行扩展,提供无线应用可阱利用的附加性能。这使得精 巧、强大的应用可以利用本地运行和存储,提供一个比仅基于浏览器的架构性能和功能更 为强大的客户一服务器解决方案。 b r e w 具有以f 的一些基本特征: 开放、全球统一标准、独立于硬件,并且可以连续应用于任何网络、任何移动设 备 提供端到端的解决方案,同时采用开放的技术平台以及完善的商业模型,能够在 整个价值链上实现收入共享 能够使用户通过其无线设备发现、购买、下载并管理应用 2 3 2b r e w 的开发环境 设备模拟器 b r e we m u l a t o r 用于模拟所选的手持设备,使您可以加载并测试在b r e w 环境下开发的 小程序和类。模拟的无线设备可以使用各种屏幕、键盘、可用内存量和支持的语言。在模 拟过程中。e m u l a t o r 在p c 显示器上打开设备的图像。单击设备按键的图像区。可以对模 拟的小程序提供按键输入。小程序生成的屏幕输出则显示在设备图像的屏幕区。您可以选 择按照设备实际的屏幕大小查看应用程序,或者在c o n f i g u r a t o r 配置文件指定的屏幕火小 来查看。 资源编辑器 资源编辑器用于创建一个包含字符串、图像和对话( 执行小程序时加载) 的资源文件。 您可以为这些资源分配i d ,并创建包含这些i d 的头文件( 本例中称为a p p _ r e s h ) 。经过 编译和链接,源文件便生成小程序的动态链接库( d l l ) a p d d t l 。b r e w 资源编辑器使用中间 文件格式保存其内容,该格式可以支持许多最终输出格式,其中之一就是b r 明使用的格式。 b r e w 资源编译器输出入扩展名为b r i ( b r e w 中间资源文件) 的中间文件,最终生成扩展 名为b a r ( b r e w 小程序资源) 的输出。在b r e w 资源编辑器中编译资源文件后最终输出还会 生成一个具有- r e s ,h 后缀( 扩展名) 的头文件( 如,f o o h a rr e s h ) m i f 编辑器 每个b r e w 模块均包含一个或多个b r e w 类它们可以是小程序类也可以是非小程序类并 用c l a s s l d 标识小程序类可以由设备用户运行而非小程序类可以实现模块的小程序类使用 的服务这些服务也可供其它模块的类使用。 m i f 中包含每个模- - c l a s s l d 并指定导出哪些类供其它模块使, q 目m i f 中还包 第8 页共4 7 页 两j 丁业丈学硕f j 论文 第二章移动中间件研究 含每一个小程序类的文本字符串以及在可运行的小程序菜单中代表小程序的一个或多个图 形图标m i f 中还包含其它可确定模块优先级可被模块类调用的b r e wa p i 函数的信息以及 模块可从其它b r e w 类接收至的通知。 a r mb r e wb u i l d e r 开发者在台式电脑上调试完应用程序之后,为了将应用程序下载到手机上,必须用a r m b r e wb u l l d e r 将源程序编译成二进制代码。 a p p 下载器 为了通过t r u e b r e w 测试以进入移动应用市场,开发商必须在实际的设备上测试他们自 己的虑用,a f p f 载器就是b r e w 提供的帮助他们把应用下载到实际设备上的工具。它可以 在实际设备( 当然,它必须支持b r 酬) 上创建删除目录、下载卸载应用、创建删除 文件等。为了保护开发商的知识产权,a p pf 载器还设置了防止用户将实际设备上文件复 制到台式机上的功能。 2 4c o r b a 概述 公共对象请求代理结构( c o r b a ) 主要是为了使不同的对象系统能够协同工作而创建的。 描述了一个支持分布式和异构型环境应用程序实现的中阔件平台体系结构。c o r b :, 标准由 对象管理组织( o m g ) 制定,它是一个规范而不是一个程序实现。o m g 是个拥有超过8 0 0 个信息软件厂商、软件开发者和用户的国际性组织。 2 , 4 1c o r b a 核心结构 如图2 - - 4 ,o r b 的功能就是中央对象总线,每一个c o r b a 对象通过它透明的和其他的本 地或远程的c o r b a 对象交互。实际上,o r b 负责所有和请求对象有关的机制,这些机制包括 每一个请求寻找对象实现,准备对象实现以接受请求,以及与组成请求的数据进行通讯。 第9 页共4 7 页 两北r 业人学颂l 论文 第二章移动中间件研究 圈2 - 5 c o r b a 的皇饕编成 每一个c o r b a 服务器对象都有一个o r b 接口和一套的方法。对客户端来说这些接口完 全独立于对象所处的位置、用什么编程语言实现以及在对象接口中反映出来的别的方面。 为了请求一个服务,c o r b a 客户端需要一个c o r b a 服务器对象的对象引用。然后,客户端 可以让所有对象引用的方法调用看起来就像是c o r b a 服务器对象在客户机的地址空间中一 样。 一个c o r b a 对象作用于o r b 的方法有好几种,通过o r b 接口或者通过对象适配器一 或者是基本的对象适配器( b o a ) 或者是可移动的对象适配器( p o a ) 。对象适配器为例子服 务器对象提供运行时环境,给他们传递请求,并且给他们分配叫做对象引用的对象i d 。今 天,大多数o r b 提供商都提供p o e 而不是b o a 。原因就是在两者之中只有p o a 能完成下面 的目标: 允许程序员创建可以在不同的o r b 产品问移植的对象实现 允许程序员创建能够为那些生命周期( 从保持一个同样对象引用的客户端方面来看) 能够扩展到多个服务器生命周期的对象提供稳固的服务。 为对象的透明动作行动提供支持 第1 0 页共4 7 页 两北工业人学硕l 论文 第二章移动中间件研究 允许一个同时支持多个对象定义的单独伺服程序 允许多个分开的p o a 实例存在一个服务器中 为拥有最小的编程支持和架构的短暂对象提供支持 当客户端和服务器或对象实现进行通讯,他并不需要知道实现服务器对象的语言。客 户端只需要知道他的服务器对象公布的接口就行了。翊接口定义语言( i d l ) 描述的接口的 功能就是在服务器和客户端之间的绑定契约。事实上。i d l 是描述被o r b 排列的对象关联 的c o r b a 接口。他只是纯粹的生命,他不提供实现细节,并且覆盖诸如错误处理的重要事 项。 有关c o r b a 的另外一个重要的方面是他所依赖的协议。为了在o r b 之间通讯以及支持 远程对象,o b l g 定义了通用o r b 问协议( g i o p ) ,他是一个抽象的面向连接的协议。g t o p 为o r b 间通信定义了一套消息格式和通用数据表示。他是为o r b o r b 协作专门设计的。 为了规定g i o p 消息如何通过t c p i p 网络交换,因特网o r b 间协议( i i o p ) 被开发了 出来。i i o p 使因特网作为o r b 骨架成为可能,因特网为其他o r b 搭起了桥梁。通过特殊环 境o r b 间协议( e s i o p s ) 支持其他的传输协议,这种协议提供了通过特殊网络的“盒外” 互操作。 既然c o r b a 只是一个规范,但是只要有o r b 的实现,他就能够被用在从主框架到u n i x 盒、从w i n d o w s 机器到手持设备的不同操作系统平台。 2 4 2 对象管理结构 对象管理结构( o m a ) 为应用定义了一种公共语言,并且通过定义标准服务和接口使在 应用级的互操作成为可能。o m a 提供了以c o r b a 为核心元素的结构的规划。图2 - - 6 说明了 o t a 并且显示了能够被划分成四个主要部分的对象接口: 1 对象服务:一些基本服务的标准,几乎每个对象都需要的这些服务。他们包括: 名字、安全、事件、交易、生命周期、同步、处理和几个其他豹。 2 公共工具:这些是为应用提供一个接口级的服务基本工具。复合文档管理工具 是这些 具的一个例子。 3 域接口:很多工业组织都能够从通过和o m 6 的特殊兴趣组( s i g ) 合作定义域接 口( 垂直工具) 制定的他们自己的标准中获益。这些域接1 :3 提供了面向特殊应 用领域的标准接口,例如健康福利、金融服务和电信等等。 4 应用接口:他们是为特殊应用开发的。这些接口是最终用户定义的,而不是o m 6 。 第1 1 页共4 7 页 西北工业大学硕t 论文 第= 章移动中间件研究 2 4 3c o r b a 接口和服务 图2 - - :6 对象管理结箍 既然所有的基于调用( 静态或动态) 的c o r b a 都需要i d l 接口,那么就要建议提供商 和企业o r b 共同维护一个接口仓库( i r ) ,所有其他的o r b 也可以访问得到。在企业o r b 中的i r 存储网络客户组件的接口定义,提供商的i r 也维护提供商组件的接口定义。 实现仓库( i m r ) 包含了允许o r b 定位和激活实现对象的信息。除了他在o r b 功能中的 角色外,i m r 通常是一个存储和o r b 对象实现有关的额外信息的地方。调试信息、资源分 配和安全是那些和实现库相关的额外信息的几个例子。 动态调用 虽然静态方法调用在大多数协商中工作得很好,但是在某些情况f 选择另外一个动态 方法。例如,一个对对象的接口一无所知的客户可以使用动态调用接口( d i i ) ,然而可能 改变但不用影响他的客户端的对象实现可能使用动态骨架接口( d s i ) 。 命名服务 基于o r b 系统的客户端需要目录服务以定位网络中的对象。c o r b a 提供两个目录服务一 命名和交易。命名服务提供从名字到对象引用映射的主要机制,当客户端知道他们想和那 个对象通讯时使用。 c o r b a 对象实现( 如伺服程序) 在命名服务中注册,这是为了使他们通过c o r b a 接口提 供的服务可用。换句话说,命名服务是核心机制以支持从名字到对象引用映射,当客户机 提前知道他们想和那个对象通讯的时候使用。 第1 2 页共4 7 页 西j g t 业大学硕士论文 第二章移动中闻件研究 2 5 移动中间件的解决方案 在介绍完c o r b a 的背景之后,必须说明支持嵌入式系统的中间件解决方案。在仔细的 观察之后可以发现在基于嵌入式系统的中间件环境的几个趋势: 1 为不同类型的设备定制中间件配置 2 为了适应设备中的中间件层缩减f o o t p r i n t 3 为了在中间件环境中的设备提供代理 第一个趋势已经在为各组嵌入式设备定制c o r b a 配置的项目中表现出来了。第二个趋 势可以用m i n i m u m c o r b a 说明,第三个趋势可以用j i n i 代理计划说明。 2 5 1 定制o r b 在c o r b a 的背景下,他可以表现成第种趋势,也就是说在中间件的帮助下使嵌入式 系统加入到分布式系统环境中来。 p a l m o r b 及其类似产品 由于设备为了使用中间件工具仅仅需要完整分布式系统的底层结构的子集,有一些人 正在为一些设备设计特定的中间件配置。这些工作已经被应用于c o r s a 核心的实现上。 这些工作的所有目的是写一个压缩的、可扩展的c o r b a 中间件片,这个片可以在资源 有限的手持设备上灵活操作,因此提供了可以装进如口袋之类地方的移动数据访问设备。 然而,因为他们的设计主要是对一些特别设备,所以这些年来他们的可扩展性可能已 下降。此外,在菲功能性方面( 例如。持续、同步等) 。将网络集成到拥有不同的特殊0 r b 配置的设备上可能是一项艰难的工作。 因此,所有的设备都能理解的最小配置必须肯定很流行,或者必须考虑额外的编程开 销。因此,如果没有另外的支持普及性不可能无缝的自然的发生。 2 5 2 缩减f o o t p r i n t 为了达到普及的目的,必须有比较广泛的方法。标准的最小中间件配置能够说明这个 问题,因此适应性增强的周肘,互操作性却比较匮乏。q 躲和s u n 为了完成广泛的设备进 行分布式互操作要走的路a 这一节概述了他们的主要贡献。特别是,嵌入式系统上的c o r b a , 如m i n i m a m c o r b a 和j a v a 解决方案,如j 2 m e 。 嵌入式c o r b a 尽管在完成可被应用于嵌入式系统c o r b a 标准的道路上有很多的奇迹但是还有很多 努力为了在金融业和通讯业应用c o r b a 以作为在异构系统间通讯的方法。 一些将c o r b a 应用于嵌入式系统的方法: 第1 3 页共4 7 页 两北t 业大学硕士论文 第二章移动中间件研究 _ 通讯:作为中间件c o r b a 的支持网络中的点对点通讯以及任何作为客户端、服务 器或两者都是的节点通讯。客户端仅仅调用对象,服务器负责实现对象并通过o r b 让网络其余的部分都知道有这些对象。通讯发生在底层网络协议( 用得最多的底 层网络协议t c p i p ) 之上。这个方面仅有的5 日制就是网络协议必须和o r b 协议的 实现一致。例如,i l o p 实现了o r b 协议,它允许c o r b a 应用在网络上通信。 为因特网而设计:它的目标是冈特网的时候,就无法知道何时、何地和多少的问 题。采用c o r b a 的好处也通过因特网被带给了嵌入式系统。 o 应用监控:检查为了配置能使人们可以理解嵌入式设备产生的信息。通常c o r b a 接口能够让那些信息通过网络或w w w 访问得到。 。维护:维护可以通过网络连接、软件和硬件远程进行,比如重新配置。 。网络应用处理:运行c o r b a 的嵌入式系统可以被用作网络应用程序的处理节点。 。分布式处理:因为c o r b a 是一种使分布式应用开发成为可能的标准结构,所以很 多嵌入式系统能够通过网络通讯实现分布嵌入式系统应用。因此,嵌入式应用能够 继承分布式系统的那些诸如透明、网络处理、可量测性等等的特征。 最小尺寸 人们已经作了很多工作使c o r b a 能够在小设备中运行。o m g 专门为轻量c o r b a 设计的标 准最近已经出版并被命名为m i n i m u m c o r b a 。m i n i m u m c o r b a 规范描述了一个削减过的完整 c o r b a 规范的配置。它主要是去除了c o r b a 应用编程接口中更适应企业系统的部分组件。 从c o r b a 规范到m i n i m u m c o r b a 规范去除的最重要的方面是动态问题,例如接口动态调 用( d i i ) ,动态骨架接口( d s i ) 和接口仓库特征。o m g 将为嵌入式c o r b a 环境定义一个更 小的存储f o o t p r i n g 。然而,那些极端的轻量c o r b a 实现作为一个完全配置c o r b a 的设备 的对方活动时会有一些问题。o m g 决定如果去除较多功能的时候,c o r b a 保证适应c o r b a 设备的普通动作的能力将降低。 除此之外,还有一些c o r b a 涉及到嵌入式实时问题计划。负责t a o 项目的组已经广泛 的分析了这个问题。他们在关于由i d l 编译器创建的桩( s t u b ) 和骨架的大小方面做出了 贡献。 嵌入式j a v a 为了找出将分布式j a v a 环境放入嵌入式设备可能的解决方案,就必须理解关于t a v a 技术的重要问题。图2 7 详细列出了相关结构: 第1 4 页共4 7 页 西北t 业大学硕 娩文 第二章移动中间件研究 屏幕 远程 移动 框架框架 电话 方法 p d a 信息 智能卡 框架 调用 框架 设备 框架 框架 框架 ( m i d p ) j a v a2j a v a2 连接设备配置连接有限设备配置 j a v a 卡 企业版标准版 ( c d c )( c l d c ) 运行时 环境 ( j 2 e e )( j 2 s e ) j a v a2 袖珍版( j 2 m e ) ( j c r e ) j a v ah o t s p o t用户虚拟机 k v m 卡虚拟机 虚拟机( c v m )( j c v m ) ! 粤曼7 拍鼍霉警台的舨奉誊璺塑黧! 框絮:;墨堇;i 配置 版本 虚拟机 首先,必须认识到在j a v a 虚拟机上运行的设备有很多的操作系统和不同的风格。特别 是k v m 是为内存有限的小设备特别设计的虚拟机。这种命名反映出它的大小在几十k 左右, k v m 很适合1 6 3 2 位的r i s c c i s c 微处理器控制器,这些设备可能一共只有1 6 0 k 的可 用内存一1 2 8 k 用来存放实际的虚拟机和库本身。 如图所示, j a v a 2 平台有不同的版本。j 2 e e 、j 2 s e 和j 2 m e 是最流行的。一个版本定 义了可用的j a v aa p i 类。j 2 s e 是j 2 e e 的子集,j 2 m e 是j 2 s e 的子集。袖珍版可能会有 些特殊的类。 版本之上的层叫配置( c o n f i g u r a t i o n ) 。一个配置限制了一个设备必须为这个配置支 持的a p i 。j 2 m e 有两个不同配置:连接设备配置( c d c ) 和连接有限设备配置( c l d c ) 。 在配置层之上是框架( p r o f i l e ) 。一个框架包含另外的类,设备的些特殊类会用他 们。例如,为蜂窝电话设计的框架是m i d p 。尽管m i d p 在c l d cz i ,但是因为缺乏r m i 框 架和串行化,所以不可能在c l d c 之上执行j i n i 。为了填补这一空白的解决方案是探索代 理技术,这些将在j i n i 代理结构部分解释。 jv m 研究在有限的设备上实现分布式环境的最明显的缺陷是j w 重量进程。为了支持完整 的中间件,需要一些额外的资源,比如说从网络连接动态装载类,串行化和r b l i 。不同的 j v m 代表连通性的不同解决方案,例如: 非j v m ,也就是j i n i 连接应该用c c + + 或其他的非j a v a 语言编写 第1 5 页共4 7 页 西北工业大学硕士论文 第二章移动中间件研究 k v m c l d c 。这个虚拟机既不包含动态类加载,也不包括串行化。 c v m 。在这个选项里,可能运行完整的j a v a 2 ,例如支持j i n i 。 其他j v m 方案。如i b m 的j 9 虚拟机环境等。 还有一种可能的解决方案是在芯片上实现和执行j a v a 字节码,如s u n 开发的p i e o j a v a 和z u e o t t o 开发的x p r e s s o 。 2 5 3 设备代理结构 为了克服在十分有限的设备( 没有j a v a 分布式方案能够进去) 嵌入j a v a 框架的困难, s u n 建议了j i n i 设备结构规范。 使这个想法实现的核心技术是通过接口和支持接口的代理的实现定义一些服务,接口 将被上载进服务提供商提供的j i m 查找服务。也就是说,代理将在设备支持的网络环境之 上为设备工作。 f 面介绍了j i n i 结构元素和它的网络机制。然后解释j i m 代理项目以至丁提供它的 概念和工作结构。 j i n i j i n i 是一个“定义了一个小的、允许服务和客户端构建一个可以随着时间容易改变的 灵活的分布式系统的惯例的简单集合的系统”。他和s u n 吹捧的构建分布式系统的f 一代技 术一致。 j i n i 专为不断改变的网络而设计。另外,j i n i 技术允许任何具有处理器、存储器和网 络连接的设备为其他的网络上的实体或者使用服务提供服务。这些设备不仅可以是台式机, 而且可以是特殊的硬件,如蜂窝电话和电视等由微处理器控制的设备。 j i n i 一个有趣的特征是他向网络提供的动态底层结构。它允许网络组件在使用时升级 和更新,而不需要关闭网络或单独更新组件。网络的使用者也需要添加或删除成员组件, 而不会对网络社区中的其他成员组件导致讨厌的结果。 j i n i 依赖于j a v a 的r m l 分布式通讯底层结构。j i n i 和i n i 提供了一套能够创建可以 动态注册自己并且j i n i 社区都可以用到的分布式服务的接口在这之后,j i m 网络客户端 能动态发现并且使用这些服务。实际上,那些有网络上的嵌入式服务提供的服务是s u n 目 标之一。 2 6 总结 在这一章首先介绍了无线数据应用平台。然后又详细介绍了b r e w ( 无线二进制运行环 境,b i n a r yr u n t i m ee n v i r o n m e n to fw i r e l e s s ) 的各种情况,接下来介绍了c o r b a ( 公 第1 6 页共4 7

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论