任务可热插拔技术实现分析

任务可热插拔技术实现分析

ID:32194824

大小:2.66 MB

页数:52页

时间:2019-02-01

任务可热插拔技术实现分析_第1页
任务可热插拔技术实现分析_第2页
任务可热插拔技术实现分析_第3页
任务可热插拔技术实现分析_第4页
任务可热插拔技术实现分析_第5页
资源描述:

《任务可热插拔技术实现分析》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、哈尔滨工程大学硕士学位论文和灵活性等,例如一些面向高端应用的磁盘镜像系统都可以提供磁盘的热插拔功能。类比于硬件热插拔技术,软件热插拔技术是指当整个系统仍处于运行的过程当中,对软件程序或程序的一部份进行更换娜。软件热插拔是针对关键任务系统的可用性而提出的。它将完成某任务的应用软件分为若干个相对独立、能完成特定子任务的功能对象,这些功能象简称任务组件。在系统运行中通过对运行环境的监测和诊断,动态地进行任务组件的插入和替换,从而实现系统的可用性和对环境的适应性。软件热插拔技术,加速了整个软件的实施过程,增强了

2、软件的可维护性,加强了软件系统出现问题时的自救能力。软件系统开发和实施都是从零到有,从有到全的一个过程。所有软件功能不可能一步到位。有的软件功能,是一个过渡性功能。随着使用人员水平的提高,新功能模块的出现,某些原来的功能可能不再使用。如果需要系统有一个自然升级过程,则热插拔技术十分有用。软件系统的功能往往比较多,用户的需求又是千变万化的,系统的某一部分随时可能需要升级,系统部分的升级,而不会影响系统的其他部分,也需要热插拔技术。软件热插拔在提高系统性能、可用性、适应性及可维护性等方面有许多潜在的优势。例

3、如,通常系统为了支持多种适应性策略,必须实现所有可供选策略的组件,这无疑增加了系统在性能监测和调试方面的复杂性。而应用任务热插拔,每条策略可作为分离的、独立的组件来实现,并根据需要对其进行动态插入或替换,这种关键点的分离既保证了对运行环境的适应性,大大简化软件的整体结构,也提高了系统的可用性。1.3国内外研究现状传统的任务热插拔技术主要采取基于硬件冗余的解决方法,即在保持当前系统正常运行的前提下,在另外一台机器上加载新的软件系统,然后将系统切换到新机器上。基于硬件冗余的解决方案在保持软件持续服务方面能够

4、达到比较理想的效果,但通常来说,这种方式成本比较大,演化过程耗费的哈尔滨工程大学硕士学位论文时间也较长,且演化是以整个应用软件为粒度,不能很好地适应人们对软件系统的提供不问断服务的期望。目前对软件热插拔技术的研究多数是从软件角度来着手解决问题。软件解决方案的优点在于成本低、操作灵活。1.3.1国外研究现状国外对任务热插拔技术的研究起步较早。北京大学王晓鹏教授从软件热插拔的粒度考虑,将其分成三类:以程序段为粒度的软件热插拔技术,以对象为粒度的软件热插拔技术和以构件为粒度的软件热插拔技术。”。1.以程序段为

5、粒度的软件热插拔技术M触ⅨE.SEGAL等人在文献【12】中提出了一种被称为PODUS(Procedure---OrientedDynamicUpdatingSystem)的面向过程的动态更新系统原型。PODUS通过装载新版本的程序来更新旧的程序,并且将对旧版本程序的调用映射到对新版本程序的调用。马里兰大学的MICHAELHICKS等人用一种类C的语言提供了一种类型安全的动态对代码打补丁方法【131。补丁采用了动态链接的技术。Jangh00nLyu等人在保证程序正常运行以及尽量减少对程序性能的影响的前提

6、下,提出了一种解决方案【141,该方案能够在旧版本进程的地址空间上使新版本程序正确工作。2.以对象为粒度的软件热插拔技术面向对象技术将现实世界对象的状态及行为封装,增强事物的独立性,为热插拔技术的实现提供了便利。动态对象技术将动态链接和动态更新能力相组合,其技术特点包括:(1)f/皂够不涉及源码进行运行时刻配置;(2)能够使用诸如反射、元数据和元对象协议的技术;(3)能在整个系统的运行过程中进行在线升级。因此可以利用动态对象技术解决软件运行时刻更新问题。JonathanAppavoo等人在文献【1】中将

7、任务热插拔技术分成五个步骤:(1)热插拔触发;(2)选择插拔对象;(3)执行热插拔;(4)状态传递;(5)删除旧对象,并在IBM开发的K42操作系统上演示了热插拔功能。Orso,Rao和Harrod提出了一种基于Proxy的运行时刻对JAVA程序进行重新配置方法【151。该方法将每一个在系统运行过程中可以进行替换的功能类进行包装,辅以若干辅助类,包括一个实现功能的类、一个接口类、一个包装类和一个状态类。在4哈尔滨工程大学硕士学位论文系统进行热插拔的过程中,只替换真正实现功能的类,其它的则不变。Feng对

8、Orso等人的方法进行了改进,在文献[161中提出了一种S-Module方法,同时以SNMP3为例实现了该方法。这种方法解决了热插拔过程中的透明性问题以及状态迁移问题。Malabarba在文献【17】中提出一种通过修改JVM(JAVA虚拟机)来实现对JAVA类动态改变的方法。该方法的优点是无需用户对应用程序进行任何修改,由于该方法涉及到对运行是环境的修改,因此需要用户使用特定的JVM,从而影响了JAVA的“一次编写,随处运行”的原则。3.以

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。