(计算机应用技术专业论文)基于corba的分布式实时中间件的qos研究.pdf_第1页
(计算机应用技术专业论文)基于corba的分布式实时中间件的qos研究.pdf_第2页
(计算机应用技术专业论文)基于corba的分布式实时中间件的qos研究.pdf_第3页
(计算机应用技术专业论文)基于corba的分布式实时中间件的qos研究.pdf_第4页
(计算机应用技术专业论文)基于corba的分布式实时中间件的qos研究.pdf_第5页
已阅读5页,还剩86页未读 继续免费阅读

(计算机应用技术专业论文)基于corba的分布式实时中间件的qos研究.pdf.pdf 免费下载

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

文档简介

摘要网络和计算机技术的飞速发展,促使分布式系统获得了广泛的应用。而通用对象请求代理体系结构( c 蛐m o no b j e c tr e q u e s tb m k e ra r c h i t c c t u r c ,c 0 r b a ) ,作为分布式计算与面向对象技术完美结合的典范,在大型分布式异构软件体系领域中得到了越来越广泛的重视和应用,具有广泛的发展前景。并且c o r b a 在应用中也不断完善与发展着。在分布式系统的实际应用中,如:航空飞彳亍系统、电信系统、医疗系统、实时股票交易系统、制造过程控制系统等,我们追求系统的实时性、可确定性、可靠性和多任务处理能力。而这些性能在很大程度上取决于系统的任务调度机制,因此,需要提供具备优先级别的调度,可预测的反应时间等。此外,还要在应用级别提供对系统资源,如c p u ,内存和网络资源等的控制能力,以满足系统严格、强烈的服务质量( q u a l i t yo fs e r v i c c ,0 0 s ) 需求。但传统的c o r b a 并不能满足实时及性能需求,于是实时( r e a l ,t i m e ,r t ) c o r b a 应运而生。1 9 9 8 年,r t c o r b a规范正式被纳入对象管理组织o m g ( o 呖e c tm a n a g c m e n tg r o u p o m g )标准。r t c o r b a 是对传统c o r b a 的有选择的扩展,提供了标准的接口,解决如何将有限的计算资源和网络资源分配给实时任务,从而保证实时应用中端到端行为的可预测性。本文以实时性分析尤其是分布式系统中的实时性分析为着眼点,结合c 0 r b a 规范以及r t c o r b a 规范,探讨了一系列增强实时中间件端到端q o s 特性的策略和机制,实现了一个高效、可靠的优先级映射算法以及实时调度框架。在把这些致力于满足实时中间件q o s 需求的方案策略应用到一个o r b 原型之后,文中将给出一个r 1 o r b a 的简单摘要应用模型,用以实现文中加强实时特性的0 r b 原型和开源t a 0 f r h ek 冕o r 劭的对比性能测试。通过对实验结果进行分析,可以看到加强了实时特性的0 r b 原型的实时性能要优于t a 0 。关键字:实时c o r b a ,服务质量,分布式实时系统,动态调度a b s t r a c tw i t hl h ed c v e l o p m e n to fn e m o r ka n dc o m p u i e rt e c h n o l o g y ,t h ed i s t r i b u t e ds y s t e mh a sb e e n 柚di sn o wb e j n gu s c dq u i t ew i d e ly a sap e r f e c ta i l dt y p i c a lc o m b i n a t i o no fd i s 仃i b u t e dc o m p u t i d ga n do b j e c to f i e n t e dt e c h n o l o g y ,c o m m o no b j e c lr e q u e s tb m k e fa r c l l i t e c t u r c ( c 0 r b a ) i sb e i n gp a i di n o r ca n dm o r ca t t e n l i o nt oa n da p p l i e dm u c hm o r ee x t e n s 主v e ly w i t hp f a c t i c c ,c o r b at e c h n o l o 野i sb e 啪i gr j p ea n di t h a saf i n ep r o s p c c i h ir c a l i t y s o m el a r g e s c a l em i s s i o n c f i t i c a ld i s t r i b u t e ds y s t e m s ,s u c ha sa e r o s p a c ea i l da v i a t i o ns y s t e m s ,t d c c o m m u n i c a t i o n s ,m e d i c a ls y s t e m s ,r e a lt i m es t oc :ke x c h 明g es y s t e m ,a n dm a i l u f a c t u r i i i gp r o c c s sc o n t f o ls y s t e m s ,a r cc h a r a c t e r i z e db yt i m e l i n e s s ,d c t e n n i n i s t i ca b 诅i t y ,d 印e n d a b i l i t y a n dt h ea b i l i t yl op r o c e s sm u i l i t a s k s t ba 粤e a le x t e n t ,l h e s ef e a t u r c sa r e 印o nt h es y s t e m ss c h c d u i i n gm e c h a n i s m s ,a n dt h e r e f b 化t h ei n v o c a t i o n sw j t hd i 仃e r e n tp r i o r i t i e sa i i dp f e d i c t a b l cf e a c t i o nt i m ea r er e q u i r e d f u r t i l e r n l o f e ,s y s t e mr c s o u r c e s ( c p u ,m e m o 啦a n dn e t 、v o r kr e s o u f c e ) n e e dt ob ec o n t r o l l e da ta p p l i c a t i o nl e v e l t o 强t i s f yt h es 埘c t 卸ds 埘n g e n tq u a l i t yo fs e r v i c e ( q o s ) t h et r a d i t i o n a lc o r b ac o u l dn o lp f o v i d ee n o u 曲t i m e l i n e s sa n dp 渤册卸c e ,a c 。o r d i n 硝ym e 划t i m ec o r b a ( r 1 c o r b a ) e r ab e g a n i n1 9 9 8 ,r t c o l 国as p e c i f i c a t i o nb e c 锄eaf o n a lm e m b e ro fo b i c c tm a n a g c m e n tg m u p ( 0 m g ) r t c o r b a ,w h i c hi sa i lo p l i o n a le x t e n s i o nt ot h et m d i t 主o n a lc o r b d e f i n e ss t a n d a r di n t e r f a c e sa ds 0 1 v e sh o wt 0a l l o c a t et h el i m i t e dc o m p u t i n gr e s 0 u r c e 卸dn e t w o r kf e s o u r c et of e a lt i m et a s k st 0e 璐u r ct h ee n d t o e n dp r e d i c t a b i l “y a tf i r s t ,t h i sp a p e rd e s c r i b e st h ef h t u r e sa i i df c q u i r e l n e n t so fr e a i t i m es y s t e m ,e s p e c i a l l yt h ed i s 晡b u t e dr c a lt i m es y s t e m ,a n da n a l y z e sc o r b as p e c i f i c a t i o na n dr t c o r b as p e c i 蠡c a t i o nr e s p e c t i v e l y t h e ni td i s c u s s e sas e r i e so fp r i n c i p l c sa l l dm e c h a l l i s m sa i l i l i n ga tm e e t i n gt h eq o sr e q u i r e m e t so fr e a l - t i m em i d d l e w a r ee n d t o e n d a l s o ,a i le f f i d e n ta n dd e p e n d a b l ep r i o r j t ym a p p i n ga r i t h l 吐e t j ca n dar e a i - t i m es c h e d u l j n gs c h e m ea b s l r a c ta r cr i i 卫c di nt h i st t l e s i s a f t c ra p p l y i l l gt h o s em e t h o d sa n dm c c h a n i s m st oa no r bp r o t o t y p e ,as i m p l er t c o r b aa p p l i c a t i o nm o d e li sf a i s e du pf o fc o m p a m t i v et e s tw 油o p e n r e s o u i c c d1 a 0 ( 1 ka c e0 r b ) b yr e s e a 幽gt h et e s t i l l gd a t a ,w ew i l ls c et h a tt h er e a l - t i m ec a p a b i l i t yo ft h i sa r t i d e ,s 蛐h a i l c e do r bp m t o t y p ei sb c t t e rt h 柚1 a o ,s k e yw o r d s :r e a i - h m ec o 砌嗡q l l a l n yo fs e r v i c e d i s t r i b u t e dr e a i - n 眦s y s t e m ,d y 岫m i cs c h e d u 肚n g独创性声明本人声明,所呈交的学位论文是我个人在导师指导下进行的研究工作及取得的研究成果。尽本人所知,除了文中特别加以标注和致谢的地方外,论文中不包含其他人已经发表或撰写过的研究成果,也不包含为获得北京交通大学或其他教学机构的学位或证书而使用过的材料。与我一起工作的同志对本研究所做的任何贡献已在论文中作了明确的说明并表示了谢意。本人签名:羔避日期:2 盘年土月丛日关于论文使用授权的说明本人完全了解北京交通大学有关保留、使用学位论文的规定,即:学校有权保留送交论文的复印件,允许论文被查阅和借阅;学校可以公布论文的全部或部分内容,可以采用影印、缩印或其他复制手段保存论文。论文中所有创新和成果归北京交通大学计算机与信息技术学院所有。未经许可,任何单位和个人不得拷贝。版权所有,违者必究。本人签名:数日期:旦芝哗月盟日绪论1 绪论1 1 研究背景技术发展的终极目标是服务于人,计算机技术的发展也不例外。从1 9 4 6 年第一台计算机诞生到如今,计算机技术的应用已经深入到人类生活的各个领域。本文将把目光聚焦于分布式实时应用这一领域,这就使得异构性、实时性和动态性成为研究和解决问题的关键词。分布处理技术与面向对象技术结合,产生了分布对象计算( d i s t 曲u t e d o b j e c t c o m p u t i n 舀d o c ) 技术。中f 司件( m i d d l e w a r e ) 的出现降低了硬件、操作系统、应用软件之间的耦合程度。在分布式实时系统中使用中间件技术减少了三者之间的相互依赖关系,提高了互操作能力。目前分布对象计算技术和中间件的研究和应用已成为软件行业的热点,主流的有c o r b a 、d c o m 、r m i 等三大分布对象计算技术。c o r b a 是o m g 组织为解决不同硬件产品之间互操作问题而提出的一种解决方案。自1 9 9 1 年0 m g 确定了c o r 王;a 1 1 版本以来,c 0 r b a技术不断地吸收各种新思想,不断加以优化,目前已经推出c 0 r b a 3 0规范。由于o m g 组织是出众多著名的厂商共同组成,因此具有很好的开放性,得到了业界的广泛支持,并推出了相应的产品,如i o n a 公司的o r b i x 系列,h p r i s e 公司的v i s i b r o k e r 等。c o r b a 具有良好的开放性和跨平台特性,可有效降低开发和集成分布式应用系统的难度,提高软件质量和开发效率,并降低开发和维护成本等诸多优点。这就注定了更多的分布应用领域选择c o r b a 中间件。但是,不同的领域有其特定的需求,比如在工业控制、电信、航空北京交通大学硕士学位论文飞行、实时股票交易的应用中,要求响应的及时性、准确性。这就需要分布式对象计算平台能够具备实时能力。在需求的驱动下,实时( r e a l t i m e ,r c o 褂认应运而生。r t c o r b a 对c o r b a 进行了有选择的扩展,在发挥c o r b a 可重用性、可移植性和可互操作性优势的基础上,r t 0 r 】j a 采用优先级机制、线程池机制和全局调度服务等增强了通用c o r b a 的实时特性,为实时应用提供了对象调用操作的端到端的可预测性,从而为应用提供了强大的q o s 保证。1 2 研究现状目前,在实时中间件研究上最为活跃的是华盛顿大学( w a s h i n g t o nu n i 靶f s i 哆) 和加利福尼亚大学( u n i v e f s i t yo fc a l 洳趣i a ) i r v i n e 分校,他们研发的t a o 遵循c o r b a 标准。之前以罗德岛大学,即( u n i v e r s i t yo fr h o d eb l a n d ) 为代表的mr i _ r e 、n r a d o 妇v yr e s c 砌a n dd c v e l o p m e n t )和t r ip _ a c i 丘c 的早期实时中间件研究,主要针对实际的分布实时应用,扩展o m g 组织的c o r b a 的实时能力,为实时中间件的发展作出了重大贡献。在国内,国防科技大学、北京大学、北航、中科院软件所、东南大学等大学和院所很早就投入到中间件技术的研究中,并形成了一系列的成果。在国家发改委、信息产业部电子发展基余和国家科技部8 6 3计划和政府其他基金资助下,通过各项目研究单位和国内骨干软件企业多年的不懈努力,国内在基础中间件领域已经形成丰富的技术积累,并向实时中间件领域渗透,取得了一定的研究成果,典型代表就是国防科技大学c o r b r 1 c o r b a 研究成果s t a r b u s 。上述实时中间件的研究都是基于分布对象技术进行的,分布对象技术也是自上世纪九十年代以来分布计算领域的主流技术,因此都选择了它作为实时中间件的研究基础。本文对实时中间件的q o s 的研究是以r t c o r b a 规范为基础的。实时中间件规范的标准化进程也是令人瞩目的。经过长时间的讨论与修改,在c o r m 址2 规范和c o r b a 消息规范的基础上,o m g 组织于1 9 9 9 年3 月发布了r t c o r b a l 0 规范,接着又在2 0 0 2 年8 月发布了它的改进版本:r t c o r b a l 1 规范,它们采用了基于固定优先级的静态调度方法。而在2 0 0 3 年1 1 月推出的r t c o r b a 2 o 规范采用的是基于动态优先级的调度方法,它与翮o r b a l o 讲述的是不同的内容,而不是版本升级的关系。当前的实时中间件的研究主要涉及实时通信的集成问题,实时中间件的体系结构问题,基于实时中间件的实时可调度性问题或者框架以及针对领域的一些实时服务。在资源控制方法上,实时中间件的研究普遍以请求为粒度,在执行控制上则普遍以请求执行的运行时环境线程为基本控制单位。在实对中间件的体系结构设计原则上,c h o r u s c o o l 和1 1 a o 的研究最为深入。它们提出了资源管理策略和资源管理机制相独立,以及应用要能够完全控制系统资源的体系结构的设计原则。在具体实现上,c h o r u s ,c o o l 使用户可以直接控制网络资源( 表现为连接的建立) ,提出灵活的绑定体系结构,使用了构件化的体系结构思想,提出实时中间件应尽可能地为应用提供定制能力,以更好的满足实时应用适应环境多变的需求。1 1 a o 则秉承c o r b a 的控制模式,并且运用模式方法( 如:反应器( r e a c t o r ) 模式,领导随从( k a d e 胛b l l o w e r ) 体系结构设计模式等)提供了多种配置策略。在处理异构平台的实时差异上,u r i 和1 a 0 都使用了优先级映射的方法,这也是符合r 1 o r b a 规范的定义。但是对优先级映射的性质f 比如序关系的保持,全局优先级和本地优先级级别的差异等1 则没有系统的阐述。c h o r u s c 0 0 l 则直接依赖于实时操作系统的实时能力。因此,它在特定的实时操作系统上能够提供最佳的北京交通大学硕士学位论文资源控制粒度和控制效果,但是却很难适用于其它的平台。1 3 本文的研究内容结合分布式实时应用对实时中间件的功能需求,基于分布对象技术和c o r b a ,r t c o r b a 规范,本文主要研究如下内容:1 根据实时系统和端到端系统的特点,对分布式系统的实时性进行全面分析,进一步研究分布式实时性的设计原则及分布式实时系统的实现方案。2 研究基于优先级的i r r c o r b a 中间件的体系结构及其关键技术。并对r t c o r b a 的关键技术一优先级映射和调度框架进行深入研究。3 研究在r t c o r b a 的实现中,增强实时性能的多种策略和机制,并将这些机制应用于一个实时o r b 原型,之后进行实时性能的评测。本文的实时中间件均指关注分布式实时交互式控制应用的实时中间件,在研究中以兼容r 1 o r b a 的实时中间件为蓝本,但并不仅仅局限于r t c o r b a 规范,更强调广泛意义上的实时中间件的q o s 研究。1 4 本文的组织本文按照如下的思路进行组织:第一章简要概述应用对实时中间件的需求,实时中间件的研究背景和研究现状。第二章根据实时系统及端到端系统的特点,指出一个具有全局实时性的分布式系统其实时要求应该体现在两个大方面:网络通信的实时性和端系统的实时性。经过分析研究,给出分布式实时系统实时性的设计原则。绪论第三章,介绍c 0 r b a 计算模型和r 1 【0 r b a 扩展,包括优先级模型、线程池模型、对处理器资源和内存资源的控制和管理及连接管理等。第四章,结合r t c o r b a l o 2 0 规范详细阐述在基于r t c o r b a中间件的实现中如何加强分布式实时系统的q o s 特性,实现端到端行为的可预测性。这些加强实时q o s 特性的机制包括:通过对连接资源的管理干预o r b 间通信、管理处理器资源和内存资源、重点介绍了具有高效可靠优先级映射算法和动态调度框架。第五章,在现有的开源砌r c o r b a o r b 实现t a 0 的基础上增加或改进加强实时q o s 特性的策略和机制,之后给出一个r t c o r b a的简单应用模型,对其在t a o 与加强实时特性之后中间件平台a d r 1 0 r b 上进行实时性能对比测试。北京交通大学硕士学位论文2 分布式系统的实时性分析分布式系统技术可以方便地构建基于网络的各种应用系统,有效地协调了各节点的任务,大大提高了应用系统中资源的利用率,并极大提高了集成效率。因此,其应用领域越来越广泛。当分布式系统应用到工业过程控制、电信运营管理系统、航空飞行系统、核反应控制系统等关键领域时,传统的强调功能的分布式技术已不能满足需求,而是更突出强调任务执行的实时性。这就使得我们对分布式系统中的实时性进行探讨成为必要。本章首先阐述实时的相关概念,然后结合分布式系统的特点及其对实时行为的影响,指出目前分布式实时系统存在的问题。最后,给出分布式实时系统的设计原则和实现方案。2 1 实时系统的概念实时系统”1 是指能够在确定的时间内执行计算或处理功能并对外部的异步事件作出响应的计算机系统。在端到端系统中,两个端系统之间还必须在限定的时间内完成消息的发送和接收。“确定时问”是实时系统最根本的要求,系统的正确性不仅依赖于计算的逻辑结果,更取决于操作执行的先后顺序与所需的时问。因此,实时计算研究的核心问题是计算活动的时间可预测性( p r e d i c t a b i l i t y ) 或者时间确定性( d e t e r i l l i n i s m ) 。对于实时系统,有几个概念需要加以澄清。首先应认识到,“实时”和“快速”是两个不同的概念。一个计算机系统处理速度的快慢,主要分布式系统的实时性分析取决于硬件系统的设计,尤其是所采用的处理器的性能。而对一个硬件结构已确定的计算机系统,它的实时性能完全取决于采用什么样的操作系统。例如,一个计算机的处理速度无论怎样提高,但如果采用通用分时u n 操作系统,就毫无实时性可言。事实上,快速通常是一个必要条件,但不是充分条件。实时系统需要具有确定的时限要求,而快速并不能对这种要求作出保证。其次,实时系统总是和“多任务”联系在一起。如果一个计算机系统只运行一个任务,则它永远是在实时地执行着这个任务,这就没有讨论的必要了。2 2 实时的模式实时模式分为硬实时( h a r dr e a l t i m e ) 和软实时( s o f tr e a l t i m e ) 。硬实时是指系统中所有的时间约束必须被严格地保证,否则将导致灾难性的后果。软实时在截止期# 艮( d e a d l i n e ) 被错过的情况下,只造成系统性能下降,而不会带来灾难性的后果。可以从系统的可预测度出发来理解硬实时和软实时。系统的最高可预测度是确定性,即系统的属性是预先可知的。系统的最差可预测度是预先不知道任何属性,即是随机的。硬实时任务通常必须是确定性的,即所有任务的时间特性都是确定无疑的。软实时就是介于随机和确定之间。比如,一个软实时系统的可预测性标准是基于任务的重要性,尽可能多地满足任务的时闻约束要求。例如,假设某系统中同时有1 0 个任务在运行,记为,f ,。,它们的重要性依次降低,对于软实时系统,如果任务f 。( 2 s 小s 1 0 ) 满足了时间约束要求,那么要求任务,f :,一,也满足时间约束要求。这同非实时系统的随机性还是有很大的区别。北京交通大学硕士学位论文本文的研究主要针对软实时。2 3 实时的时限表达方式在多数的实时系统中都规定了下述时问限制的一个子集:1 “最早的开始时间”规定了一个绝对的时间,在此之前任务不能够丌始。任务必需等到规定的时间才可以开始。2 “最迟的开始时间”规定了一个绝对的时间,在此之前任务必需开始。如果在规定的时间之前任务还没有开始,一个错误将产生。最迟开始时间对于在错误确切发生前,检测潜在的不能满足实时要求的调度和可能的超过截止期的进程是非常有用的。3 “截止期( d e a d l j n c ) ”规定了一个绝对的时间,在此之前任务必需完成。通常,时间限制都是以周期性执行限制的方式来表示的。在每隔一定的时间间隔,一个周期性限制为一个任务的重复请求规定了最早的开始时间和截止期。一个任务每次的请求都可以在它的周期中的任意时刻开始执行,但必需在它的周期结束前完成任务。2 4 实时调度实时任务的调度“1 ,就是当系统有多个就绪任务时,如何确定由哪一个任务实际占有c p u 。它牵涉到调度的策略和调度的机制问题。实时操作系统提供实现某些调度策略的算法,并把调度策略参数化,让用户在用户的实时任务中选择所需的调度策略。衡量实时系统调度能力的指标包括:实时响应能力、系统吞吐量、抖动、实时系统避免任务在内存与磁盘的交换问题的能力等。实时调度策略可以是动态的或静态的。动态调度策略在运行时作出分布式系统的实时性分析调度决定,而静态调度策略贝哇在系统启动前完成所有的调度决策。在实时计算理论和实践中常用的实时调度策略有如下几种:1 固定优先级调度( f i x 耐p f i o r i t ys c h e d u l i n 曲:固定优先级调度策略提供了抢先调度( n e e m p l i v es c h e d u l i n g ) 和根据基于简单数字的优先级进行线程分派。当一个更高优先级的线程被创建,并且处于就绪状态时,它将抢先正在执行的优先级较低的线程,并立即执行。常用于该调度策略的分析技术是速率单调分析法( r a t em o n o t o n i ca n a l y s i s ,r m a ) 、先进先出( f j r s thf i r s to i i t ,f 羽分析法、单调时限( m o n o t o n i c雨m e - 1 i m i t ,m 1 u 等。r m a 分析法针对那些响应和处理周期性事件的实时任务。它事先为每个这样的任务分配一个与事件频率成正比的优先级。运行时,调度程序总是调度优先级最高的就绪任务,必要时抢占当前正在运行的任务。通常,这种调度策略用于线程特性与运行环境在系统运行前已知的情况,即速率单调调度t em o n o t o l l i cs c h e d u l i n g ) 是静态的。然而,在实际应用中线程行为和执行环境特性( 如系统负载) 经常是动态变化的,静态调度策略必然显示出其局限性。2 截止期最早优先( e a r i i e s td e a d l i n ef 饥t ,e d f ) :该调度策略使用线程完成执行的截止期作为判断其可执行性的依据任务执行距离截止期限越近就具有越高的执行权。在一些情况下,任务的截止期在其执行周期中是一个常量,但在另外一些情况下任务截止期可能是变化的( 如任务截止期可能是嵌套的) 。当采用e d f 策略时,需要满足所有任务的截止期要求,在这种情况下常常以静态方式实施该策略。在把其它因素( 如系统负载等) 与截止期一同考虑后,可以产生“类e d f ”更优化的调度策略,这种调度策略尽可能满足所有线程截止期的要求,当系统负载过大时,调度策略会延缓负载或分散负载。当采用e d f 策略用勺北京交通大学硕士学位论文于最小化最大延缓度时( 如在软实时应用中) ,既可以静态也可以动态实施该策略。可达截止期最早优先( a t t a i n a b l ee a r l i e s td c a d l i n ef i r s t ,a e d f ) :是对e d f 的改进,随时间的流逝,在调度时超过截止期的线程将不予调度。3 最小裕度优先( k a s tl a x i t yf i r s t ,u d :计算任务执行的富裕时间,简称裕度( 1 a ) 【i t y ) 。裕度= 截止期一当前时问一估计剩余运行时间u 正策略以裕度的大小作为可调度性的依据,裕度越小,就具有越高的执行权。就绪队列上的任务,其裕度随着时间的推移而减少,从而使它们的优先权动态地发生变化。u j 策略常用于线程的执行时间需求变化比较显著的环境。在这种环境中,具有较长执行时间的线程的优先级让给具有更小裕度的就绪线程。u j 策略规定,具有负裕度的线程将不予执行。可见,u j 是一个动态调度策略。u j 既可用于满足截止期要求( 如硬实时应用) ,也可用于最小化最大延缓度( 如软实时应用) 。4 最大化应计效用( m a x i m i z ca c c 川e du t i l i t y ,m a u ) ”:该策略采用一个效用函数关联每个线程,并建立每个线程的调度。每个函数提供一个线程执行完成时间到效用值的映射。比如,当前时间非常接近某个线程的截止期,且该线程完全可以在截止期之前完成,那么此线程可能具有最大的效用值;如果线程执行完成时间在截止期之前较早的时间点,那么此线程就具有较低的效用值。m a u 策略追求最大的应计效用。因此,m a u 适用于动态调度系统。分布式系统的实时性分析2 5 分布式系统中的实时研究传统的实时系统通常是专用的系统,系统所支撑的应用可以预先定制,并且通过全局性分析来考察其实时性是否能够得到满足,并予以保证。然而,分布式系统中的实时性应用却带来了许多新的问题。2 5 1 分布式系统对实时行为的影响分布式系统固有的复杂性使得在此类系统中确保实时特性具有相当的难度,表现在如下方面:1 在分布式系统中,系统内部的各种资源是自治的,每个处理器都不了解其他处理器内部的状态信息。因此,在分布式系统中,很难获得完整的系统状态信息。在另一方面,分布式系统即使希望收集各部件的状态信息,由于信息在网络上传输,需要一定的时间,所收到的信息是经过延迟的信息,这就不能反映实时系统当前的确切状态。2 在分布式系统中,各处理器是自治的,严格说来,不应存在层次关系或主从关系,因而增加了整个系统控制机构的复杂性。由于各处理器是自治的,同步和异步的机制变得相当复杂,增加了实时响应的困难。3 网络通信是分布式实时系统的一个重要组成部分。而通信需要额外的开销,通信开销太大,将严重影响实时系统的性能。4 分布式处理本身具有很多不确定性。5 为分布式系统所提出的许多算法还处于实验室阶段,离实用阶段还有很大的距离。总之,在分布式系统环境中,由于节点分散、资源共享、系统不断北京交通大学硕士学位论文发生变化、管理者通常不在现场等原因,各节点之问难于协调,缺乏统一的全局状态,无法通过全局分析来保证整个系统的实时性。因此,在分布式系统环境中,需要引入新的策略和机制来保证全局实时性。2 。5 2 分布式系统环境中的实时性研究一个实时的分布式系统环境不仅要考虑到功能的正确性,还要考虑到结果产生的及时性。为了能更好地分析,在实现整个系统的实时性时应着重关注两个问题:网络通信的实时性和端系统的实时性。可见,分布式系统环境中的实时服务应包括两个方面:实时通信服务和实时端系统服务。1 实时通信服务:实时应用需要具有严格性能保证的实时通信服务,对时延、时延抖动、吞吐率和包丢失率有严格的限制。传统的实时应用通过在实时专线( 如b i t b u s 、c a n 、a r c n e t 等) 上运行,以保证通信的实时性。而当前普遍采用的网络结构和协议则主要是支持尽力而为的服务,对实时应用,特别是硬实时应用的支持难以满足。随着高速网络的迅速发展,网络多媒体的应用要求,对网络o o s 的研究日益深入,特别是网络交换技术的应用,增强了通信的实时能力。当前有许多实时应用使用的是a r m ( a s y n c h r o u st r 锄s f c rm o d e ,异步传输模式) ,它将应用的实时要求映射为删的q o s ,使实时性得到较好的保证。2 实时端系统服务:端系统的实时性包括了操作系统的实时性和应用的实时性。实时操作系统的功能包括:实时任务的管理、内存储器的管理、外部设备的管理、文件系统的管理等。对于非专用的实时应用系统( 如视频会议) ,可以选择具有部分实时特性的通用操作系统,如s o l a r i s ,w i n d o w s n t 等。对于硬实时系统,则应当选择专用的实时操作系统。分布式系统的实时性分析2 6 分布式实时系统的实现方案及设计原则在前文已经分析分布式系统特性及其对实时性能影响的基础上,本节将从融合实时系统技术、开放系统技术和面向对象技术( o b j e c t o r i e n t e d 蛐0 1 0 9 y 0 0 d 的角度,讨论开放的分布式实时系统的实现方案及设计原则。下图2 - 1 所示,形象展示了三项技术的融合。实时系统技术o o 技术实时o s对象模型实时q o so o 编程实时调度o o 语言实时通信对象管理多媒体c + 十2 6 1 三种技术的结合r 分布式实时系统【图2 1 三种技术结合开放分布式系统的复杂性使得实现这类系统的实时性,必须将图2 1 所示三种技术结合起来才行。其中,o o t 作为一种开发和维护大型复杂系统的有效方法,将其融合地应用到开放分布式实时系统的开发中,十分必要。1 0 0 t 在开放系统中的应用利用o o t 来处理复杂的软件系统的思路,在实践中已经得到充分的肯定,并且分布式系统中各个实体的自治性与对象系统中各个对象的相对独立性有着天然的相似。于是利用对象来表示分布式系统中的各个1 3 北京变通大学硕士学位论文实体就成为自然的尝试。在分布式系统中,采用面向对象的封装特性,不仅实现了隐藏对象的数据和实现服务的细节,而且还屏蔽了“系统是分布的”这一特性。分布式透明性是面向对象系统的封装性在分布式环境中的延伸和发展,是分布式对象系统中的封装特性必须包含的内容。只有提供了分布式透明性,分布式系统中的对象机制才能达到传统的对象系统所追求的目标屏蔽实现服务的具体细节。对象引用不仅可以用来标识系统中的一个对象,客户也可以使用它所知道的对象引用与相应的对象建立绑定,从而访问该对象。在分布式系统中,对象可能分布在不同的节点上,需要考虑网络系统、节点地址和对象迁移等问题,简单的内存指针已无法标识对象。于是,为了获得访问的透明性和位置的透明性,分布式对象引入了r p c ( r e m o t ep f o c e d u r ec a l l ,远程过程调用) 、o r b 等机制。这些机制充分体现了分布式技术与面向对象技术的结合。2 0 0 t 在实时系统中的应用面向对象的方法以更为直观的方法分析和构造系统,将整个系统抽象并模型化。它在通用开放系统上的成功是显而易见的,但是要将其应用到实时系统中,还必须解决如下问题:缺乏对时间的描述和处理机制;性能和可预测方面的瓶颈;对象调度。3 开放系统技术和实时系统技术的结合开放系统技术和实时系统技术是本文关注的重点。c o r r a 3 o ,r 1 o r b a l 0 及r t c o r b a 2 0 规范的推出,有力地支持了开放分布式系统服务于实时应用。分布式系统的实时性分析分布式系统的实时性实现就是要把上述三种技术有机结合起来,在分布式实时环境中引入实时策略和机制。这种结合并不容易,因为系统的开放性与其实时性经常是矛盾的。例如分布式透明性给用户带来极大的方便,但它是基于时间冗余技术实现的。因此,实际应用中存在要考虑在开放性和实时性之间进行权衡的问题。2 6 2 分布式实时系统设计原则分布式实时系统最基本地要满足功能性和适用性两方面的要求。前者指的是该系统所能提供的实时服务,后者指的是它能适应多种不同的用户所需的应用环境。在设计分布式系统的实时性方面应该考虑以下原则:1 能支持实时应用或非实时应用,或两者结合,达到分布式实时系统的全面的功能性。2 分布式系统环境中应该包含基本的实时策略和实时机制,其它的实时服务,如实时调度服务则可作为可配置的服务来提供。这一点在r t c o r 】3 a 系列规范中得到了很好的体现。3 能够适用于各种实时系统和各类应用环境,从传统的实时系统到新兴的网络多媒体服务。4 实现系统的层次性。对用户和应用来说,实时系统应当是透明的,能够屏蔽下层的具体细节。5 便于管理,并提供各种管理功能,以便对实时系统进行安装、监测、优化和重建。6 采用组件的方法对分布式实时系统进行设计和构造,以实现实时服务的可动态配置性。因此,在设计分布式实时系统时最关键的是要采用组化件和层次化1 5 北京交通大学硕士学位论文的设计理念,保证实时系统各基本部件具有足够的通用性,并且应用层所需要的实时服务功能由下层的实时机制来提供,而实时机制的建立又借助于再下一层的基础模块来实现。中间件( m i d d l e w 盯e ) 是一个软件,它允许应用元素通过网络连接进行互操作,屏蔽其下的通信协议、系统结构、操作系统、数据库和其它应用服务。通过中间件,应用系统的对象能达到透明协作的效果。这样的应用系统,具有易于开发、易于维护和升级的特点。因此,在实际实施中,可以在中间件的基础上实现分布式系统的实时性。图2 - 2 给出了一个基于实时中间件的端到端系统的概念模型。整个系统由四个部分组成:实时应用、实时中间件、实时操作系统和实时网络。为了实现系统的全局实时性,每一部分都应当支持必要的实时性。端图2 2 端到端系统概念模型统r 1 【o 】臣队的体系结构3r t c o 船a 的体系结构r t c 0 r b a 在功能上只是传统c o i 国a 的有选择的扩展,必须完全兼容传统c o r b a 的所有功能,并提供相应机制给用户,让用户选择是否使用实时功能,也即阳0 砌l a 应用必须是可配置的。因此,在设计上,r t c o r b a 继续沼用了传统c o 粕a 的整体框架,同时对其进行实时功能的扩展。本章首先介绍c 0 r b a 计算模型和o r b 请求的执行过程,继而介绍了r t c o 吼扩展及其重要特色。3 1 传统c o r b a 体系结构3 1 1c o r b a 计算模型c o r b a 全称是通用对象请求代理体系结构( c o m m 呷o b j e c tr e q u e s tb r o k e ra r c h i t e c t u f e ) ,是由o m 6 组织制定的一个分布对象计算标准,用丁在异构的环境下开发大型分布式应用。o m g 所制定的分布对象计算标准规范包括:o d r b a o p ( i n t e m e tb t e r - o r bp m t o 吲,因特网问o r b 协议) 、对象服务、公共设施和领域接口规范。遵照这些规范开发的分布计算软件环境可以在几乎所有的主流硬件平台和操作系统上运行。现在,c o r b 舢l o p 已成为i n t e m e t 上实现对象互访的搜术标准,同时,c o r b a 的互操作性、平台无关性、程序设计语言独立性等优点使其成为许多公司如0 r a c l e ,n e t s p e ,s u n ,i b m 等进行系统集成的技术基础。图3 1 为c o 砌;a 的体系结构图。其中:对象b i e c l ) :是c 0 r b a 的编程实体,它包含实体、接口和实现,而实现又被称为s e r v t ( 服务对象) 。o b j e c t i d 将一个c o r b a 对象与它的s w a n t 联系起束,且在一个对象适配器( p o a ,p 0 n a b l e0 b j e c ta d a p t e f ) 内是唯一的。服务对象f s e 1 ) :是幽具体编程语言实现的实体,它定义了符合c o r b ai d “i n t e r f a c cd e f i i l i t i o nl 越g l l a g e ,接口定义语言) 的操作。合c o r b ai d u i n t e r f a c cd e f i i l i t i o nl a n g l l a g e ,接口定义语言) 的操作。北京交通大学硕士学位论文s e r v 锄t s 程序可以用多种语言编写,如c ,“+ ,j a v a ,s m a l l t a l k ,a d a 等。客户( c h t ) :是一个程序实体,它通过获得的对象引用能够调用对象的操作,从而完成应用任务。此对象对于c l j e n t 来说可以是远程的,也可以是本地的。0 r b 杨心( o b j e c tr e q u e s tb r o k e ro d r e ,o r bo w e ) :0 r b 提供了一种从a i e n t 到目标对象实现的透明的通信机制。通过降低c l i e n t 与方法调用之间的耦台性,o r b 简化了分布式编程。这使得c l i e m 的请求看起来像是本地调用。当一个c l i e n t 调用一个0 b i e c t 的操作时,0 r b负责传送请求、返回响应。它是通过g i o p ( g l o b a li n t e r 旬r bp r o t o c o l ,全局o r b 问协议) 进行通信的,最常见的是o p 协议( 1 1 0 p 协议是g i o p协议在t c p ,口上的映射1 。l d l 编译器:自动地对o m gi d l 定义的接口进行编译,生成用目标程序设计语言( 如c + + ,j a v a 等1 描述的应用程序。因此,d l 编译器提供了程序设计语言的透明性,同时,m l 编译器自动生成网络接口部分的程序代码,消除网络程序设计错误。l 编译器的使用潜在地减少了客户s t u b s 和服务器s k c k t o n s 之问的不一致性。动态调用接口( d y n a m i ch i v o c a t i o nm t e r f a c e ,d i i ) :允许a i e n t 在运行时动态产生请求,而无须特定的接口的信息。此外,d 还可以用作于延时同步调用和单路调用,避免了a i e m 因等待s e r v 距t 响应而阻塞。对于s e n r e r 来说,不能区分一个请求来自于d i i 还是s 。动态骨架接口( d y n a m i cs k e l e 自i n t e f f a c e ,d s i ) :是s e r v e r 方相对于c l i e n t 方d 的对等部分。d s i 允许o r b 将请求转发给这样的s e n r a n t s ,在编译时不知道这些s e a t s 所实现的i d l 接口。c l i e n t

温馨提示

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

评论

0/150

提交评论