【摘 要】
:
应用程序生命周期中需要不断进行更新,以修复程序中的错误、添加新的功能、适应环境和需求的变化。传统更新方式需关闭应用程序、安装更新、然后重启新版本的应用程序,但很多
论文部分内容阅读
应用程序生命周期中需要不断进行更新,以修复程序中的错误、添加新的功能、适应环境和需求的变化。传统更新方式需关闭应用程序、安装更新、然后重启新版本的应用程序,但很多应用程序需要不间断的运行。软件动态更新不需要关闭应用程序,在运行的过程中实现对软件程序的更新。较之离线更新,动态更新面临更大的技术挑战,而如何保证更新后程序运行的正确性是其难点所在。现有程序代码级动态更新技术对更新正确性的考虑多停留在类型正确层面上,仅能够保证动态更新之后运行不发生类型错误。应用语义层面正确性的保证是通过程序员对更新点的选择来进行控制的,而这方面缺乏系统化的方法和技术的支持。本文在研究了当前C语言程序动态更新机制和安全策略的基础上,提出并实现了一种基于断言的动态更新点选择技术,用于帮助避免动态更新后程序运行的逻辑错误。主要工作包括:首先,提出了一种基于程序断言的更新点选择准则。通过程序新旧版本中已有的或者为动态更新添加的程序断言,可指定期望程序在当前点需要满足的属性。动态更新时更新前后程序运行路径上的断言不应被破坏。其次,为上述准则提出一种使用基于约束控制流分析的自动判断技术。对于每一个更新点,寻找与之相关的断言,即在这些更新点更新可能会受影响的断言。通过分析程序中与这些断言存在关联的所有类型、变量和函数,保守地判断这些断言有无被违反的可能。如果存在断言被违背,则更新点不满足上述准则,跳过该更新点,程序继续运行,继续寻找满足条件的更新点。如果断言不被违背,则在该更新点可进行更新。最后,基于Ginseng系统实现一个基于断言的更新点自动选择机制,并通过一个OpenSSH的实际更新实例,说明了上述技术的实际使用,初步展示了其可行性和有效性。
其他文献
本文围绕IP多目广播技术展开,重点探讨一种可靠IP多目广播传输协议的构想、设计和实现。 IP多目广播是二十世纪八十年代中期提出的一项技术,旨在提高网络使用效率、拓展新的
该文首先介绍一种最新的无线局域网通信协议—蓝牙(Bluetooth)协议.使用传统的方法开发此协议相当复杂而费时,因此作者考虑采用形式化方法,以求提高开发效率.接着,文章利用有
该文主要针对分布式测控系统中的实时数据的管理、实时网络通信、颁式测控系统中的任务高度进行了详细的研究.在样机系统中,通过对实时数据库和实时网络协议提供的API函数的
该文的主要工作是研究如何用时段演算来刻画程序的实时行为.为了处理局部变量的声明,作者们必须引进关于程度变量的量词.而在实时程序设计里,所有程序变量均看成时间域上的函
该文在介绍了课题背景基础上,分析了软件集成技术、POSC软件集成平台SIP和CORBA等相关技术的特点和关系,针对传统POSCSIP中对数据仓PDS数据存取的不足和WEB查询的需求,提出了
该文首先对客户机/服务器体系结构,特别是以软件体系结构的观点对三层结构进行了分析,并将其和两层结构做了比较,讨论了其在面向对象的环境下的发展.此外,对中间件系统的范畴
该文面向矢量场可视化的新方法与关键技术,对基于纹理可视化和ROI(Region Of Interest)可视化作了广泛面深入的研究,主要创新如下:第一,提出OLIC算法和MagLIC算法.该文设计稀
论文首先详细、客观地对数据库技术及其安全机制的发展状况分别进行阐述.然后以应用为基础,对Client/Server数据库系统的安全机制进行了总结和分析,并提出了某些个人的经验及
随着计算机网络的不断普及和协同科学理论的形成与完善,协同计算将是新世纪全新的流行的计算方式.各行各业对使用计算机和网络来支持协同工作的要求越来越迫切,目前各类协同
作者了论文论述了一个基于CSCW的简单多媒体会议系统的设计和实现.文章在第一章中首先对CSCW作了简要的介绍.然后在第二章中对多媒体会议进行了研究和讨论,为多媒体会议系统M