面向动态更新的构件依赖自动管理技术研究

来源 :南京大学 | 被引量 : 0次 | 上传用户:uestchujun
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
构件系统的动态更新需要构件间的动态依赖信息来判断构件何时更新才可以保证更新的安全性,而且动态依赖信息越精确,动态更新对系统造成的干扰越小。最近的动态更新技术使用事务运行过程中不断变化的动态依赖实现安全、精细、低干扰的动态更新,然而他们并没有给出获取和管理事务的动态依赖的方法。目前仅有的可以支持事务的动态依赖的管理工作无法同时在精确度、系统开销、自动化程度等方面取得令人满意的效果。为了解决这些不足,本文提出一种通过构建和维护事务的运行时模型来自动管理事务的动态依赖的自动管理框架。基于该框架实现的动态依赖的管理不仅具有较高的精确度而且具有较小的系统开销。具体而言,本文的工作主要包括以下几点:·定义了事务运行过程中的构件间的动态依赖(简称事务的动态依赖),并提出它的一种表示方法,可直接用于动态更新。定义了一个动态依赖Mealy机(DDMM),可以作为事务的运行时模型,用于刻画事务在任一运行时刻的动态依赖。·提出一个通过构建和维护事务的DDMM来自动管理事务的动态依赖的框架。DDMM是在事务运行前直接从事务的实现中构建的。静态构建的DDMM和驱动它运行的触发方法插入到事务的实现中从而使它与事务在运行时保持同步。当事务运行时,DDMM在触发方法的驱动下实例化为事务的运行时模型,并基于此模型估算事务运行时刻的动态依赖信息。·研究了DDMM的优化方法,对DDMM进行最小化,减少插桩的数量,降低给系统的正常运行带来的开销。研究了分支预测的优化方法,对动态依赖产生影响的分支条件进行提前判断,从而提高估算的动态依赖信息的精确度。·基于上述的自动管理框架,实现了一个可以自动管理JaVa构件中的事务的动态依赖的工具DDMT。DDMT对于任意一个支持动态更新的JaVa构件(系统),只需知道其字节码实现,便可在运行时自动获得事务的动态依赖,整个过程全部都是自动完成,无需任何手工操作。·使用DDMT在基准测试程序集Dacapo中的DayTrader应用上进行了实验。实验结果表明,本文方法估算的动态依赖与实际相比具有较高的精确度,并且对系统造成的额外开销也比较小。
其他文献
在普适计算中,上下文持续快速变化,上下文感知应用根据上下文的变化自动调整自身的状态和行为以作出适应。然而,由于不可预测的环境噪声和动态变化等诸多因素的影响,很容易造
航天计算机由于其严酷的生存环境和艰难的维护条件,对可靠性要求非常高,同时随着我国航天工程的发展,对航天计算机的处理能力也提出了更高的要求。而从我国航天计算机的现状来看
当前,网络化与信息化突破了时间和地域的限制,已成为全球化不可抗拒的世界潮流。目前互联网正与电话网、电视网、无线网、卫星网相结合,互联网在商业运作的驱动下,更加迅猛地发展