Kitsune: Efficient, General-purpose Dynamic Software Updating for C

被引:32
|
作者
Hayden, Christopher M. [1 ]
Smith, Edward K. [1 ]
Denchev, Michail [1 ]
Hicks, Michael [1 ]
Foster, Jeffrey S. [1 ]
机构
[1] Univ Maryland, College Pk, MD 20742 USA
关键词
Design; Languages; dynamic software updating;
D O I
10.1145/2398857.2384635
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Dynamic software updating (DSU) systems allow programs to be updated while running, thereby permitting developers to add features and fix bugs without downtime. This paper introduces Kitsune, a new DSU system for C whose design has three notable features. First, Kitsune's updating mechanism updates the whole program, not individual functions. This mechanism is more flexible than most prior approaches and places no restrictions on data representations or allowed compiler optimizations. Second, Kitsune makes the important aspects of updating explicit in the program text, making the program's semantics easy to understand while minimizing programmer effort. Finally, the programmer can write simple specifications to direct Kitsune to generate code that traverses and transforms old-version state for use by new code; such state transformation is often necessary, and is significantly more difficult in prior DSU systems. We have used Kitsune to update five popular, open-source, single-and multi-threaded programs, and find that few program changes are required to use Kitsune, and that it incurs essentially no performance overhead.
引用
收藏
页码:249 / 264
页数:16
相关论文
共 50 条
  • [41] A GENERAL-PURPOSE ELECTROMETER
    FRY, RM
    JOURNAL OF SCIENTIFIC INSTRUMENTS, 1954, 31 (08): : 269 - 271
  • [42] GENERAL-PURPOSE MICROPROCESSORS
    不详
    ELECTRONIC DESIGN, 1980, 28 (24) : 150 - &
  • [43] A GENERAL-PURPOSE ANIMATOR
    BRUNNER, DT
    HENRIKSEN, JO
    1989 WINTER SIMULATION CONFERENCE PROCEEDINGS, 1989, : 155 - 163
  • [46] Practical dynamic software updating for C
    Neamtiu, Iulian
    Hicks, Michael
    Stoyle, Gareth
    Oriol, Manuel
    ACM SIGPLAN NOTICES, 2006, 41 (06) : 72 - 83
  • [47] TENG: A General-Purpose and Efficient Processor Architecture for Accelerating DNN
    Zhang, Zekun
    Cai, Yujie
    Liao, Tianjiao
    Xu, Chengyu
    Jiao, Xin
    2024 IEEE 6TH INTERNATIONAL CONFERENCE ON AI CIRCUITS AND SYSTEMS, AICAS 2024, 2024, : 149 - 153
  • [48] Towards Efficient Processing of General-Purpose Joins in Sensor Networks
    Stern, Mirco
    Buchmann, Erik
    Boehm, Klemens
    ICDE: 2009 IEEE 25TH INTERNATIONAL CONFERENCE ON DATA ENGINEERING, VOLS 1-3, 2009, : 126 - 137
  • [49] Novel Efficient HEVC Decoding Solution on General-Purpose Processors
    Duan, Yizhou
    Sun, Jun
    Yan, Leju
    Chen, Keji
    Guo, Zongming
    IEEE TRANSACTIONS ON MULTIMEDIA, 2014, 16 (07) : 1915 - 1928
  • [50] GENERAL-PURPOSE VEHICLE SYSTEM DYNAMICS SOFTWARE BASED ON MULTIBODY FORMALISMS
    KORTUM, W
    SCHIEHLEN, W
    VEHICLE SYSTEM DYNAMICS, 1985, 14 (4-6) : 229 - 263