Xen Project Release Features
Legend: ✓: Feature ✓: Partial
Xen 4.0 | Xen 4.1 | Xen 4.2 | Xen 4.3 | Xen 4.4 | ||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
Initial Release | 7 April 2010 | 25 March 2011 | 17 September 2012 | 9 July 2013 | 10 March 2014 | |||||||
Feature List | FL 4.2 | FL 4.3 | FL 4.4 | |||||||||
Release Notes | RN 4.0 | RN 4.1 | RN 4.2 | RN 4.3 | RN 4.4 | |||||||
Supported Mainline Architectures for the hypervisor (Host) | ||||||||||||
IA-A32 | ✓ | ✓ | ✓ | Removed | ||||||||
X86-64 | ✓ | ✓ | ✓ | ✓ | ✓ | |||||||
Itanium (ia64) | ✓ | ✓deprecated in this release | ✓deprecated | Removed | ||||||||
ARM v7 + Virtualization Extensions | ✓tech preview [ 6 ] | ✓ | ||||||||||
ARM v8 | ✓tech preview [ 6 ] | ✓ | ||||||||||
Guest Types | ||||||||||||
For X86 Architectures | ||||||||||||
Paravirtualised Traditional Xen PV guest |
✓ | ✓ | ✓ | ✓ | ✓ | |||||||
HVM Guest [ 1 ] Fully virtualised guest using hardware virtualisation extensions |
✓ | ✓ | ✓ | ✓ | ✓ | |||||||
PV-on-HVM Guest [ 1 ] Fully virtualised guest using PV extensions/drivers for improved performance |
✓ | ✓ | ✓ | ✓ | ✓ | |||||||
PVH | ✓tech preview | - | For ARM Architectures | |||||||||
ARM Guest Optimal combination of full virtualization and PV extensions |
✓tech preview [ 6 ] | ✓ | ||||||||||
Host Limits | ||||||||||||
For X86 Architectures | ||||||||||||
Physical CPUs | 128 [ 0 ] | >255 | 4095 | 4095 | 4095 | |||||||
Physical RAM | 1TB | 5TB | 5TB | 16TB | 16TB | |||||||
For ARM Architectures | ||||||||||||
Physical CPUs | 8 | 8 | ||||||||||
Physical RAM | 16GB | 16GB | ||||||||||
Guest Limits | ||||||||||||
X86 PV Guest Limits | ||||||||||||
Virtual CPUs | 128 | >255 | 512 | 512 | 512 | |||||||
Virtual RAM | 512GB | 512GB | 512GB | 512GB | 512GB | |||||||
X86 HVM Guest Limits | ||||||||||||
Virtual CPUs | 128 | 128 | 256 | 256 | 256 | |||||||
Virtual RAM | 1TB | 1TB | 1TB | 1TB | 1TB | |||||||
ARM Guest Limits | ||||||||||||
Virtual CPUs | 8 | 8 | ||||||||||
Virtual RAM | 16GB | 16GB | ||||||||||
Toolstack | ||||||||||||
Built-in | ||||||||||||
xend / xm | ✓ | ✓ | ✓deprecated in this release | ✓deprecated | ✓depricated | |||||||
XL | ✓initial implementation | ✓preview release | ✓ | ✓ | ✓ | |||||||
Qemu based disk backend (qdisk) for XL |
✓ [ 5 ] | ✓ [ 5 ] | ✓ [ 5 ] | ✓ [ 5 ] | ||||||||
XL Open vSwitch integration | ✓tech preview [ 7 ] | ✓tech preview [ 7 ] | ||||||||||
3rd Party | ||||||||||||
libvirt driver for XL | ✓ | ✓ | ✓ | ✓ | ||||||||
Features | ||||||||||||
Advanced Memory Management | ||||||||||||
Memory Ballooning | ✓ | ✓ | ✓ | ✓ | ✓ | |||||||
Memory Sharing allow sharing of identical pages between HVM guests |
✓tech preview | ✓tech preview | ✓tech preview [ 3 ] | ✓tech preview [ 3 ] | ✓tech preview [ 3 ] | |||||||
Memory Paging allow pages belonging to HVM guests to be paged to disk |
✓tech preview | ✓tech preview | ✓tech preview [ 3 ] | ✓tech preview [ 3 ] | ✓tech preview [ 3 ] | |||||||
TMEM - Transcendent Memory | ✓experimental [ 2 ] | ✓experimental [ 2 ] | ✓experimental [ 2 ] | ✓experimental [ 2 ] | ✓experimental [ 2 ] | |||||||
Resource Management | ||||||||||||
Cpupool advanced partitioning |
✓ | ✓ | ✓ | ✓ | ||||||||
Credit 2 Scheduler designed for latency-sensitive workloads and very large systems. |
✓prototype | ✓prototype | ✓experimental | ✓experimental | ||||||||
NUMA scheduler affinity | ✓ | ✓ | ||||||||||
Scalability | ||||||||||||
1GB/2MB super page support | ✓ | ✓ | ✓ | ✓ | ||||||||
Deliver events to PVHVM guests using Xen event channels | ✓ | ✓ | ✓ | ✓ | ||||||||
Interoperability / Hardware Support | ||||||||||||
Nested Virtualisation Running a hypervisor inside an HVM guest |
✓experimental | ✓experimental | ✓tech preview | |||||||||
HVM PXE Stack | gPXE | iPXE | iPXE | iPXE | iPXE | |||||||
Physical CPU Hotplug | ✓ | ✓ | ✓ | ✓ | ✓ | |||||||
Physical Memory Hotplug | ✓ | ✓ | ✓ | ✓ | ✓ | |||||||
Support for PV kernels in bzImage format | ✓ | ✓ | ✓ | ✓ | ✓ | |||||||
PCI Passthrough | ✓ | ✓ | ✓ | ✓ | ✓ | |||||||
X86 Advanced Vector eXtension (AVX) | ✓ [ 4 ] | ✓ | ✓ | ✓ | ||||||||
High Availability and Fault Tolerance | ||||||||||||
Live Migration, Save & Restore | ✓ | ✓ | ✓ | ✓ | ✓ | |||||||
Remus Fault Tolerance | ✓ | ✓ | ✓ | ✓ | ✓ | |||||||
vMCE Forward Machine Check Exceptions to Appropriate guests |
? | ? | ✓ | ✓ | ✓ | |||||||
Network and Storage | ||||||||||||
Blktap2 | ✓ | ✓ | ✓ | ✓ | ✓ | |||||||
Online resize of virtual disks | ✓ | ✓ | ✓ | ✓ | ✓ | |||||||
Security (also see this presentation or this document) | ||||||||||||
Driver Domains | ✓ | ✓ | ✓ | ✓ | ✓ | |||||||
Device Model Stub Domains | ✓ | ✓ | ✓ | ✓ | ✓ | |||||||
Memaccess API enabling integration of 3rd party security solutions into Xen virtualized environments |
✓ | ✓ | ✓ | ✓ | ||||||||
XSM & FLASK mandatory access control policy providing fine-grained controls over Xen domains, similar to SELinux |
✓ | ✓ | ✓ | ✓ | ✓ | |||||||
XSM & FLASK support for IS_PRIV | ✓ | ✓ | ||||||||||
vTPM Support |
✓ | ✓ | ✓ | ✓ updates and new functionality |
✓ | |||||||
Tooling | ||||||||||||
gdbsx debugger to debug ELF guests |
✓ | ✓ | ✓ | ✓ | ✓ | |||||||
vPMU Virtual Performance Management Unit for HVM guests |
✓ [ 4 ] | ✓ [ 4 ] | ✓ [ 4 ] | ✓ [ 4 ] | ✓ [ 4 ] | |||||||
Serial console | ✓ | ✓ | ✓ | ✓Add EHCI debug support | ✓ | |||||||
xentrace performance analysis |
✓ | ✓ | ✓ | ✓ | ✓ | |||||||
Device Models and Virtual Firmware for HVM guests | ||||||||||||
For X86 Architectures | ||||||||||||
Traditional Device Model Device emulator based on Xen fork of Qemu |
✓ | ✓ | ✓ | ✓ | ✓ | |||||||
Qemu Upstream Device Model Device emulator based on upstream Qemu |
✓tech preview | ✓default, unless stubdomains are used | ✓default, unless stubdomains are used | |||||||||
ROMBIOS BIOS used with traditional device model only |
✓ | ✓ | ✓ | ✓ | ✓ | |||||||
SeaBIOS BIOS used with upstream qemu device model and XL only |
✓ | ✓ | ✓ | |||||||||
OVMF/Tianocore UEFI Firmware used with upstream qemu device model and XL only |
✓experimental [ 4 ] | ✓experimental [ 4 ] | ✓experimental [ 4 ] | |||||||||
PV Bootloader support | ||||||||||||
For X86 Architectures | ||||||||||||
PyGrub support for GRUB 2 | ✓ | ✓ | ✓ | ✓ | ✓ | |||||||
PyGrub support for /boot on ext4 | ✓ | ✓ | ✓ | ✓ | ✓ | |||||||
pvnetboot support Bootloader supporting network boot of PV guests |
✓ | ✓ | ✓ |
[ 0 ] Compile time limit, can be increased
[ 1 ] Requires hardware virtualisation support
[ 2 ] Disabled by default (enable with hypervisor command line option). Not supported in production and doesn't have full security support
[ 3 ] Preview, due to limited tools support. Hypervisor side in good shape
[ 4 ] Disabled by default (enable with hypervisor command line option)
[ 5 ] Used as a fallback if blkback and/or blktap2 are not available
[ 6 ] See Xen ARM with Virtualization Extensions; basic functionality implemented; lack of real hardware to validate against
[ 7 ] tech preview, depending on test coverage in Xen Test Days