Archived/Xen Project Release Features 4.0 to 4.3
Legend: ✓: Feature ✓: Partial ✗: Removed
Overview
Xen 4.0 | Xen 4.1 | Xen 4.2 | Xen 4.3 | ||||||
---|---|---|---|---|---|---|---|---|---|
Initial Release | 7 April 2010 | 25 March 2011 | 17 Sept 2012 | 9 July 2013 | |||||
Supported until | ???[ 21 ] | ???[ 21 ] | ???[ 21 ] | Jan 2015 | |||||
Security support until | ???[ 21 ] | ???[ 21 ] | Sept 2015 | July 2016 | |||||
Feature List | FL 4.2 | FL 4.3 | |||||||
Release Notes | RN 4.0 | RN 4.1 | RN 4.2 | RN 4.3 | |||||
Supported Mainline Architectures for the hypervisor (Host) | |||||||||
IA-A32 | ✓ | ✓ | ✓ | ✗removed | |||||
X86-64 | ✓ | ✓ | ✓ | ✓ | |||||
Itanium (ia64) | ✓ | ✓deprecated in this release | ✓deprecated | ✗removed | |||||
ARM v7 + Virtualization Extensions | ✓preview [ 6 ] | ||||||||
ARM v8 | ✓preview [ 6 ] | ||||||||
Guest Types | |||||||||
For X86 Architectures | |||||||||
Paravirtualised Traditional Xen Project 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 |
✓ | ✓ | ✓ | ✓ | |||||
For ARM Architectures | |||||||||
ARM Guest Optimal combination of full virtualization and PV extensions |
✓preview [ 6 ] |
Limits
Xen 4.0 | Xen 4.1 | Xen 4.2 | Xen 4.3 | ||||||
---|---|---|---|---|---|---|---|---|---|
Host Limits | |||||||||
For X86 Architectures | |||||||||
Physical CPUs | 128 [ 0 ] | >255 | 4095 | 4095 | |||||
Physical RAM | 1TB | 5TB | 5TB | 16TB | |||||
For ARM Architectures | |||||||||
Physical CPUs | 8 | ||||||||
Physical RAM | 16GB | ||||||||
Guest Limits | |||||||||
X86 PV Guest Limits | |||||||||
Virtual CPUs | 128 | >255 | 512 | 512 | |||||
Virtual RAM | 512GB | 512GB | 512GB | 512GB | |||||
X86 HVM Guest Limits | |||||||||
Virtual CPUs | 128 | 128 | 128 | 128 | |||||
Virtual RAM | 1TB | 1TB | 1TB | 1TB | |||||
ARM Guest Limits | |||||||||
Virtual CPUs | 8 | ||||||||
Virtual RAM | 16GB | ||||||||
Number of event channels | |||||||||
Event Channels | 1024/4096 | 1024/4096 | 1024/4096 | 1024/4096 |
Toolstack and Tools
Xen 4.0 | Xen 4.1 | Xen 4.2 | Xen 4.3 | ||||||
---|---|---|---|---|---|---|---|---|---|
Toolstack | |||||||||
Built-in | |||||||||
xend / xm | ✓ | ✓ | ✓deprecated in this release | ✓deprecated | |||||
XL | ✓initial implementation | ✓preview release | ✓ | ✓ | |||||
Qemu based disk backend (qdisk) for XL |
✓ [ 5 ] | ✓ [ 5 ] | ✓ [ 5 ] | ||||||
XL Open vSwitch integration | ✓preview | ||||||||
3rd Party | |||||||||
libvirt driver for XL | ✓ | ✓ | ✓ | ||||||
Tooling | |||||||||
gdbsx debugger to debug ELF guests |
✓ | ✓ | ✓ | ✓ | |||||
vPMU Virtual Performance Management Unit for HVM guests |
✓ [ 4 ] | ✓ [ 4 ] | ✓ [ 4 ] | ✓ [ 4 ] | |||||
Serial console | ✓ | ✓ | ✓ | ✓Add EHCI debug support | |||||
xentrace performance analysis |
✓ | ✓ | ✓ | ✓ |
Features
Xen 4.0 | Xen 4.1 | Xen 4.2 | Xen 4.3 | ||||||
---|---|---|---|---|---|---|---|---|---|
Advanced Memory Management | |||||||||
Memory Ballooning | ✓ | ✓ | ✓ | ✓ | |||||
Memory Sharing allow sharing of identical pages between HVM guests |
✓preview | ✓preview | ✓preview [ 3 ] | ✓preview [ 3 ] | |||||
Memory Paging allow pages belonging to HVM guests to be paged to disk |
✓preview | ✓preview | ✓preview [ 3 ] | ✓preview [ 3 ] | |||||
TMEM - Transcendent Memory | ✓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 | ||||||
NUMA scheduler affinity | ✓ | ||||||||
Scalability | |||||||||
1GB/2MB super page support | ✓ | ✓ | ✓ | ||||||
Deliver events to PVHVM guests using Xen event channels | ✓ | ✓ | ✓ | ||||||
Fair locks (ticket-locks) | |||||||||
High Availability and Fault Tolerance | |||||||||
Live Migration, Save & Restore | ✓ | ✓ | ✓ | ✓ | |||||
Remus Fault Tolerance | ✓ | ✓ | ✓ | ✓ | |||||
X86 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 | ✓ | ✓ | ✓ | ✓ | |||||
Virtual Machine Introspection (Memaccess and VM Event APIs) 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 |
Interoperability / Hardware Support
Xen 4.0 | Xen 4.1 | Xen 4.2 | Xen 4.3 | ||||||
---|---|---|---|---|---|---|---|---|---|
X86 | |||||||||
X86 Nested Virtualisation Running a hypervisor inside an HVM guest |
✓experimental | ✓experimental | |||||||
HVM PXE Stack (x86) | gPXE | iPXE | iPXE | iPXE | |||||
Physical CPU Hotplug | ✓ | ✓ | ✓ | ✓ | |||||
Physical Memory Hotplug | ✓ | ✓ | ✓ | ✓ | |||||
Support for PV kernels in bzImage format | ✓ | ✓ | ✓ | ✓ | |||||
PCI Passthrough | ✓ | ✓ | ✓ | ✓ [ 12 ] | |||||
X86 Advanced Vector eXtension (AVX) | ✓ [ 4 ] | ✓ | ✓ |
Device Models and Virtual Firmware
Xen 4.0 | Xen 4.1 | Xen 4.2 | Xen 4.3 | ||||||
---|---|---|---|---|---|---|---|---|---|
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 |
✓preview | ✓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 ] | |||||||
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 |
✓ | ✓ |
Notes
[ 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
[ 12 ] Not yet supported on ARM; for a more detailed update on what is supported on ARM see here
[ 21 ] Dates for historical releases have not be researched.