|
Pre-Virtualization: Soft Layering for Virtual Machines
Joshua LeVasseur, Volkmar Uhlig, Matthew Chapman, Peter Chubb, Ben Leslie, and Gernot Heiser
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.
In Technical Report 2006-15, Fakultät für Informatik, Universität Karlsruhe, July 2006
Full paper: [pdf]
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},
}
|