学位论文 > 优秀研究生学位论文题录展示

基于DSL的动态更新策略描述与实现

作 者: 张迎春
导 师: 黄林鹏
学 校: 上海交通大学
专 业: 计算机软件与理论
关键词: OSGi 动态更新策略 领域特定语言 管理模块
分类号: TP311.52
类 型: 硕士论文
年 份: 2009年
下 载: 8次
引 用: 0次
阅 读: 论文下载
 

内容摘要


动态更新是指,对运行中的程序(代码和数据),在不中断其运行的前提下,对其进行更新。动态更新策略为动态更新过程中的关键步骤提供必要的信息,并作为这些步骤执行的重要依据。具体来说,动态更新中更新时机确定,更新顺序确定以及状态转换操作等具体操作的实施都需要参考制定好的更新策略,系统根据这些策略来做出决策(例如,更新操作是否可以完成,何时进行更新等等)并采取相应的步骤(按照更新顺序对模块进行更新)。国内外对于动态更新的研究已经开展多年,已经存在大量相关的模型、技术的研究成果。但是目前仍缺少一种描述动态更新策略的模型,同时在现有系统中,对动态更新存在诸多约束,并不能完全反应目前对于动态更新研究的最新进展。在这一背景下,本课题在深入研究OSGi框架的内部工作原理的基础上,定义了一种用于描述OSGi框架中动态更新策略的领域特定语言——upDSL。该语言可以用简便的方法描述出动态更新过程中所需的关键信息,系统可以方便的对其进行解析、验证和控制。使用upDSL对动态更新策略进行描述的优点在于:1.放宽了动态更新对于新旧版本成员类型的约束;2.可以用简洁的方式结构化的描述动态更新策略;3.动态更新所涉及的对象和操作易于描述(相比其它通用语言,领域特定语言的描述更贴近问题域);4.使用upDSL刻画的信息可以方便的在动态更新过程中使用(与软件运行平台结合紧密)。考虑到在可动态更新的环境下,各个软件模块的开发、部署、功能等方面都有很大的差异性以及动态性。因此要制定针对于软件系统整体的动态更新策略显然是不可行的。换句话说,在动态更新的背景下,需要从模块开发者的角度来制定局部于单个模块的更新策略,并且通过软件系统的更新策略管理模块来解析、运用、管理、整合这些局部策略,以此来间接获得适用于系统整体的更新策略。在定义了upDSL之后,本课题在OSGi平台中实现了动态更新策略的管理模块。通过动态更新策略管理模块,系统可以集中化的控制和运用动态更新的策略,实现策略和机制分离,及早发现策略定义(一定情况下还能够解决)问题,尽可能避免各类运行时错误,以此保证动态更新的动态性,以及更新前后系统数据的一致性等。此管理模块主要具有下述功能:1. upDSL程序的解释器:解析upDSL文件,将upDSL语言描述的动态更新策略信息转化为系统内部各个部分所需要的表达形式;2.及早发现可能导致运行时异常的问题;3.产生更新顺序。本课题的上述两个成果为OSGi平台提供了一种动态更新策略刻画以及集中式管理的方案,增强了动态更新的可控性,在保证更新动态性和正确性要求的基础上,放宽了传统对动态更新的约束。

全文目录


摘要  3-5
ABSTRACT  5-9
第一章 导论  9-38
  1.1 软件动态更新及OSGI 框架概述  9
  1.2 前人研究成果综述  9-11
  1.3 本文主要内容及课题创新  11-12
  1.4 OSGI 框架中的更新过程  12-37
    1.4.1 Bundle 的内部表示  12-16
    1.4.2 OSGi 的安全机制  16-24
    1.4.3 OSGi 更新过程分析  24-37
  1.5 本章小结  37-38
第二章 用于刻画动态更新策略的领域特定语言UPDSL  38-46
  2.1 动态更新策略定义  38
  2.2 设计理念  38-39
  2.3 语法规则定义  39-42
    2.3.1 类型转换函数和where 块  40-42
  2.4 示例程序  42-43
  2.5 使用UPDSL 刻画动态更新策略的优点  43-44
  2.6 本章小结  44-46
第三章 动态更新策略管理模块  46-62
  3.1 设计理念  46
  3.2 动态更新策略管理模块功能概述  46-49
    3.2.1 作为upDSL 的解释器.  47-48
    3.2.2 尽早发现运行时异常问题  48
    3.2.3 更新顺序的确定  48-49
  3.3 动态更新策略管理模块的实现  49-57
    3.3.1 updatePolicyManager 包  49-50
    3.3.2 updatePolicy 包.  50-53
    3.3.3 depWalker 包和Utils 包  53-57
    3.3.4 DSLParser 包  57
  3.4 动态更新策略管理模块演示案例  57-61
  3.5 本章小结  61-62
第四章 全文总结  62-65
  4.1 主要结论  62-63
  4.2 研究展望  63-65
参考文献  65-67
攻读硕士学位期间已发表或录用的论文  67-68
攻读硕士学位期间参与的科研项目  68-69
致谢  69-71

相似论文

  1. 基于OSGi的领域内框架扩展方法研究及应用,TP311.5
  2. 基于OSGi技术数据中间件研究及其在数字化校园的应用,TP393.18
  3. 物业管理中数据挖掘技术的应用,TP311.13
  4. 基于OSGi框架的RFID中间件系统的设计与实现,TP311.52
  5. RFID中间件读写器管理模块设计,TP391.44
  6. 网管系统中SOAP北向接口的设计与实现,TN915.07
  7. 基于OSGi的多服务家庭网关研究与设计,TP393.05
  8. 实时操作系统μC/OS-Ⅱ任务调度机制的分析与改进,TP316.2
  9. 基于模块化的中小企业风险管理研究,F276.3
  10. 基于OSGI的发电集团燃料管控系统设计与实现,TP311.52
  11. 基于EAM平台的内蒙电网生产管理系统,TP311.52
  12. 网络教务管理信息系统研究,TP311.52
  13. 报表引擎系统研究开发,TP391.3
  14. 基于OSGi的两阶段动态软件更新,TP311.53
  15. 基于SOA的数字化医院医疗设备集成技术研究,TP311.52
  16. OSGi分布式处理扩展机制的研究与实现,TP338.8
  17. 企业全面风险管理理论在IT项目风险管理中的应用,F272
  18. 现代化钢铁企业实施大规模定制的关键质量管理技术研究,F426.31
  19. 应用服务器集群管理系统的设计与实现,TP393.05
  20. 一种支持服务动态管理的SCA服务模型研究,TP311.52

中图分类: > 工业技术 > 自动化技术、计算机技术 > 计算技术、计算机技术 > 计算机软件 > 程序设计、软件工程 > 软件工程 > 软件开发
© 2012 www.xueweilunwen.com