Automating Object Transformations for Dynamic Software Updating

被引:20
|
作者
Magill, Stephen [1 ,2 ]
Hicks, Michael [2 ]
Subramanian, Suriya [3 ]
McKinley, Kathryn S. [4 ,5 ]
机构
[1] IDA Ctr Comp Sci, Baltimore, MD USA
[2] Univ Maryland, College Pk, MD 20742 USA
[3] Intel Corp, Santa Clara, CA 95051 USA
[4] Microsoft Res, Redmond, WA USA
[5] Univ Texas Austin, Austin, TX 78712 USA
关键词
Algorithms; Languages; Theory; Dynamic Software Update; DSU; Hot-Swapping; Program Synthesis; State Transformation; Object Correlation; Object Matching;
D O I
10.1145/2398857.2384636
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Dynamic software updating (DSU) systems eliminate costly downtime by dynamically fixing bugs and adding features to executing programs. Given a static code patch, most DSU systems construct runtime code changes automatically. However, a dynamic update must also specify how to change the running program's execution state, e. g., the stack and heap, to make it compatible with the new code. Constructing such state transformations correctly and automatically remains an open problem. This paper presents a solution called Targeted Object Synthesis (TOS). TOS first executes the same tests on the old and new program versions separately, observing the program heap state at a few corresponding points. Given two corresponding heap states, TOS matches objects in the two versions using key fields that uniquely identify objects and correlate old and new-version objects. Given example object pairs, TOS then synthesizes the simplest-possible function that transforms an old-version object to its new-version counterpart. We show that TOS is effective on updates to four open-source server programs for which it generates non-trivial transformation functions that use conditionals, operate on collections, and fix memory leaks. These transformations help programmers understand their changes and apply dynamic software updates.
引用
收藏
页码:265 / 280
页数:16
相关论文
共 50 条
  • [31] AUTOMATING THE IMPORTATION OF SOFTWARE
    EGGERT, PR
    [J]. USENIX WORKSHOP PROCEEDINGS : SOFTWARE MANAGEMENT, 1989, : 115 - 118
  • [32] Automating Mathematical Program Transformations
    Agarwal, Ashish
    Bhat, Sooraj
    Gray, Alexander
    Grossmann, Ignacio E.
    [J]. PRACTICAL ASPECTS OF DECLARATIVE LANGUAGES, PROCEEDINGS, 2010, 5937 : 134 - +
  • [33] Improving Reliability of Dynamic Software Updating Using Runtime Recovery
    Gu, Tianxiao
    Zhao, Zelin
    Ma, Xiaoxing
    Xu, Chang
    Cao, Chun
    Lu, Jian
    [J]. 2016 23RD ASIA-PACIFIC SOFTWARE ENGINEERING CONFERENCE (APSEC 2016), 2016, : 257 - 264
  • [34] Verifying the design of dynamic software updating in the OTS/CafeOBJ method
    Zhang, Min
    Ogata, Kazuhiro
    Futatsugi, Kokichi
    [J]. Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics), 2014, 8373 : 560 - 577
  • [35] A Method for Dynamic Software Updating in Real-Time Systems
    Seifzadeh, Habib
    Kazem, Ali Asghar Pourhaji
    Kargahi, Mehdi
    Movaghar, Ali
    [J]. PROCEEDINGS OF THE 8TH IEEE/ACIS INTERNATIONAL CONFERENCE ON COMPUTER AND INFORMATION SCIENCE, 2009, : 34 - +
  • [36] The Effects of Static Analysis for Dynamic Software Updating: An Exploratory Study
    Ahmed, Babiker Hussien
    Lee, Sai Peck
    Su, Moon Ting
    [J]. IEEE ACCESS, 2020, 8 : 35161 - 35171
  • [37] An Algebraic Approach to Formal Analysis of Dynamic Software Updating Mechanisms
    Zhang, Min
    Ogata, Kazuhiro
    Futatsugi, Kokichi
    [J]. 2012 19TH ASIA-PACIFIC SOFTWARE ENGINEERING CONFERENCE (APSEC), VOL 1, 2012, : 664 - 673
  • [38] A dynamic size measure for object oriented software
    Gosain A.
    Sharma G.
    [J]. International Journal of System Assurance Engineering and Management, 2017, 8 (Suppl 2) : 1209 - 1221
  • [39] Automating Just-In-Time Comment Updating
    Liu, Zhongxin
    Xia, Xin
    Yan, Meng
    Li, Shanping
    [J]. 2020 35TH IEEE/ACM INTERNATIONAL CONFERENCE ON AUTOMATED SOFTWARE ENGINEERING (ASE 2020), 2020, : 585 - 597
  • [40] AUTOMATING UPDATING OF A SPECIALIZED REFERENCE INFORMATION COLLECTION
    POLOZHIKHINA, EP
    TARASOV, VI
    [J]. NAUCHNO-TEKHNICHESKAYA INFORMATSIYA SERIYA 1-ORGANIZATSIYA I METODIKA INFORMATSIONNOI RABOTY, 1975, (01): : 8 - 12