DomU Support for Xen

From Xen

DomU support in Linux distributions

This page describes the current status of support in Linux distributions for running as guest VMs; if you are looking for dom0 support go here.

You can also find instruction on how to build a mainline Linux kernel for DomU here.

PV is the regular domU support that has been present in most Linux distributions for years and it is required to run on Amazon EC2 for example.

PV on HVM is a new type of Xen Project Hypervisor guest support that exploits hardware nested paging while enabling PV interfaces for IO. Depending on the workload PV on HVM guests might be faster or slower than regular PV guests. See Xen_Linux_PV_on_HVM_drivers for more information.

Distribution run as PV guest support for PVHVM
Alpine Linux 2.3.x yes ???
Alpine Linux 2.4.x yes ???
Arch Linux (x86-64 only [5]) yes yes
CentOS 5 yes ???
CentOS 6 yes ???
Debian 5.0 (Lenny) yes ???
Debian 6.0 (Squeeze) yes ???
Debian 7 (Wheezy) yes yes
Fedora 14 yes ???
Fedora 16 yes ???
OpenEmbedded 1.3+ yes ???
OpenSUSE 11.4 yes ???
Oracle Linux 5 yes[2] ???
Oracle Linux 6 yes[2] ???
RHEL 5 yes [3] ???
RHEL 6 yes ???
SLES 10 yes ???
SLES 11 yes ???
Ubuntu 10.04 yes[1] ???
Ubuntu 11.04 yes[1] ???
Ubuntu 12.04 yes[1] ???

[1] EC2 kernel only
[2] Supported using the Red Hat-compatible Kernel as well as the Oracle Unbreakable Enterprise Kernel
[3] save/restore is known to have bugs
[4] see Xen_Linux_PV_on_HVM_drivers for resources about using optimized (paravirtualized) PV-on-HVM drivers
[5] You would need to recompile the kernel for Arch Linux i686.

DomU support in BSDs and other Unix systems

Icon todo.png To Do:

check FreeBSD & NetBSD versions against PVHVM and PVH

This list is currently incomplete. We are in the process of verifying support for Unixes.

Distribution run as PV guest PVHVM
FreeBSD >=10 No[1] Yes
NetBSD >=3 Yes[2] No
OpenBSD 5.9 no[6] yes[3]
OpenIndiana[4] no[4] no
Solaris 11 yes[5] no

[1] See for more information
[2] See NetBSD Xen HowTo for more information
[3] PV drivers are selected automatically when OpenBSD recognizes that it's executing under Xen so no user configuration is required.
[4] On their offical web site, you can read: 'Xen-based virtualization was at some time part of OpenSolaris project, but became outdated and was ultimately dropped due to lack of resources and invested interest.'
[5] For SPARC systems as well as x86 systems (Oracle Solaris 11 OS already has the paravirtualized drivers installed as part of the OS).
[6] As the main Xen dev from OpenBSD (Mike Belopuhov) has it: 'You need to use an HVM loader, since we're not supporting pure PV mode.In Linux/xl parlance it requires builder = "hvm" option in the Xen VM config. I think that if you're trying to boot the kernel directly, you're instructing Xen to run VM in a PV mode, (which is impossible).'

DomU support for Windows

Windows falls into the category of an unmodified operating system (in other words an operating system that has not been altered specifically to run on the Xen Project Hypervisor). Thus, paravirtualization is not an option. The best way, therefore, to virtualize Windows is to use as a HVM) guest. The Windows 7/XP/Vista/Server 2008 section of the Category:HowTo document points to instructions explaining how to do this.

However, James Harper maintains a set of PV drivers that allow Windows to make use of the network and block backend drivers in Dom0. This gives a guest Windows VM a substantial performance boost. The table below shows the drivers available.

Distribution run as PV guest
Windows Vista no
Windows XP no
Windows 2008 no
Windows 2003 no
Windows 2000 no
Windows 7 no

[1] GPLPV drivers can be downloaded from; further information can be found on XenWindowsGplPv
[2] Signed GPLPV drivers are available for download from Univention
[3] Xen Project Windows PV drivers available from [1]