UW-Madison Logo

The ADvanced Systems Laboratory (ADSL)
Publication abstract

Implicit Operating System Awareness in a Virtual Machine Monitor

Stephen T. Jones
Department of Computer Sciences , University of Wisconsin-Madison


Commodity server and desktop computer systems have become powerful enough in recent years to profitably make use of system virtualization technology. System software vendors are enthusiastically embracing system virtualization to address some of the key issues facing today's enterprises like manageability, rapid service deployment, and disaster recovery.

Widespread adoption of virtualization has a disruptive influence on system organization. In a virtualized environment, the virtual machine monitor (VMM) supplants the operating system as the primary resource manager. When a virtualization layer is present, certain system features like resource scheduling, cache management, and security monitoring can often be implemented most naturally within the VMM.

While a VMM understands and controls system hardware resources, it currently knows very little about the high-level software abstractions implemented within guest operating systems, a fact referred to as the ``semantic gap''. Information pertaining to OS constructs like processes, threads, users, and caches is often useful, however, when implementing services at the VMM layer. Hence, researchers have invented ways of directly exporting relevant information from the operating system to an underlying VMM. This direct approach, while effective, has some important drawbacks. For example, it leads to close coupling between VMM-layer services and specific OS vendors and versions, reducing the applicability of services and complicating deployment and management.

We have invented and implemented techniques that can be used by a VMM to infer useful information about selected operating system abstractions and achieve a level of implicit operating system awareness. Our approach uses observation of architectural events and the fact that modern operating systems share many basic features and responsibilities. This dissertation describes our techniques in detail and presents the results of a careful experimental evaluation of them. Using case studies, we show that implicit operating system awareness within a VMM can be used to implement a variety of useful applications like sophisticated I/O scheduling, flexible memory management, efficient caching, and reliable security monitoring that significantly enhance the value of the virtualization layer.

Full Paper: Postscript   PDF   BibTeX