VLDB 2026 Research / reviewers in the wild / expert
Christopher M. Hayden
dblp:55/8194
· DBLP profile ↗
3ranked-venue papers
3as first author
0since 2021 · last 2014
—ORCID · none
Domains — the database's venue-derived domains; a paper can count in several
Software engineering, systems software and programming languages · 3 · 3 first-author
Expertise — from the expertise taxonomy: the topics of the expert's papers under the CCF categories. A weight counts papers with recency: 1 for a paper about the topic, 0.3 when the topic is its context, halved every five years.
| Software engineering, system software, and programming languages
3 papers |
Software maintenance and evolution · 55% Operating systems · 22% Software testing · 17% |
Topics — the 4 heaviest of 4, each with the papers that count most for it
| Topic | Weight | Papers | Last | Evidence papers |
|---|---|---|---|---|
Software maintenance and evolution
dynamic software updating |
0.5 | 3 | 2014 | Kitsune: Efficient, General-Purpose Dynamic Software Updating for C · ACM Trans. Program. Lang. Syst. 2014 Evaluating Dynamic Software Update Safety Using Systematic Testing · IEEE Trans. Software Eng. 2012 Kitsune: efficient, general-purpose dynamic software updating for C · OOPSLA 2012 |
Operating systems
live update |
0.2 | 1 | 2014 | Kitsune: Efficient, General-Purpose Dynamic Software Updating for C · ACM Trans. Program. Lang. Syst. 2014 |
Software testing
systematic testing |
0.1 | 1 | 2012 | Evaluating Dynamic Software Update Safety Using Systematic Testing · IEEE Trans. Software Eng. 2012 |
Programming languages and type systems › programming paradigms › imperative languages
c |
0.1 | 1 | 2014 | Kitsune: Efficient, General-Purpose Dynamic Software Updating for C · ACM Trans. Program. Lang. Syst. 2014 |
Methods — techniques the papers use, named apart from their topics
state transformation specifications · 0.2type safety analysis · 0.1state transformation · 0.1empirical evaluation · 0.1
| Year | Publication | Venue | Position |
|---|---|---|---|
| 2014 | Kitsune: Efficient, General-Purpose Dynamic Software Updating for CabstractDynamic software updating (DSU) systems facilitate software updates to running programs, thereby permitting developers to add features and fix bugs without downtime. This article introduces Kitsune, a DSU system for C. Kitsune’s design has three notable features. First, Kitsune updates the whole program, rather than individual functions, using a mechanism that 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 six popular, open-source, single- and multithreaded programs and find that few program changes are required to use Kitsune, that it incurs essentially no performance overhead, and that update times are fast. Christopher M. Hayden, Karla Saur, Edward K. Smith, Michael Hicks 0001, Jeffrey S. Foster |
ACM Trans. Program. Lang. Syst. | 1 |
| 2012 | Kitsune: efficient, general-purpose dynamic software updating for CabstractDynamic 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. Christopher M. Hayden, Edward K. Smith, Michail Denchev, Michael Hicks 0001, Jeffrey S. Foster |
OOPSLA | 1 |
| 2012 | Evaluating Dynamic Software Update Safety Using Systematic TestingabstractDynamic software updating (DSU) systems patch programs on the fly without incurring downtime. To avoid failures due to the updating process itself, many DSU systems employ timing restrictions. However, timing restrictions are theoretically imperfect, and their practical effectiveness is an open question. This paper presents the first significant empirical evaluation of three popular timing restrictions: activeness safety (AS), which prevents updates to active functions; con-freeness safety (CFS), which only allows modifications to active functions when doing so is provably type-safe; and manual selection, which permits updates at developer chosen program points. We evaluated these timing restrictions using a series of DSU patches to three programs: OpenSSH, vsftpd, and ngIRCd. We systematically applied updates at each distinct update point reached during execution of a suite of system tests for these programs to determine which updates pass and which fail. We found that all three timing restrictions prevented most failures, but only manual selection allowed none. Further, although CFS and AS allowed many more update points, manual selection still supported updates with minimal delay. Finally, we found that manual selection required the least developer effort. Overall, we conclude that manual selection is most effective. Christopher M. Hayden, Edward K. Smith, Eric A. Hardisty, Michael Hicks 0001, Jeffrey S. Foster |
IEEE Trans. Software Eng. | 1 |