usenix conference policies
You are here
Reboots Are for Hardware: Challenges and Solutions to Updating an Operating System on the Fly
Patches to modern operating systems, including bug fixes and security updates, and the reboots and downtime they require, cause tremendous problems for system users and administrators. Dynamic update allows an operating system to be patched without the need for a reboot or other service interruption. We have taken the approach of building dynamic update functionality directly into an existing operating system, K42.
To determine the applicability of our update system, and to investigate the changes that are made to OS code, we analysed K42’s revision history. The analysis showed that our original system could only support half of the desired changes to K42. The main problem preventing more changes from being converted to dynamic updates was our system’s inability to update interfaces. Other studies, as well as our own investigations, have shown that change to interfaces is also prevalent in systems such as Linux. Thus, it is apparent that a dynamic update mechanism needs to handle interface changes to be widely applicable.
In this paper, we describe how to support interface changes in a modular dynamic update system. With this improvement, approximately 79% of past performance and bug fix changes to K42 could be converted to dynamic updates, and we expect the proportion would be even higher if the fixes were being developed for dynamic update. Measurements of our system show that the runtime overhead is very low, and the time to apply updates is acceptable.
This paper makes the following contributions. We present a mechanism to handle interface changes for dynamic updates to an operating system. For performancesensitive updates, we show how to apply changes lazily. We discuss lessons learned, including how an operating system can be structured to better support dynamic update. We also describe how our approach extends to other systems such as Linux, that although structured modularly, are not strictly object-oriented like K42.
Open Access Media
USENIX is committed to Open Access to the research presented at our events. Papers and proceedings are freely available to everyone once the event begins. Any video, audio, and/or slides that are posted after the event are also free and open to everyone. Support USENIX and our commitment to Open Access.
author = {Andrew Baumann and Jonathan Appavoo and Robert W. Wisniewski and Dilma Da Silva and Orran Krieger and Gernot Heiser},
title = {Reboots Are for Hardware: Challenges and Solutions to Updating an Operating System on the Fly},
booktitle = {2007 USENIX Annual Technical Conference (USENIX ATC 07)},
year = {2007},
address = {Santa Clara, CA},
url = {https://www.usenix.org/conference/2007-usenix-annual-technical-conference/reboots-are-hardware-challenges-and-solutions},
publisher = {USENIX Association},
month = jun
}
connect with us