Pre-Virtualization: Soft Layering for Virtual Machines

  • Author:

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

  • Source:

    Technical Report 2006-15, Fakultät für Informatik, Universität Karlsruhe, July 2006

  • Date: 07.2006
  • Abstract:

    Para-virtualization ties a guest operating system and a hypervisor together, which restricts the system architecture; e.g., when Linux uses the Xen API, Linux is unable to run on alternative hypervisors such as VMware, Linux itself, or a security kernel such as EROS. Furthermore, the lock-in obstructs evolution of its own paravirtualization interface — virtual machines provide the vital ability to run obsoleted operating systems alongside new operating systems, but para-virtualization often lacks this feature, requiring all concurrent instances to be the hypervisor’s supported version. Even general purpose operating systems have weaker restrictions for their applications. This lock-in discards the modularity of virtualization; modularity is an intrinsic feature of traditional virtualization, helping to add layered enhancements to operating systems, especially when enhanced by people outside the operating system’s development community (e.g., Linux server consolidation provided by VMware).

    Virtualization and its modularity solve many systems problems; combined with the performance of paravirtualization it becomes even more compelling. We show how to achieve both together. We offer a set of design principles, which we call soft layering, that govern the modifications made to the operating system. Additionally, our approach is highly automated, thus reducing the implementation and maintenance burden of paravirtualization, which is especially useful for enabling obsoleted 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 essentially the same performance as para-virtualization with less effort.

    BibTex:

    @TechReport{ softlayering06,
       author = {Joshua LeVasseur and Volkmar Uhlig and Matthew Chapman and Peter Chubb and Ben Leslie and Gernot Heiser},
       title = {Pre-Virtualization:  soft layering for virtual machines},
       institution = {Fakult\"at f\"ur Informatik, Universit\"at Karlsruhe (TH)},
       year = 2006,
       number = {2006-15},
       month = Jul,
       type = {Technical Report},
    }