Virtualization
We have a number of activities in the area of virtualization and
virtual machines (what are they?) This work is done in close
collaboration with the Gelato project.
Wombat and Darbat
Wombat was our para-virtualized Linux server on L4. It
was the first portable (across architectures) version of a
virtualized Linux on L4 (possibly the first portable virtualized
Linux at all). It is now commercially supported by our spinout
company Open Kernel Labs under the
name OK Linux. We have
consequently discontinued support for Wombat.
Darbat is related
project aiming at running a complete Mac OS X system on top of
L4, possibly concurrently with a Linux (i.e. Wombat)
system. Rather than straight para-virtualization of the Darwin
kernel (consisting of Mach, a BSD kernel and IOkit), the Darbat
project attempts to remove Mach completely, replace its
functionality by plain L4 mechanisms plus some user-level
libraries. The aim is to run Darwin and IOkit in different
(unprivileged) address spaces.
Pre-virtualization
Pre-virtualization is a new
virtualization technique, which dramatically reduces the engineering
cost of para-virtualization while maintaining its performance
advantage over pure virtualization. Pre-virtualization, like pure
virtualization, retains the original host platform
architecture. This is achieved by automating the process of
virtualising the guest OS.
Itanium Hypervisors
Our pre-virtualization work supports several different
hypervisors on the Itanium architecture. One of them (vNUMA) is our
own research projects, others are developed elsewhere.
vNUMA
Virtual NUMA (vNUMA) is a
virtual machine monitor that provides a virtual shared-memory
multiprocessor system on a cluster. It supports a pre-virtualised
Linux as a single-system-image operating system. vNUMA aims to
provide easy and efficient migration of legacy SMP applications to a
cluster.
vNUMA will be released in the near future.
Xen/ia64
Xen
is a widely-used open-source hypervisor. We are targeting Xen for
or pre-virtualised Linux and are achieving the same (or better)
performance as para-virtualised XenoLinux, with a fraction of the
engineering cost.
Our pre-virtualised Linux for Xen/ia64 will be released shortly.
Linux
Linux itself, more commonly used as a guest OS, can serve as a
hypervisor, user-mode Linux (UML) is an
example of this. While UML is an example of para-virtualised Linux,
our Linux-on-Linux
achieves better performance with dramatically reduced engineering
cost.