Microkernel Energy Management

This project has been completed.

Energy management has become a challenge for modern computing environments that needs to be addressed by all involved components, including the operating system. At the same time, the trend in operating system design is moving away from monolithic to modular structures; modern operating systems often come as a small kernel and a set of unprivileged service modules atop. Their custom operating-system abstractions render them extensible; their integrated virtualization capabilities retain compatibility to existing applications. Nonetheless, most existing energy management schemes are tailored to monolithic operating systems, where software and hardware can be directly controlled to meet thermal or energy constraints. A modern operating system, however, consists of multiple components, and direct or centralized energy management is unfeasible.

This project proposes a novel approach for managing energy in modular operating systems. Our approach strives to enable energy awareness and energy management if the resource management subsystem is distributed and scattered among operating system modules rather than being centralized and monolithic. There are four key achievements: a model for modularization-aware energy management; the support for exposed and distributed energy accounting and allocation; the use of different energy management interaction protocols; and, finally, the support for virtualization of energy effects.

We have implemented a prototype of our approach for a modular, virtualization-capable microkernel operating system. Our prototype supports processor and disk energy management at the level of physical and virtual devices. To that end, it features distributed and exposed mechanisms for accounting and allocation of processor and disk energy both to complete virtual machines and to individual virtualized applications. Experiments show that the prototype accurately accounts and allocates processor and disk energy consumption to different notions of applications at runtime. Our mechanisms enable extensible and easily adaptable energy policies. Our experiments also reveal that there is an interdependency between accuracy and performance of energy management mechanisms; using different management protocols, our prototype enables developers of energy policies to choose themselves the particular point in the trade-off space.

Contact: Prof. Dr.-Ing. Frank Bellosa

Author Title Source

Jan Stoess, Christoph Klee, Stefan Domthera and Frank Bellosa

Proceedings GI/ITG Fachgruppentreffen Betriebssysteme, Karlsruhe, Germany, October 12, 2007, pp. 3-8 (Interner Bericht 2007-23, Fakultät für Informatik, Universität Karlsruhe (TH))

Jan Stoess, Christian Lang, and Marcus Reinhardt

Poster session of 1st ACM SIGOPS EuroSys Conference, Leuven, Belgium, April 20, 2006

Jan Stoess, Christian Lang, and Frank Bellosa

Proceedings of the 2007 USENIX Technical Conference, Santa Clara, CA, June 17-22, 2007

Jan Stoess

Dissertation, Fakultät für Informatik, Karlsruhe Institute of Technology, 5. Februar 2010

Jan Stoess

ACM SIGOPS Operating System Review, Special Topics on Secure Small-Kernel Systems, July 2007