Archived/Xen Project Release Features 4.0 to 4.3: Difference between revisions
Lars.kurth (talk | contribs) (Removed 4.4+ in archived page, section 1) |
Lars.kurth (talk | contribs) mNo edit summary |
||
(10 intermediate revisions by the same user not shown) | |||
Line 2: | Line 2: | ||
__TOC__ |
__TOC__ |
||
''Legend:'' |
|||
''Legend:'' {{Tick}}: Feature {{HalfDone}}: Partial {{NotDone}}: Removed |
|||
* {{Tick}}: Feature |
|||
* {{HalfDone}}: Partial |
|||
* {{NotDone}}: Removed |
|||
* For definitions of experimental, preview, supported and deprecated see [[Xen Project Release Features/Definitions|here]] |
|||
== Overview == |
== Overview == |
||
{|class="prettytable" style="text-align: left;" valign="top" |
{|class="prettytable" style="text-align: left; width: 100%" valign="top" |
||
!style="width: |
!style="width: 48%;"| |
||
!style="width: |
!style="width: 13%;"|Xen 4.0 |
||
!style="width: |
!style="width: 13%;"|Xen 4.1 |
||
!style="width: |
!style="width: 13%;"|Xen 4.2 |
||
!style="width: |
!style="width: 13%;"|Xen 4.3 |
||
|- |
|- |
||
|Initial Release |
|Initial Release |
||
Line 95: | Line 99: | ||
|{{Tick}} |
|{{Tick}} |
||
|{{Tick}} |
|{{Tick}} |
||
|- |
|||
|PVH Guest |
|||
| |
|||
| |
|||
| |
|||
| |
|||
|{{Tick}}<small>preview</small> |
|||
|- |
|- |
||
!colspan="10" style="background-color: #A9BCF5;"|For ARM Architectures |
!colspan="10" style="background-color: #A9BCF5;"|For ARM Architectures |
||
Line 116: | Line 113: | ||
== Limits == |
== Limits == |
||
{|class="prettytable" style="text-align: left;" valign="top" |
{|class="prettytable" style="text-align: left; width: 100%" valign="top" |
||
!style="width: |
!style="width: 48%;"| |
||
!style="width: |
!style="width: 13%;"|Xen 4.0 |
||
!style="width: |
!style="width: 13%;"|Xen 4.1 |
||
!style="width: |
!style="width: 13%;"|Xen 4.2 |
||
!style="width: |
!style="width: 13%;"|Xen 4.3 |
||
!style="width: 8%;"|Xen 4.4 |
|||
!style="width: 8%;"|Xen 4.5 |
|||
!style="width: 8%;"|Xen 4.6 |
|||
!style="width: 8%;"|Xen 4.7 |
|||
!style="width: 8%;"|Xen 4.8 |
|||
|- |
|- |
||
!colspan="10"|<big>Host Limits</big> |
!colspan="10"|<big>Host Limits</big> |
||
Line 135: | Line 127: | ||
|128 <sup>[ [[#Foot0|0]] ]</sup> |
|128 <sup>[ [[#Foot0|0]] ]</sup> |
||
|>255 |
|>255 |
||
|4095 |
|||
|4095 |
|||
|4095 |
|||
|4095 |
|||
|4095 |
|||
|4095 |
|4095 |
||
|4095 |
|4095 |
||
Line 147: | Line 134: | ||
|5TB |
|5TB |
||
|5TB |
|5TB |
||
|16TB |
|||
|16TB |
|||
|16TB |
|||
|16TB |
|||
|16TB |
|||
|16TB |
|16TB |
||
|- |
|- |
||
Line 161: | Line 143: | ||
| |
| |
||
|8 |
|8 |
||
|8 |
|||
|8 |
|||
|8 for 32bit; 128 for 64bit |
|||
|8 for 32bit; 128 for 64bit |
|||
|8 for 32bit; 128 for 64bit |
|||
|- |
|- |
||
|Physical RAM |
|Physical RAM |
||
Line 172: | Line 149: | ||
| |
| |
||
|16GB |
|16GB |
||
|16GB |
|||
|16GB for 32bit, 5TB for 64bit |
|||
|16GB for 32bit, 5TB for 64bit |
|||
|16GB for 32bit, 5TB for 64bit |
|||
|16GB for 32bit, 5TB for 64bit |
|||
|- |
|- |
||
!colspan="10"|<big>Guest Limits</big> |
!colspan="10"|<big>Guest Limits</big> |
||
Line 185: | Line 157: | ||
|128 |
|128 |
||
|>255 |
|>255 |
||
|512 |
|||
|512 |
|||
|512 |
|||
|512 |
|||
|512 |
|||
|512 |
|512 |
||
|512 |
|512 |
||
Line 198: | Line 165: | ||
|512GB |
|512GB |
||
|512GB |
|512GB |
||
|512GB |
|||
|512GB |
|||
|512GB |
|||
|> 1TB |
|||
|> 1TB |
|||
|- |
|- |
||
!colspan="10" style="background-color: #A9BCF5;"|X86 HVM Guest Limits |
!colspan="10" style="background-color: #A9BCF5;"|X86 HVM Guest Limits |
||
|- |
|- |
||
|Virtual CPUs |
|Virtual CPUs |
||
|128 |
|||
|128 |
|||
|128 |
|||
|128 |
|||
|128 |
|||
|128 |
|128 |
||
|128 |
|128 |
||
Line 218: | Line 175: | ||
|- |
|- |
||
|Virtual RAM |
|Virtual RAM |
||
|1TB |
|||
|1TB |
|||
|1TB |
|||
|1TB |
|||
|1TB |
|||
|1TB |
|1TB |
||
|1TB |
|1TB |
||
Line 235: | Line 187: | ||
| |
| |
||
|8 |
|8 |
||
|8 |
|||
|8 |
|||
|8 for 32bit; 128 for 64bit |
|||
|8 for 32bit; 128 for 64bit |
|||
|8 for 32bit; 128 for 64bit |
|||
|- |
|- |
||
|Virtual RAM |
|Virtual RAM |
||
Line 246: | Line 193: | ||
| |
| |
||
|16GB |
|16GB |
||
|16GB |
|||
|1TB <sup>[ [[#Foot7|7]] ]</sup> |
|||
|1TB <sup>[ [[#Foot7|7]] ]</sup> |
|||
|1TB <sup>[ [[#Foot7|7]] ]</sup> |
|||
|1TB <sup>[ [[#Foot7|7]] ]</sup> |
|||
|- |
|- |
||
!colspan="10" style="background-color: #A9BCF5;"|Number of event channels |
!colspan="10" style="background-color: #A9BCF5;"|Number of event channels |
||
Line 259: | Line 201: | ||
|1024/4096 |
|1024/4096 |
||
|1024/4096 |
|1024/4096 |
||
|131072 |
|||
|131072 |
|||
|131072 |
|||
|131072 |
|||
|131072 |
|||
|} |
|} |
||
Line 271: | Line 208: | ||
== Toolstack and Tools == |
== Toolstack and Tools == |
||
{|class="prettytable" style="text-align: left;" valign="top" |
{|class="prettytable" style="text-align: left; width: 100%" valign="top" |
||
!style="width: |
!style="width: 48%;"| |
||
!style="width: |
!style="width: 13%;"|Xen 4.0 |
||
!style="width: |
!style="width: 13%;"|Xen 4.1 |
||
!style="width: |
!style="width: 13%;"|Xen 4.2 |
||
!style="width: |
!style="width: 13%;"|Xen 4.3 |
||
!style="width: 8%;"|Xen 4.4 |
|||
!style="width: 8%;"|Xen 4.5 |
|||
!style="width: 8%;"|Xen 4.6 |
|||
!style="width: 8%;"|Xen 4.7 |
|||
!style="width: 8%;"|Xen 4.8 |
|||
|- |
|- |
||
!colspan="10"|<big>Toolstack</big> |
!colspan="10"|<big>Toolstack</big> |
||
Line 292: | Line 224: | ||
|{{Tick}}<small>deprecated in this release</small> |
|{{Tick}}<small>deprecated in this release</small> |
||
|{{Tick}}<small>deprecated</small> |
|{{Tick}}<small>deprecated</small> |
||
|{{Tick}}<small>deprecated</small> |
|||
|{{NotDone}}<small>removed</small> |
|||
|- |
|- |
||
|[[XL]] |
|[[XL]] |
||
|{{HalfDone}}<small>initial implementation</small> |
|{{HalfDone}}<small>initial implementation</small> |
||
|{{HalfDone}}<small>preview release</small> |
|{{HalfDone}}<small>preview release</small> |
||
|{{Tick}} |
|||
|{{Tick}} |
|||
|{{Tick}} |
|||
|{{Tick}} |
|||
|{{Tick}} |
|||
|{{Tick}} |
|{{Tick}} |
||
|{{Tick}} |
|{{Tick}} |
||
Line 308: | Line 233: | ||
|Qemu based disk backend (''qdisk'') for [[XL]]<br/> |
|Qemu based disk backend (''qdisk'') for [[XL]]<br/> |
||
| |
| |
||
|{{Tick}} <sup>[ [[#Foot5|5]] ]</sup> |
|||
|{{Tick}} <sup>[ [[#Foot5|5]] ]</sup> |
|||
|{{Tick}} <sup>[ [[#Foot5|5]] ]</sup> |
|||
|{{Tick}} <sup>[ [[#Foot5|5]] ]</sup> |
|||
|{{Tick}} <sup>[ [[#Foot5|5]] ]</sup> |
|||
|{{Tick}} <sup>[ [[#Foot5|5]] ]</sup> |
|{{Tick}} <sup>[ [[#Foot5|5]] ]</sup> |
||
|{{Tick}} <sup>[ [[#Foot5|5]] ]</sup> |
|{{Tick}} <sup>[ [[#Foot5|5]] ]</sup> |
||
Line 322: | Line 242: | ||
| |
| |
||
|{{Tick}}<small>preview</small> |
|{{Tick}}<small>preview</small> |
||
|{{Tick}} |
|||
|{{Tick}} |
|||
|{{Tick}} |
|||
|{{Tick}} |
|||
|{{Tick}} |
|||
|- |
|||
|[http://en.wikipedia.org/wiki/Systemd systemd] support |
|||
| |
|||
| |
|||
| |
|||
| |
|||
| |
|||
|{{Tick}} |
|||
|{{Tick}} |
|||
|{{Tick}} |
|||
|{{Tick}} |
|||
|- |
|||
|JSON support |
|||
| |
|||
| |
|||
| |
|||
| |
|||
| |
|||
|{{HalfDone}}<small>infrastructure only, no tools support</small> |
|||
|{{HalfDone}}<small>infrastructure only, no tools support</small> |
|||
|{{HalfDone}}<small>infrastructure only, no tools support</small> |
|||
|{{HalfDone}}<small>infrastructure only, no tools support</small> |
|||
|- |
|||
|[https://en.wikipedia.org/wiki/Advanced_Host_Controller_Interface AHCI] support |
|||
| |
|||
| |
|||
| |
|||
| |
|||
| |
|||
| |
|||
| {{Tick}} |
|||
| {{Tick}} |
|||
| {{Tick}} |
|||
|- |
|||
|PVUSB |
|||
| |
|||
| |
|||
| |
|||
| |
|||
| |
|||
| |
|||
| |
|||
| {{Tick}} |
|||
| {{Tick}} |
|||
|- |
|||
|HVM USB passthrough |
|||
| |
|||
| |
|||
| |
|||
| |
|||
| |
|||
| |
|||
| |
|||
| |
|||
| {{Tick}} |
|||
|- |
|||
|QEMU backend hotplugging |
|||
| |
|||
| |
|||
| |
|||
| |
|||
| |
|||
| |
|||
| |
|||
| {{Tick}} |
|||
| {{Tick}} |
|||
|- |
|||
|Soft-Reset |
|||
| |
|||
| |
|||
| |
|||
| |
|||
| |
|||
| |
|||
| |
|||
| {{Tick}} |
|||
| {{Tick}} |
|||
|- |
|- |
||
!colspan="10" style="background-color: #A9BCF5;"|3rd Party |
!colspan="10" style="background-color: #A9BCF5;"|3rd Party |
||
Line 412: | Line 250: | ||
|{{Tick}} |
|{{Tick}} |
||
|{{Tick}} |
|{{Tick}} |
||
|{{Tick}} |
|||
|{{Tick}} |
|||
|{{Tick}}<sup>[ [[#Foot16|16]] ]</sup> |
|||
|{{Tick}}<sup>[ [[#Foot16|16]] ]</sup> |
|||
|{{Tick}}<sup>[ [[#Foot16|16]] ]</sup> |
|||
|- |
|- |
||
!colspan="10" style="background-color: #A9BCF5;"|Tooling |
!colspan="10" style="background-color: #A9BCF5;"|Tooling |
||
Line 425: | Line 258: | ||
|{{Tick}} |
|{{Tick}} |
||
|{{Tick}} |
|{{Tick}} |
||
|{{Tick}} |
|||
|{{Tick}}<sup>[ [[#Foot12|12]] ]</sup> |
|||
|{{Tick}}<sup>[ [[#Foot12|12]] ]</sup> |
|||
|{{Tick}}<sup>[ [[#Foot12|12]] ]</sup> |
|||
|{{Tick}}<sup>[ [[#Foot12|12]] ]</sup> |
|||
|- |
|- |
||
|vPMU<br/><small>Virtual Performance Management Unit for HVM guests</small> |
|vPMU<br/><small>Virtual Performance Management Unit for HVM guests</small> |
||
Line 436: | Line 264: | ||
|{{Tick}} <sup>[ [[#Foot4|4]] ]</sup> |
|{{Tick}} <sup>[ [[#Foot4|4]] ]</sup> |
||
|{{Tick}} <sup>[ [[#Foot4|4]] ]</sup> |
|{{Tick}} <sup>[ [[#Foot4|4]] ]</sup> |
||
|{{Tick}} <sup>[ [[#Foot4|4]] ]</sup> |
|||
|{{Tick}} <sup>[ [[#Foot4|4]] ]</sup><sup>[ [[#Foot12|12]] ]</sup> |
|||
|{{Tick}} <sup>[ [[#Foot4|4]] ]</sup><sup>[ [[#Foot12|12]] ]</sup> |
|||
|{{Tick}} <sup>[ [[#Foot4|4]] ]</sup><sup>[ [[#Foot12|12]] ]</sup> |
|||
|{{Tick}} <sup>[ [[#Foot4|4]] ]</sup><sup>[ [[#Foot12|12]] ]</sup> |
|||
|- |
|- |
||
|[[Xen_Serial_Console|Serial console]] |
|[[Xen_Serial_Console|Serial console]] |
||
Line 447: | Line 270: | ||
|{{Tick}} |
|{{Tick}} |
||
|{{Tick}}<small>Add EHCI debug support</small> |
|{{Tick}}<small>Add EHCI debug support</small> |
||
|{{Tick}} |
|||
|{{Tick}}<small>Add Oxford PCIe, and Broadcom TrueManage support</small> |
|||
|{{Tick}} |
|||
|{{Tick}} |
|||
|{{Tick}} |
|||
|- |
|- |
||
|xentrace<br/><small>performance analysis</small> |
|xentrace<br/><small>performance analysis</small> |
||
|{{Tick}} |
|{{Tick}} |
||
|{{Tick}} |
|{{Tick}} |
||
|{{Tick}} |
|||
|{{Tick}} |
|||
|{{Tick}} |
|||
|{{Tick}}<sup>[ [[#Foot12|12]] ]</sup> |
|||
|{{Tick}}<small>Added Xenalyze</small> |
|||
|{{Tick}} |
|{{Tick}} |
||
|{{Tick}} |
|{{Tick}} |
||
Line 469: | Line 282: | ||
== Features == |
== Features == |
||
{|class="prettytable" style="text-align: left;" valign="top" |
{|class="prettytable" style="text-align: left; width: 100%" valign="top" |
||
!style="width: |
!style="width: 48%;"| |
||
!style="width: |
!style="width: 13%;"|Xen 4.0 |
||
!style="width: |
!style="width: 13%;"|Xen 4.1 |
||
!style="width: |
!style="width: 13%;"|Xen 4.2 |
||
!style="width: |
!style="width: 13%;"|Xen 4.3 |
||
!style="width: 8%;"|Xen 4.4 |
|||
!style="width: 8%;"|Xen 4.5 |
|||
!style="width: 8%;"|Xen 4.6 |
|||
!style="width: 8%;"|Xen 4.7 |
|||
!style="width: 8%;"|Xen 4.8 |
|||
|- |
|- |
||
!colspan="10" style="background-color: #A9BCF5;"|Advanced Memory Management |
!colspan="10" style="background-color: #A9BCF5;"|Advanced Memory Management |
||
|- |
|- |
||
|Memory Ballooning |
|Memory Ballooning |
||
|{{Tick}} |
|||
|{{Tick}} |
|||
|{{Tick}} |
|||
|{{Tick}} |
|||
|{{Tick}} |
|||
|{{Tick}} |
|{{Tick}} |
||
|{{Tick}} |
|{{Tick}} |
||
Line 499: | Line 302: | ||
|{{HalfDone}}<small>preview</small> <sup>[ [[#Foot3|3]] ]</sup> |
|{{HalfDone}}<small>preview</small> <sup>[ [[#Foot3|3]] ]</sup> |
||
|{{HalfDone}}<small>preview</small> <sup>[ [[#Foot3|3]] ]</sup> |
|{{HalfDone}}<small>preview</small> <sup>[ [[#Foot3|3]] ]</sup> |
||
|{{HalfDone}}<small>preview</small> <sup>[ [[#Foot3|3]] ]</sup> |
|||
|{{HalfDone}}<small>preview</small> <sup>[ [[#Foot3|3]] ]</sup><sup>[ [[#Foot12|12]] ]</sup> |
|||
|{{HalfDone}}<small>preview</small> <sup>[ [[#Foot3|3]] ]</sup><sup>[ [[#Foot12|12]] ]</sup> |
|||
|{{HalfDone}}<small>preview</small> <sup>[ [[#Foot3|3]] ]</sup><sup>[ [[#Foot12|12]] ]</sup> |
|||
|{{HalfDone}}<small>preview</small> <sup>[ [[#Foot3|3]] ]</sup><sup>[ [[#Foot12|12]] ]</sup> |
|||
|- |
|- |
||
|Memory Paging<br/><small>allow pages belonging to HVM guests to be paged to disk</small> |
|Memory Paging<br/><small>allow pages belonging to HVM guests to be paged to disk</small> |
||
Line 510: | Line 308: | ||
|{{HalfDone}}<small>preview</small> <sup>[ [[#Foot3|3]] ]</sup> |
|{{HalfDone}}<small>preview</small> <sup>[ [[#Foot3|3]] ]</sup> |
||
|{{HalfDone}}<small>preview</small> <sup>[ [[#Foot3|3]] ]</sup> |
|{{HalfDone}}<small>preview</small> <sup>[ [[#Foot3|3]] ]</sup> |
||
|{{HalfDone}}<small>preview</small> <sup>[ [[#Foot3|3]] ]</sup> |
|||
|{{HalfDone}}<small>preview</small> <sup>[ [[#Foot3|3]] ]</sup><sup>[ [[#Foot12|12]] ]</sup> |
|||
|{{HalfDone}}<small>preview</small> <sup>[ [[#Foot3|3]] ]</sup><sup>[ [[#Foot12|12]] ]</sup> |
|||
|{{HalfDone}}<small>preview</small> <sup>[ [[#Foot3|3]] ]</sup><sup>[ [[#Foot12|12]] ]</sup> |
|||
|{{HalfDone}}<small>preview</small> <sup>[ [[#Foot3|3]] ]</sup><sup>[ [[#Foot12|12]] ]</sup> |
|||
|- |
|- |
||
|[http://oss.oracle.com/projects/tmem/ TMEM] - Transcendent Memory |
|[http://oss.oracle.com/projects/tmem/ TMEM] - Transcendent Memory |
||
Line 521: | Line 314: | ||
|{{HalfDone}}<small>experimental</small> <sup>[ [[#Foot2|2]] ]</sup> |
|{{HalfDone}}<small>experimental</small> <sup>[ [[#Foot2|2]] ]</sup> |
||
|{{HalfDone}}<small>experimental</small> <sup>[ [[#Foot2|2]] ]</sup> |
|{{HalfDone}}<small>experimental</small> <sup>[ [[#Foot2|2]] ]</sup> |
||
|{{HalfDone}}<small>experimental</small> <sup>[ [[#Foot2|2]] ]</sup> |
|||
|{{HalfDone}}<small>experimental</small> <sup>[ [[#Foot2|2]] ]</sup><sup>[ [[#Foot12|12]] ]</sup> |
|||
|{{HalfDone}}<small>experimental</small> <sup>[ [[#Foot2|2]] ]</sup><sup>[ [[#Foot12|12]] ]</sup> |
|||
|{{HalfDone}}<small>experimental</small> <sup>[ [[#Foot2|2]] ]</sup><sup>[ [[#Foot12|12]] ]</sup> |
|||
|{{HalfDone}}<small>experimental</small> <sup>[ [[#Foot2|2]] ]</sup><sup>[ [[#Foot12|12]] ]</sup> |
|||
|- |
|- |
||
!colspan="10" style="background-color: #A9BCF5;"|[[:Category:Resource Management|Resource Management]] |
!colspan="10" style="background-color: #A9BCF5;"|[[:Category:Resource Management|Resource Management]] |
||
Line 532: | Line 320: | ||
| |
| |
||
|{{HalfDone}} |
|{{HalfDone}} |
||
|{{Tick}} |
|||
|{{Tick}} |
|||
|{{Tick}} |
|||
|{{Tick}} |
|||
|{{Tick}} |
|||
|{{Tick}} |
|{{Tick}} |
||
|{{Tick}} |
|{{Tick}} |
||
Line 545: | Line 328: | ||
|{{HalfDone}}<small>prototype</small> |
|{{HalfDone}}<small>prototype</small> |
||
|{{HalfDone}}<small>experimental</small> |
|{{HalfDone}}<small>experimental</small> |
||
|{{HalfDone}}<small>experimental</small> |
|||
|{{HalfDone}}<small>experimental</small> |
|||
|{{HalfDone}}<small>experimental</small> |
|||
|{{HalfDone}}<small>experimental (significant additions)</small> |
|||
|{{Tick}} |
|||
|- |
|||
|[[RTDS-Based-Scheduler|RTDS Based Scheduler]]<br/><small>Real-time CPU scheduler built to provide guaranteed CPU capacity to guest VMs on SMP hosts.</small> |
|||
| |
|||
| |
|||
| |
|||
| |
|||
| |
|||
|{{HalfDone}}<small>experimental</small> |
|||
|{{HalfDone}}<small>experimental</small> |
|||
|{{HalfDone}}<small>experimental (significant additions)</small> |
|||
|{{HalfDone}}<small>experimental</small> |
|||
|- |
|- |
||
|[[Xen_Numa_Scheduling_and_Placement|NUMA scheduler affinity]] |
|[[Xen_Numa_Scheduling_and_Placement|NUMA scheduler affinity]] |
||
Line 567: | Line 335: | ||
| |
| |
||
|{{Tick}} |
|{{Tick}} |
||
|{{Tick}} |
|||
|{{Tick}} <sup>[ [[#Foot12|12]] ]</sup> |
|||
|{{Tick}} <sup>[ [[#Foot12|12]] ]</sup> |
|||
|{{Tick}} <sup>[ [[#Foot12|12]] ]</sup> |
|||
|{{Tick}} <sup>[ [[#Foot12|12]] ]</sup> |
|||
|- |
|- |
||
!colspan="10" style="background-color: #A9BCF5;"|Scalability |
!colspan="10" style="background-color: #A9BCF5;"|Scalability |
||
Line 577: | Line 340: | ||
|1GB/2MB super page support |
|1GB/2MB super page support |
||
| |
| |
||
|{{Tick}} |
|||
|{{Tick}} |
|||
|{{Tick}} |
|||
|{{Tick}} |
|||
|{{Tick}} |
|||
|{{Tick}} |
|{{Tick}} |
||
|{{Tick}} |
|{{Tick}} |
||
Line 588: | Line 346: | ||
|Deliver events to PVHVM guests using Xen event channels |
|Deliver events to PVHVM guests using Xen event channels |
||
| |
| |
||
|{{Tick}} |
|||
|{{Tick}} |
|||
|{{Tick}} |
|||
|{{Tick}} |
|||
|{{Tick}} |
|||
|{{Tick}} |
|{{Tick}} |
||
|{{Tick}} |
|{{Tick}} |
||
Line 602: | Line 355: | ||
| |
| |
||
| |
| |
||
| |
|||
| |
|||
|{{Tick}} |
|||
|{{Tick}} |
|||
|{{Tick}} |
|||
|- |
|- |
||
!colspan="10" style="background-color: #A9BCF5;"|High Availability and Fault Tolerance |
!colspan="10" style="background-color: #A9BCF5;"|High Availability and Fault Tolerance |
||
Line 615: | Line 363: | ||
|{{Tick}} |
|{{Tick}} |
||
|{{Tick}} |
|{{Tick}} |
||
|{{Tick}} |
|||
|{{Tick}} <sup>[ [[#Foot12|12]] ]</sup> |
|||
|{{Tick}} <sup>[ [[#Foot18|18]] ]</sup> <small>Migration v2</small> |
|||
|{{Tick}} <sup>[ [[#Foot23|23]] ]</sup> |
|||
|{{Tick}} <sup>[ [[#Foot23|23]] ]</sup> |
|||
|- |
|- |
||
|[[Remus]] Fault Tolerance |
|[[Remus]] Fault Tolerance |
||
|{{Tick}} |
|{{Tick}} |
||
|{{Tick}} |
|{{Tick}} |
||
|{{Tick}} |
|||
|{{Tick}} |
|||
|{{Tick}} |
|||
|{{Tick}} <small>improvements <br/>for [[COLO_-_Coarse_Grain_Lock_Stepping|COLO]]</small> <sup>[ [[#Foot10|10]] ]</sup><sup>[ [[#Foot12|12]] ]</sup> |
|||
|{{Tick}} <small>Remus ported to Migration v2</small> |
|||
|{{Tick}} |
|{{Tick}} |
||
|{{Tick}} |
|{{Tick}} |
||
|- |
|||
|[[COLO_-_Coarse_Grain_Lock_Stepping|COLO Manager]] |
|||
| |
|||
| |
|||
| |
|||
| |
|||
| |
|||
| |
|||
| |
|||
|{{HalfDone}} <small>experimental</small> <sup>[ [[#Foot24|24]] ]</sup> |
|||
|{{HalfDone}} <small>experimental</small> <sup>[ [[#Foot24|24]] ]</sup> |
|||
|- |
|- |
||
|X86 vMCE<br/><small>Forward Machine Check Exceptions to Appropriate guests</small> |
|X86 vMCE<br/><small>Forward Machine Check Exceptions to Appropriate guests</small> |
||
| |
| |
||
| |
| |
||
|{{Tick}} |
|||
|{{Tick}} |
|||
|{{Tick}} |
|||
|{{Tick}} |
|||
|{{Tick}} |
|||
|{{Tick}} |
|{{Tick}} |
||
|{{Tick}} |
|{{Tick}} |
||
Line 657: | Line 379: | ||
|- |
|- |
||
|[[Blktap2]] |
|[[Blktap2]] |
||
|{{Tick}} |
|||
|{{Tick}} |
|||
|{{Tick}} |
|||
|{{Tick}} |
|||
|{{Tick}} |
|||
|{{Tick}} |
|{{Tick}} |
||
|{{Tick}} |
|{{Tick}} |
||
Line 668: | Line 385: | ||
|- |
|- |
||
|Online resize of virtual disks |
|Online resize of virtual disks |
||
|{{Tick}} |
|||
|{{Tick}} |
|||
|{{Tick}} |
|||
|{{Tick}} |
|||
|{{Tick}} |
|||
|{{Tick}} |
|{{Tick}} |
||
|{{Tick}} |
|{{Tick}} |
||
Line 681: | Line 393: | ||
|- |
|- |
||
|[[Driver_Domain|Driver Domains]] |
|[[Driver_Domain|Driver Domains]] |
||
|{{Tick}} |
|||
|{{Tick}} |
|||
|{{Tick}} |
|||
|{{Tick}} |
|||
|{{Tick}} |
|||
|{{Tick}} |
|{{Tick}} |
||
|{{Tick}} |
|{{Tick}} |
||
Line 696: | Line 403: | ||
|{{Tick}} |
|{{Tick}} |
||
|{{Tick}} |
|{{Tick}} |
||
|{{Tick}} |
|||
|{{Tick}}<sup>[ [[#Foot12|12]] ]</sup> |
|||
|{{Tick}}<sup>[ [[#Foot12|12]] ]</sup><sup>[ [[#Foot17|17]] ]</sup> |
|||
|{{Tick}}<sup>[ [[#Foot12|12]] ]</sup><sup>[ [[#Foot17|17]] ]</sup> |
|||
|{{Tick}}<sup>[ [[#Foot12|12]] ]</sup><sup>[ [[#Foot17|17]] ]</sup> |
|||
|- |
|||
|[[Kconfig|Kconfig]] |
|||
| |
|||
| |
|||
| |
|||
| |
|||
| |
|||
| |
|||
| |
|||
|{{HalfDone}} <small>experimental</small> |
|||
|{{Tick}} <small>experimental</small> |
|||
|- |
|||
|[[LivePatch|Live Patching]] |
|||
| |
|||
| |
|||
| |
|||
| |
|||
| |
|||
| |
|||
| |
|||
|{{HalfDone}} <small>preview</small> <sup>[ [[#Foot22|22]] ]</sup> |
|||
|{{Tick}} <small>preview (added ARM support)</small> |
|||
|- |
|- |
||
|[[Virtual Machine Introspection]] (Memaccess and VM Event APIs)<br/><small>enabling integration of 3rd party security solutions into Xen virtualized environments</small> |
|[[Virtual Machine Introspection]] (Memaccess and VM Event APIs)<br/><small>enabling integration of 3rd party security solutions into Xen virtualized environments</small> |
||
Line 729: | Line 409: | ||
|{{Tick}} |
|{{Tick}} |
||
|{{Tick}} |
|{{Tick}} |
||
|{{Tick}} |
|||
|{{Tick}} <small>improvements</small><sup>[ [[#Foot12|12]] ]</sup> |
|||
|{{Tick}} <sup>[ [[#Foot19|19]] ]</sup> <small>reworked with ARM support, added VM Event APIs</small> |
|||
|{{Tick}} <small>improvements</small> |
|||
|{{Tick}} |
|||
|- |
|- |
||
|[[Xen Security Modules : XSM-FLASK|XSM & FLASK]]<br/><small>mandatory access control policy providing fine-grained controls over Xen domains, similar to SELinux</small> |
|[[Xen Security Modules : XSM-FLASK|XSM & FLASK]]<br/><small>mandatory access control policy providing fine-grained controls over Xen domains, similar to SELinux</small> |
||
Line 740: | Line 415: | ||
|{{Tick}} |
|{{Tick}} |
||
|{{Tick}} |
|{{Tick}} |
||
|{{Tick}} |
|||
|{{Tick}} |
|||
|{{Tick}} <sup>[ [[#Foot17|17]] ]</sup> |
|||
|{{Tick}} <sup>[ [[#Foot17|17]] ]</sup> |
|||
|{{Tick}} <sup>[ [[#Foot17|17]] ]</sup> |
|||
|- |
|- |
||
|[[Xen Security Modules : XSM-FLASK|XSM & FLASK]] support for IS_PRIV |
|[[Xen Security Modules : XSM-FLASK|XSM & FLASK]] support for IS_PRIV |
||
Line 751: | Line 421: | ||
| |
| |
||
|{{Tick}} |
|{{Tick}} |
||
|{{Tick}} |
|||
|{{Tick}} |
|||
|{{Tick}} <sup>[ [[#Foot17|17]] ]</sup> |
|||
|{{Tick}} <sup>[ [[#Foot17|17]] ]</sup> |
|||
|{{Tick}} <sup>[ [[#Foot17|17]] ]</sup> |
|||
|- |
|- |
||
|[[Virtual Trusted Platform Module (vTPM)|vTPM Support]]<br/> |
|[[Virtual Trusted Platform Module (vTPM)|vTPM Support]]<br/> |
||
Line 762: | Line 427: | ||
|{{Tick}} |
|{{Tick}} |
||
|{{Tick}}<br/><small>updates and new functionality</small> |
|{{Tick}}<br/><small>updates and new functionality</small> |
||
|{{Tick}} |
|||
|{{Tick}} |
|||
|{{Tick}} <small> vTPM 2.0</small> |
|||
|{{Tick}} |
|||
|{{Tick}} |
|||
|} |
|} |
||
Line 773: | Line 433: | ||
== Interoperability / Hardware Support == |
== Interoperability / Hardware Support == |
||
{|class="prettytable" style="text-align: left;" valign="top" |
{|class="prettytable" style="text-align: left; width: 100%;" valign="top" |
||
!style="width: |
!style="width: 48%;"| |
||
!style="width: |
!style="width: 13%;"|Xen 4.0 |
||
!style="width: |
!style="width: 13%;"|Xen 4.1 |
||
!style="width: |
!style="width: 13%;"|Xen 4.2 |
||
!style="width: |
!style="width: 13%;"|Xen 4.3 |
||
!style="width: 8%;"|Xen 4.4 |
|||
!style="width: 8%;"|Xen 4.5 |
|||
!style="width: 8%;"|Xen 4.6 |
|||
!style="width: 8%;"|Xen 4.7 |
|||
!style="width: 8%;"|Xen 4.8 |
|||
|- |
|- |
||
!colspan="10" style="background-color: #A9BCF5;"|X86 |
!colspan="10" style="background-color: #A9BCF5;"|X86 |
||
Line 792: | Line 447: | ||
|{{HalfDone}}<small>experimental</small> |
|{{HalfDone}}<small>experimental</small> |
||
|{{HalfDone}}<small>experimental</small> |
|{{HalfDone}}<small>experimental</small> |
||
|{{HalfDone}}<small>preview</small> |
|||
|{{HalfDone}}<small>preview</small> <sup>[ [[#Foot11|11]] ]</sup> |
|||
|{{HalfDone}}<small>preview</small> <sup>[ [[#Foot11|11]] ]</sup> |
|||
|{{HalfDone}}<small>preview</small> <sup>[ [[#Foot11|11]] ]</sup> |
|||
|{{HalfDone}}<small>preview</small> <sup>[ [[#Foot11|11]] ]</sup> |
|||
|- |
|- |
||
|HVM PXE Stack (x86) |
|HVM PXE Stack (x86) |
||
|gPXE |
|gPXE |
||
|[http://ipxe.org iPXE] |
|||
|[http://ipxe.org iPXE] |
|||
|[http://ipxe.org iPXE] |
|||
|[http://ipxe.org iPXE] |
|||
|[http://ipxe.org iPXE] |
|||
|[http://ipxe.org iPXE] |
|[http://ipxe.org iPXE] |
||
|[http://ipxe.org iPXE] |
|[http://ipxe.org iPXE] |
||
Line 814: | Line 459: | ||
|{{Tick}} |
|{{Tick}} |
||
|{{Tick}} |
|{{Tick}} |
||
|{{Tick}} |
|||
|{{Tick}}<sup>[ [[#Foot12|12]] ]</sup> |
|||
|{{Tick}}<sup>[ [[#Foot12|12]] ]</sup> |
|||
|{{Tick}}<sup>[ [[#Foot12|12]] ]</sup> |
|||
|{{Tick}}<sup>[ [[#Foot12|12]] ]</sup> |
|||
|- |
|- |
||
|Physical Memory Hotplug |
|Physical Memory Hotplug |
||
Line 825: | Line 465: | ||
|{{Tick}} |
|{{Tick}} |
||
|{{Tick}} |
|{{Tick}} |
||
|{{Tick}} |
|||
|{{Tick}}<sup>[ [[#Foot12|12]] ]</sup> |
|||
|{{Tick}}<sup>[ [[#Foot12|12]] ]</sup> |
|||
|{{Tick}}<sup>[ [[#Foot12|12]] ]</sup> |
|||
|{{Tick}}<sup>[ [[#Foot12|12]] ]</sup> |
|||
|- |
|- |
||
|Support for PV kernels in bzImage format |
|Support for PV kernels in bzImage format |
||
Line 836: | Line 471: | ||
|{{Tick}} |
|{{Tick}} |
||
|{{Tick}} |
|{{Tick}} |
||
|{{Tick}} |
|||
|{{Tick}}<sup>[ [[#Foot12|12]] ]</sup> |
|||
|{{Tick}}<sup>[ [[#Foot12|12]] ]</sup> |
|||
|{{Tick}}<sup>[ [[#Foot12|12]] ]</sup> |
|||
|{{Tick}}<sup>[ [[#Foot12|12]] ]</sup> |
|||
|- |
|- |
||
|[[Xen PCI Passthrough|PCI Passthrough]] |
|[[Xen PCI Passthrough|PCI Passthrough]] |
||
Line 846: | Line 476: | ||
|{{Tick}} |
|{{Tick}} |
||
|{{Tick}} |
|{{Tick}} |
||
|{{Tick}} <sup>[ [[#Foot12|12]] ]</sup> |
|||
|{{Tick}} <sup>[ [[#Foot12|12]] ]</sup> |
|||
|{{Tick}} <sup>[ [[#Foot12|12]] ]</sup><sup>[ [[#Foot13|13]] ]</sup> |
|||
|{{Tick}} <sup>[ [[#Foot12|12]] ]</sup> |
|||
|{{Tick}} <sup>[ [[#Foot12|12]] ]</sup> |
|||
|{{Tick}} <sup>[ [[#Foot12|12]] ]</sup> |
|{{Tick}} <sup>[ [[#Foot12|12]] ]</sup> |
||
|- |
|- |
||
Line 857: | Line 482: | ||
|{{Tick}} <sup>[ [[#Foot4|4]] ]</sup> |
|{{Tick}} <sup>[ [[#Foot4|4]] ]</sup> |
||
|{{Tick}} |
|{{Tick}} |
||
|{{Tick}} |
|||
|{{Tick}} |
|||
|{{Tick}} |
|||
|{{Tick}} |
|||
|{{Tick}} |
|||
|{{Tick}} <small>AVX-512</small> |
|||
|- |
|||
|[[Intel Platform QoS Technologies]] |
|||
| |
|||
| |
|||
| |
|||
| |
|||
| |
|||
|{{HalfDone}} <small>preview: CMT</small> |
|||
|{{HalfDone}} <small>preview: CAT, MBM</small> |
|||
|{{HalfDone}} <small>preview: CDP</small> |
|||
|{{Tick}} <small>preview: CDP</small> |
|||
|- |
|||
|Other Intel® Xeon® Features |
|||
| |
|||
| |
|||
| |
|||
| |
|||
| |
|||
| |
|||
| |
|||
|{{Tick}} <sup>[ [[#Foot25|25]] ]</sup> |
|||
|{{Tick}} <sup>[ [[#Foot25|25]] ]</sup> |
|||
|- |
|||
!colspan="10" style="background-color: #A9BCF5;"|ARM |
|||
|- |
|||
|64K Guest Pages |
|||
| |
|||
| |
|||
| |
|||
| |
|||
| |
|||
| |
|||
|{{Tick}} |
|||
|{{Tick}} |
|||
|{{Tick}} |
|||
|- |
|||
| ACPI / SBBR Compliance |
|||
| |
|||
| |
|||
| |
|||
| |
|||
| |
|||
| |
|||
| |
|||
|{{HalfDone}} <small>experimental; ACPI 6.0+</small> |
|||
|{{Tick}} <small>experimental</small> |
|||
|- |
|||
| ACPI guest support |
|||
| |
|||
| |
|||
| |
|||
| |
|||
| |
|||
| |
|||
| |
|||
| |
|||
|{{Tick}} <small>with UEFI</small> |
|||
|- |
|||
| PCSI Compatibility |
|||
| |
|||
| |
|||
| |
|||
| |
|||
| |
|||
|{{Tick}} <small>v0.1 & 0.2</small> |
|||
|{{Tick}} |
|{{Tick}} |
||
|{{Tick}} <small>v1.0</small> |
|||
|{{Tick}} <small>v1.0</small> |
|||
|- |
|||
| ARM® Interrupt Virtualization |
|||
| |
|||
| |
|||
| |
|||
| |
|||
| |
|||
|{{Tick}} <small>GiC v2</small> |
|||
|{{Tick}} <small>GiC v2m/GiC v3</small> |
|||
|{{Tick}} <small>improvements to v2/v3</small> |
|||
|{{Tick}} |
|||
|- |
|||
| Wallclock support |
|||
| |
|||
| |
|||
| |
|||
| |
|||
| |
|||
| |
|||
| |
|||
|{{Tick}} |
|||
|{{Tick}} |
|||
|- |
|||
|} |
|} |
||
Line 961: | Line 489: | ||
== Device Models and Virtual Firmware == |
== Device Models and Virtual Firmware == |
||
{|class="prettytable" style="text-align: left;" valign="top" |
{|class="prettytable" style="text-align: left; width: 100%" valign="top" |
||
!style="width: |
!style="width: 48%;"| |
||
!style="width: |
!style="width: 13%;"|Xen 4.0 |
||
!style="width: |
!style="width: 13%;"|Xen 4.1 |
||
!style="width: |
!style="width: 13%;"|Xen 4.2 |
||
!style="width: |
!style="width: 13%;"|Xen 4.3 |
||
!style="width: 8%;"|Xen 4.4 |
|||
!style="width: 8%;"|Xen 4.5 |
|||
!style="width: 8%;"|Xen 4.6 |
|||
!style="width: 8%;"|Xen 4.7 |
|||
!style="width: 8%;"|Xen 4.8 |
|||
|- |
|- |
||
!colspan="10"|<big>Device Models and Virtual Firmware for HVM guests</big> |
!colspan="10"|<big>Device Models and Virtual Firmware for HVM guests</big> |
||
Line 978: | Line 501: | ||
|- |
|- |
||
|Traditional Device Model<br/><small>Device emulator based on Xen fork of Qemu</small> |
|Traditional Device Model<br/><small>Device emulator based on Xen fork of Qemu</small> |
||
|{{Tick}} |
|||
|{{Tick}} |
|||
|{{Tick}} |
|||
|{{Tick}} |
|||
|{{Tick}} |
|||
|{{Tick}} |
|{{Tick}} |
||
|{{Tick}} |
|{{Tick}} |
||
Line 992: | Line 510: | ||
| |
| |
||
|{{HalfDone}}<small>preview</small> |
|{{HalfDone}}<small>preview</small> |
||
|{{Tick}}<small>default, unless [[Device_Model_Stub_Domains|stubdomains]] are used</small> |
|||
|{{Tick}}<small>default, unless [[Device_Model_Stub_Domains|stubdomains]] are used</small> |
|||
|{{Tick}}<small>default, unless [[Device_Model_Stub_Domains|stubdomains]] are used</small> |
|||
|{{Tick}}<small>default, unless [[Device_Model_Stub_Domains|stubdomains]] are used</small> |
|||
|{{Tick}}<small>default, unless [[Device_Model_Stub_Domains|stubdomains]] are used</small> |
|||
|{{Tick}}<small>default, unless [[Device_Model_Stub_Domains|stubdomains]] are used</small> |
|{{Tick}}<small>default, unless [[Device_Model_Stub_Domains|stubdomains]] are used</small> |
||
|- |
|- |
||
|ROMBIOS<br/><small>BIOS used with traditional device model only</small> |
|ROMBIOS<br/><small>BIOS used with traditional device model only</small> |
||
|{{Tick}} |
|||
|{{Tick}} |
|||
|{{Tick}} |
|||
|{{Tick}} |
|||
|{{Tick}} |
|||
|{{Tick}} |
|{{Tick}} |
||
|{{Tick}} |
|{{Tick}} |
||
Line 1,013: | Line 521: | ||
| |
| |
||
| |
| |
||
|{{Tick}} |
|||
|{{Tick}} |
|||
|{{Tick}} |
|||
|{{Tick}} |
|||
|{{Tick}} |
|||
|{{Tick}} |
|{{Tick}} |
||
|{{Tick}} |
|{{Tick}} |
||
Line 1,026: | Line 529: | ||
|{{Tick}}<small>experimental</small> <sup>[ [[#Foot4|4]] ]</sup> |
|{{Tick}}<small>experimental</small> <sup>[ [[#Foot4|4]] ]</sup> |
||
|{{Tick}}<small>experimental</small> <sup>[ [[#Foot4|4]] ]</sup> |
|{{Tick}}<small>experimental</small> <sup>[ [[#Foot4|4]] ]</sup> |
||
|{{Tick}}<small>experimental</small> <sup>[ [[#Foot4|4]] ]</sup> |
|||
|{{Tick}}<small>experimental</small> <sup>[ [[#Foot4|4]] ]</sup> |
|||
|{{Tick}}<small>experimental</small> <sup>[ [[#Foot4|4]] ] + ARM support</sup> |
|||
|{{Tick}}<small>experimental</small> <sup>[ [[#Foot4|4]] ] + ARM support</sup> |
|||
|{{Tick}}<small>experimental</small> <sup>[ [[#Foot4|4]] ] + ARM support</sup> |
|||
|- |
|- |
||
!colspan="10"|<big>PV Bootloader support</big> |
!colspan="10"|<big>PV Bootloader support</big> |
||
Line 1,037: | Line 535: | ||
|- |
|- |
||
|[[PyGrub]] support for GRUB 2 |
|[[PyGrub]] support for GRUB 2 |
||
|{{Tick}} |
|||
|{{Tick}} |
|||
|{{Tick}} |
|||
|{{Tick}} |
|||
|{{Tick}} |
|||
|{{Tick}} |
|{{Tick}} |
||
|{{Tick}} |
|{{Tick}} |
||
Line 1,048: | Line 541: | ||
|- |
|- |
||
|[[PyGrub]] support for /boot on ext4 |
|[[PyGrub]] support for /boot on ext4 |
||
|{{Tick}} |
|||
|{{Tick}} |
|||
|{{Tick}} |
|||
|{{Tick}} |
|||
|{{Tick}} |
|||
|{{Tick}} |
|{{Tick}} |
||
|{{Tick}} |
|{{Tick}} |
||
Line 1,061: | Line 549: | ||
| |
| |
||
| |
| |
||
|{{Tick}} |
|||
|{{Tick}} |
|||
|{{Tick}} |
|||
|{{Tick}} |
|||
|{{Tick}} |
|||
|{{Tick}} |
|{{Tick}} |
||
|{{Tick}} |
|{{Tick}} |
||
Line 1,081: | Line 564: | ||
<br/><span id="Foot5"><sup>[ 5 ]</sup> Used as a fallback if ''blkback'' and/or ''blktap2'' are not available</span> |
<br/><span id="Foot5"><sup>[ 5 ]</sup> Used as a fallback if ''blkback'' and/or ''blktap2'' are not available</span> |
||
<br/><span id="Foot6"><sup>[ 6 ]</sup> See [[Xen ARM with Virtualization Extensions]]; basic functionality implemented; lack of real hardware to validate against |
<br/><span id="Foot6"><sup>[ 6 ]</sup> See [[Xen ARM with Virtualization Extensions]]; basic functionality implemented; lack of real hardware to validate against |
||
<br/><span id=" |
<br/><span id="Foot12"><sup>[ 12 ]</sup> Not yet supported on ARM; for a more detailed update on what is supported on ARM see [http://www.slideshare.net/xen_com_mgr/xen-on-arm-xen-developer-summit-2014 here] |
||
<br/><span id="Foot8"><sup>[ 8 ]</sup> Tested on Broadcom 7445D0 A15, Midway (Calxeda), Odroid-XU, OMAP5, OMAP6, DRA7 (Texas Instrument), Exynos5 (Samsung), SunXI (AllWinner) aka A20/A21, CubieTruck, CubieBoard |
|||
<br/><span id="Foot9"><sup>[ 9 ]</sup> Tested on Vexpress (ARM Ltd.), Seattle (AMD), Mustang (Applied Micro-X-Gene), McDivitt aka HP Moonshot cartridge (Applied Micro X-Gene) |
|||
<br/><span id="Foot10"><sup>[ 10 ]</sup> [[Remus]] has been ported to [[XL]] and has been tested with [[COLO_-_Coarse_Grain_Lock_Stepping|COLO]] which is currently outside the Xen tree, but planned to be included in Xen 4.6. Also see [[Remus Toolkit Differences]] explaining differences between Remus with [[XM]] (not supported in Xen 4.5) and [[XL]] |
|||
<br/><span id="Foot11"><sup>[ 11 ]</sup> There are a number of reported crashes that have not yet been fixed and some [[Nested_Virtualization_in_Xen#Know_Issues|known limitations]] |
|||
<br/><span id="Foot12"><sup>[ 12 ]</sup> Not yet supported on ARM; for a more detailed update on what is supported on ARM see [http://www.slideshare.net/xen_com_mgr/xen-on-arm-xen-developer-summit-2014 here] and [[Xen_ARM_with_Virtualization_Extensions|here]] |
|||
<br/><span id="Foot13"><sup>[ 13 ]</sup> The PCI passthrough features did not make it on time for Xen 4.5, but doing passthrough of MMIO regions did. In the ARM world it is quite common to have no PCIe devices and to only access devices using MMIO regions. As such this feature allows us to have driver domains be in charge of network or storage devices. |
|||
<br/><span id="Foot14"><sup>[ 14 ]</sup> Added the following platforms to <sup>[ 8 ]</sup>: Renesas R-Car Gen2, Huawei hip04-d04 |
|||
<br/><span id="Foot15"><sup>[ 15 ]</sup> Added the following platforms to <sup>[ 9 ]</sup>: Thunder X (partial), Xilinx ZynqMP SoC |
|||
<br/><span id="Foot16"><sup>[ 16 ]</sup> Now tested as part of Xen Project Test Lab and OpenStack CI Loop |
|||
<br/><span id="Foot17"><sup>[ 17 ]</sup> Now tested as part of Xen Project Test Lab |
|||
<br/><span id="Foot18"><sup>[ 18 ]</sup> Migration v2: see [https://www.youtube.com/watch?v=RwiDeG21lrc] and [http://xenbits.xen.org/docs/4.6-testing/features/migration.html]. VM migration using libvirt between two hosts is now tested. Live Migration between hosts of different Xen versions is now tested. |
|||
<br/><span id="Foot19"><sup>[ 19 ]</sup> The memory event subsystem has been reworked and extended to a new VM event subsystem. The new VM event subsystems supports both the ARM and x86 architectures. |
|||
<br/><span id="Foot20"><sup>[ 20 ]</sup> Passthrough for non-PCI devices allows users to passthrough devices via partial device trees. |
|||
<br/><span id="Foot21"><sup>[ 21 ]</sup> Dates for historical releases have not be researched. |
<br/><span id="Foot21"><sup>[ 21 ]</sup> Dates for historical releases have not be researched. |
||
<br/><span id="Foot22"><sup>[ 22 ]</sup> The code for hypervisor live patching is NOT enabled by default. When compiling the hypervisor one must [[LivePatch#How_to_enable_it|change the config]] to build it. Note that Live Patching is currently only supported on x86. For more information on live patching, see [[LivePatch]]. |
|||
<br/><span id="Foot23"><sup>[ 23 ]</sup> CPU ID Levelling enables migration of VM’s between a larger range of non-identical hosts than previously supported. |
|||
<br/><span id="Foot24"><sup>[ 24 ]</sup> The COLO Manager has been fully integrated as an experimental feature into Xen 4.7. Note that the COLO Block Replication and COLO Proxy components, both of which are QEMU components, are currently still reviewed by the QEMU community. Both components are available as out-of-tree add-ons to the Xen Project Hypervisor, until fully integrated into QEMU. |
|||
<br/><span id="Foot25"><sup>[ 25 ]</sup> Added experimental support for VT-d Posted Interrupts, VMX TSC Scaling, Memory Protection Keys |
|||
<br/><span id="Foot26"><sup>[ 26 ]</sup> Removed support for Huawei hip04-d04 |
|||
[[Category:Xen]] [[Category:Users]] [[Category:Fundamentals]] [[Category:Archived]] |
[[Category:Xen]] [[Category:Users]] [[Category:Fundamentals]] [[Category:Archived]] |
Latest revision as of 16:38, 12 March 2018
Legend:
- ✓: Feature
- ✓: Partial
- ✗: Removed
- For definitions of experimental, preview, supported and deprecated see here
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.