Usenix Annual Technical Conference, San Antonio, TX, June 9-14, 2003.
Craig A. N. Soules, Jonathan Appavoo*, Kevin Hui*, Robert W. Wisniewski^, Dilma Da Silva^, Gregory R. Ganger, Orran Krieger^, Michael Stumm*, Marc Auslander^, Michal Ostrowski^, Bryan Rosenburg^, Jimi Xenidis^
Carnegie Mellon University
* University of Toronto
^ IBM T. J. Watson Research Center
Online reconfiguration provides a way to extend and replace active operating system components. This provides administrators, developers, applications, and the system itself with a way to update code, adapt to changing workloads, pinpoint performance problems, and perform a variety of other tasks while the system is running. With generic support for interposition and hot-swapping, a system allows active components to be wrapped with additional functionality or replaced with different implementations that have the same interfaces. This paper describes support for online reconfiguration in the K42 operating system and our initial experiences using it. It describes four base capabilities that are combined to implement generic support for interposition and hot-swapping. As examples of its utility, the paper describes some performance enhancements that have been achieved with K42’s online reconfiguration mechanisms including adaptive algorithms, common case optimizations, and workload specific specializations.