Skip to main content

TS

Pre-virtualization: Soft layering for virtual machines

Authors

Joshua LeVasseur, Volkmar Uhlig, Yaowei Yang, Matthew Chapman, Peter Chubb, Ben Leslie and Gernot Heiser

University of Karlsruhe

IBM Watson

NICTA

UNSW

Abstract

Despite its current popularity, para-virtualization has an enormous cost. Its deviation from the platform architecture abandons many of the benefits of traditional virtualization: stable and well-defined platform interfaces, hypervisor neu- trality, operating system neutrality, and upgrade neutral- ity—in sum, modularity. Additionally, para-virtualization has a significant engineering cost. These limitations are accepted as inevitable for significantly better performance, and for the ability to provide virtualization-like behavior on non-virtualizable hardware such as x86.

Virtualization and its modularity solve many systems problems, and when combined with the performance of para-virtualization become even more compelling. We show how to achieve both together. We still modify the guest operating system, but according to a set of design princi- ples that avoids lock-in, which we call soft layering. Ad- ditionally, our approach is highly automated and thus re- duces the implementation and maintenance burden of para- virtualization, which is especially useful for enabling obso- leted operating systems. We demonstrate soft layering on x86 and Itanium: we can load a single Linux binary on a variety of hypervisors (and thus substitute virtual machine environments and their enhancements), while achieving es- sentially the same performance as para-virtualization with less effort.

BibTeX Entry

  @inproceedings{LeVasseur_UYCCLH_08,
    publisher        = {Springer},
    author           = {LeVasseur, Joshua and Uhlig, Volkmar and Yang, Yaowei and Chapman, Matthew and Chubb, Peter and
                        Leslie, Ben and Heiser, Gernot},
    year             = {2008},
    month            = aug,
    editor           = {{Yeh-Ching Chung, John Morris}},
    title            = {Pre-virtualization: soft layering for virtual machines},
    booktitle        = {Asia-Pacific Computer Systems Architecture Conference},
    pages            = {1-9},
    address          = {Hsinchu, Taiwan}
  }

Download