Virtualization technologies overview

Course: CS 490

by Mendel Rosenblum Name Can boot USB GUI Live 3D Snaps Live an OS on mem acceleration hot of migration another ory runnin disk alloc g partition ation system as

guest partially partially Yes No Container s Cooperati Yes[1] Yes No No ve (supporte d through X11 over networkin g) Denali DOSBox Partial (the Yes No No host OS can provide DOSBox services with USB devices) DOSEMU No No No FreeVPS GXemul No No Hyper-tag">V iCore Yes Yes No Yes No Virtual Accounts Imperas Yes Yes Yes Yes OVP (Eclipse) Tools Integrity Yes No Yes Yes No Yes (HP-UX Virtual (Integrity guests only, Machines Virtual Linux and Machine Windows 2K3 Manager in near future) (add-on) Jail No Yes partially Yes No No No KVM Yes [3] Yes Yes [4] Yes Supported Yes [5] with VMGL [6] Linux- VServer LynxSec ure Mac-on- Yes Yes No No Linux Mac-on- No No Mac OpenVZ Yes Yes Yes Yes No Yes (using Xvnc and/or XDMCP) Oracle Yes Yes Yes Yes Yes VM (manage d by Oracle VM Manager) OVPsim Yes Yes Yes Yes (Eclipse) Padded Yes Yes Yes Cell for () Padded Yes Yes Yes No Cell for PowerPC (Green Hills Software) Yes, if Boot Yes Yes Yes DirectX 9 Desktop Camp is and for Mac installed OpenGL 2.0 Parallels No Yes Yes No partially Workstati on PearPC POWER Yes Yes No Yes No Yes (on Hypervis POWER 6- or (PHYP) based systems, requires PowerVM Enterprise Licensing) QEMU Yes Yes Yes [4] Some code Yes

done [7]; Also supported with VMGL [6] QEMU w/ Yes Yes Yes Some code Yes

kqemu done [7]; Also module supported with VMGL [6] QEMU w/ Yes Yes Yes Supported Yes qvm86 with VMGL module [6] QuickTra Yes Yes No Yes Yes Yes nsit SimNow No No RTS Yes Yes Yes No Yes No Hypervis or SVISTA 2004 TRANGO View-OS User Yes No No No No Mode Linux Sun xVM Partial Partial (for Yes Yes OpenGL 2.0 Yes Yes (only on VirtualBo (since any host OS [9] (only the closed- x version 1.4, except on the source edition)

but Solaris)[8] closed- unsupporte source

d) [26] edition) Virtual Yes Iron 4.2 Virtual No No Yes No No PC 2007 Windows No partially Yes Virtual PC VirtualPC Yes Yes Yes Yes No No 7 for Mac VirtualLo gix VLX Virtual No Server 2005 R2 Virtuozzo Yes Yes Yes Yes No Yes VMware Yes No Yes Yes ESX Server 3.0 atp VMware Yes No ESX Server 2.5.3 VMware Yes Yes Yes Yes Yes Yes Yes ESX Server 4.0 (vSphere) VMware Yes Yes Yes No DirectX 9 Fusion Shader 2.0 model 2 VMware Yes Yes Yes Yes No Yes Server VMware Yes Yes Yes Yes Experimental Workstati support for on 5.5 DirectX 8; Also supported with VMGL [6] VMware Yes Yes Yes Yes Experimental Yes Workstati support for on 6.0 DirectX 8; Also supported with VMGL [6] VMware No Yes Yes Yes Supported Player with VMGL [6] Wind Yes Yes Yes Yes Yes No River hypervis or Wind Yes River VxWorks MILS Platform Yes Yes Supported Yes with VMGL [6] z/VM Yes not applicable with add- Yes No with GDPS ons z LPARs Yes not applicable Yes Yes No with GDPS Zones Yes Yes Yes Yes No Name Can boot USB GUI Live 3D Snaps Live migration an OS on mem acceleration hot of another ory runnin disk alloc g partition ation system as guest

Name Creator Host CPU Guest CPU Host OS Guest OS Licens (s) (s) Bochs Kevin any x86, AMD64 Windows, DOS, LGPL Lawton Windows Windows, Mobile, xBSD, Linux Linux, IRIX, AIX, FreeBSD, OpenBS D, BeOS, Mac OS X CHARON- Stromasy x86 (64 bit) DEC Alphaserver Windows OpenVMS, Propriet AXP s 2003/200 Tru64 ary 8 x64 CHARON- Stromasy x86, IA-64 VAX Windows OpenVMS Propriet VAX s 2003/200 ary 8, OpenVM S Containers Sun x86, x86-64, (Same as host) Solaris Solaris (8, 9 or CDDL (also Microsyst SPARC (portable: 10, 10), Linux 'Zones') ems not tied to OpenSol (BrandZ) hardware) aris 2009.06 Cooperativ Dan Aloni x86[1] (Same as parent) Windows Linux GPL e Linux helped by 2000, XP, version other 2003, 2

developer Vista[1] s (1) Denali University x86 x86 Denali Ilwaco, ? of NetBSD Washingt on DOSBox Peter any x86 Linux, Internally GPL Veenstra Windows, emulated DOS and Mac OS . Classic Sjoerd Classic, PC booter with Mac OS games and communit X, BeOS, unofficially, y FreeBSD, Windows 1.0 OpenBS to 3.11 D, Solaris, QNX, IRIX, MorphOS , AmigaOS DOSEMU Communit x86, AMD64 x86 Linux DOS GPL y Project version 2 FreeVPS PSoft x86, AMD64 compatible Linux Various Linux GPL distributions version 2 GXemul Anders any ARM, MIPS, Unix-like NetBSD, BSD Gavare M88K, PowerPC, OpenBSD, SuperH Linux, , Sprite Hercules Jay any z/Architecture Unix-like Linux on QPL Maynard zSeries, z/OS, z/VM, z/VSE, OS/360, DOS/ 360, DOS/VS, MVS, VM/370, TSS/370. Hyper-V Microsoft x64 + hardware- x64,x86 Windows Supported Propriet assisted 2008 w/ Drivers for ary Hyper-V Windows (Intel VT or AMD- Role, 2000, V) Windows Windows Hyper-V 2003, Server Windows 2008, Windows XP, Windows Vista, Linux (SUSE 10 Released, More Announced)) Imperas Imperas x86 OR1K, MIPS32, Microsoft Depends on Tools OVP Tools [1] ARC600/ Windows, target are ARC700, ARM Linux machine, for under (can use all OVP example propriet OVPsim [2] includes MIPS ary compliant Malta that runs license, models, user can Linux or SMP- models write own to Linux (can use under public OVP ) all OVP Apache OVPsim [3] 2.0 compliant models, user can write own to public OVP APIs) iCore iCore x86 x86 Windows Windows XP Propriet Virtual Software XP ary Accounts Integrity Hewlett- IA-64 IA-64 HP-UX HP-UX, Propriet Virtual Packard Windows, ary Machines Linux (OpenVMS announced) FreeBSD FreeBSD Any running Any running FreeBSD FreeBSD, BSD Jail FreeBSD FreeBSD Linux ABI License JPC Oxford Any running the x86 Java DOS GPL (Virtual University Java Virtual Virtual version Machine) Machine Machine 2 KVM Qumranet Intel/AMD same as platform Linux Linux, GPL [4] processor with Windows, version X86 FreeBSD, 2 virtualization,IA64 Solaris ,s390,PowerPC LinuxOnLi Gelato@ Itanium compatible Linux Linux GPL nux UNSW Linux- Communit x86, AMD64, compatible Linux Various Linux GPL VServer y Project IA-64, Alpha, distributions version PowerPC/64, PA- 2 RISC/64, SPARC/64, ARM, S/390, SH/66, MIPS Logical Sun UltraSPARC T1, compatible Solaris Solaris, Linux, ? Domains Microsyst UltraSPARC T2 10 and FreeBSD ems LynxSecur LynuxWor x86, Intel VT-x, x86 no host LynxOS, Propriet e ks Intel VT-d OS Linux, and ary Windows Mac-on- Mac On PowerPC PowerPC Linux Mac OS X, GPL Linux Linux Mac OS 7.5.2 to 9.2.2, Linux Mac-on- Sebastian PowerPC PowerPC Mac OS Mac OS X, GPL Mac Gregorzy X, up to Mac OS 7.5.2 k Tiger to 9.2.2, Linux excluded OKL4 Open x86, ARM, MIPS as host no host Linux, eCos, BSD Kernel OS "other Labs RTOSes" OpenVZ Communit Intel x86, AMD64, Same as host Linux Various Linux GPL y project, IA-64, distributions supported PowerPC64, by SWsoft SPARC/64 Oracle VM Oracle Intel x86, x86-64, Intel x86, x86-64, no host Microsoft Propriet Corporati Intel VT-x Intel VT-x OS Windows, ary on Oracle Enterprise Linux, Red Hat Enterprise Linux OVPsim OVP [5] x86 OR1K, MIPS32, Microsoft Depends on Apache ARC600/ Windows, target 2.0 ARC700, ARM Linux machine, for (and public API example which enables includes MIPS users to write Malta that runs their own Linux or SMP- processor Linux (and models, RISC, includes public CISC, DSP, VLIW API which all possible) enables users to write their own and system models) Padded Green x86, Intel VT-x x86 INTEGRI Windows, Propriet Cell for Hills TY Real- Linux, Solaris ary x86 Software time OS Padded Green PowerPC PowerPC INTEGRI Linux Propriet Cell for Hills TY Real- ary PowerPC Software time OS Palacios The AMD-V x86 OS Linux BSD VMM V3Vee independ Project ent (currently GeekOS, Kitten) Parallels Parallels, Intel x86, Intel Intel x86 Mac OS Windows, Propriet Desktop Inc. VT-x X (Intel) Linux, ary for Mac FreeBSD, OS/ 2, eComStation, MS-DOS, Solaris Parallels Parallels, x86, Intel VT-x x86 Windows, Windows, Propriet Workstatio Inc. Linux Linux, ary n FreeBSD, OS/ 2, eComStation, MS-DOS, Solaris PearPC Sebastian x86, AMD64, PowerPC Windows, Mac OS X, GPL Biallas PowerPC Linux, Darwin, Linux Mac OS X, FreeBSD, NetBSD PowerVM IBM POWER4, POWER4, no host Linux-PPC, Propriet POWER5, POWER5, OS Linux-X86, ary POWER6, POWER6, AIX, i5/OS, PowerPC 970 PowerPC 970, IBM i X86 (PowerVM- Lx86) Proxmox ProxMox x86-64 x86, x86-64 Same as KVM; GPL v2 Virtual Lenny w/ Same as Environmen ProxMox OpenVZ t Role QEMU Fabrice x86, AMD64, x86, AMD64, Windows, Changes GPL/ Bellard IA-64, PowerPC, ARM, SPARC 32 Linux, regularly [6] LGPL helped by Alpha, SPARC 32 and 64, Mac OS other and 64, ARM, S/ PowerPC, MIPS X, developer 390, M68k Solaris, s FreeBSD, OpenBS D, BeOS QEMU w/ Fabrice Intel x86, AMD64 Same as host Linux, Changes GPL/ kqemu Bellard FreeBSD, regularly [7] LGPL module OpenBS D, Solaris, Windows QEMU w/ Paul x86 x86 Linux, Changes GPL qvm86 Brook NetBSD, regularly module Windows QuickTran Transitive AMD64, x86, MIPS, PowerPC, Linux, Linux, Mac OS Propriet sit Corp. IA-64, POWER SPARC, x86 Mac OS X, Irix, Solaris ary X, Solaris RTS Real-Time Intel and AMD x86 no host Windows XP, Propriet Systems x86 OS XP- ary Embedded, Linux, VxWorks, Windows CE, ETS, OS-9 and proprietary OS SimNow AMD AMD64 AMD64 Linux Linux, AMD (64bit), Windows propriet Windows (32bit and ary (64bit) 64bit) SIMH Bob Alpha, ARM, Data General Windows, Depends on Unique, Supnik / HPPA, x86, ia64, Nova, Eclipse; BSD, target BSD- The x86-64, M68K, Digital Equipment Linux, machine, like MIPS, MIPSel, Corporation Solaris, Includes license History POWER, s390, PDP-1, PDP-4, VMS NetBSD/VAX, Simulatio SPARC PDP-7, PDP-8, OpenBSD/ n Project PDP-9, PDP-10, VAX, VAX/ PDP-11, PDP-15, VMS, UNIX VAX; GRI v6, UNIX v7, Corporation TOPS-10, GRI-909, IBM TOPS-20, ITS 1401, 1620, 1130, 7090/7094, System 3; Interdata (Perkin- Elmer) 16b and 32b systems; Hewlett-Packard 2114, 2115, 2116, 2100, 21MX; Honeywell H316/ H516; MITS Altair 8800, with both 8080 and Z80; Royal-Mcbee LGP-30, LGP-21; Scientific Data Systems SDS 940 Simics Virtutech x86, x86-64, Alpha, ARM, Windows, Depends on Propriet SPARC v9 IA-64, MIPS32, Linux, target ary MIPS64, Solaris machine, MSP430, PPC32, VxWorks, PPC64, POWER, OSE, QNX, SPARC v8, Linux, Solaris, SPARC v9, x86, Windows, x86-64, TI FreeBSD, TMS320C64xx. RTEMS, TinyOS, and many others have been run. Sun xVM Sun x86-64, SPARC (Same as host) no host Windows XP & GPL Server Microsyst OS 2003 Server version ems (x86-64 only), 3 Linux, Solaris SVISTA Serenity x86 x86 Windows, Windows, Propriet 2004 Systems OS/2, Linux, OS/2, ary Internatio Linux BSD nal TRANGO TRANGO ARM, XScale, Paravirtualized no host Linux, eCos, Propriet Virtual MIPS, PowerPC ARM, MIPS, OS, Linux µC/OS-II, ary Processor PowerPC or WindowsCE, s, Windows Nucleus, Grenoble, as dev. VxWorks France User Mode Jeff Dike x86, x86-64, (Same as parent) Linux Linux GPL Linux helped by PowerPC version other 2 developer s View-OS Renzo x86, PowerPC, (Same as parent) Linux Linux GPL Davoli AMD64 (in 2.6+ executables version helped by progress) 2 other developer s [8] VDSmanag ISPsyste x86 (Same as host) FreeBSD FreeBSD Propriet er m LLC ary Sun xVM Sun x86, x86-64 x86, (x86-64 only Windows, DOS, GPL VirtualBox Microsyst on VirtualBox 2 Linux, Windows, version ems with hardware Mac OS Linux, OS/2, 2; ) X (Intel), FreeBSD, version Solaris, Solaris with eComSta extra tion enterpri se feature s is propriet ary Virtual Iron Virtual x86 VT-x, AMD64 x86, AMD64 no host Windows, Comple Virtual Iron Iron AMD-V OS Linux te 3.1 Software, product Inc. carries a propriet ary license [9]; a few compon ents are GPL version 2 [10] Virtual PC Microsoft x86, x86-64 x86 Windows DOS, Propriet 2007 Vista Windows, OS/ ary (Business 2, Linux(Suse, , Xubuntu), Enterpris OpenSolaris e, (Belenix) Ultimate), XP Pro, XP Tablet PC Edition Windows Microsoft x86, x86-64 with x86, x86-64 Windows Windows XP Propriet Virtual PC Intel VT or AMD- 7 SP3, Windows ary V Vista, Windows 7 Virtual PC Microsoft PowerPC x86 Mac OS Windows, OS/ Propriet 7 for Mac X 2, Linux ary VirtualLogi VirtualLog ARM, TI DSP Same as parent no host Linux, Propriet x VLX ix C6000, Intel x86, OS Windows XP, ary Intel VT-x and C5, VxWorks, Intel VT-d, Nucleus, DSP/ PowerPC BIOS and proprietary OS Virtual Microsoft Intel x86, AMD64 Intel x86 Windows Windows NT, Propriet Server 2003, XP 2000, 2003, ary 2005 R2 Linux (Red Hat and SUSE) CoWare CoWare x86, x86-64, Devices including Windows, Depend on the Propriet Virtual SPARC v9 (multi) cores from Linux, Guest CPU; ary Platform ARM, MIPS, Solaris includes: Linux PPC, Toshiba (various MeP, Renesas flavors), SH, TI, Tensilica, mITRON ZSP (various flavors), WinCE, , ... Virtuozzo SWsoft, x86, IA-64, x86, IA-64, Linux, Linux, Propriet now AMD64 AMD64 Windows Windows ary Parallels, Inc. VMware VMware x86, x86-64 x86, x86-64 no host Windows, Propriet ESX OS Linux, MacOS, ary Server Solaris, FreeBSD, Virtual appliances, Netware, OS/ 2, SCO, BeOS, Darwin, others: runs

Arbitrary OS[2] VMware VMware x86, x86-64 x86, x86-64 no host Same as Propriet ESXi OS VMware ESX ary Server VMware VMware x86, x86-64 x86, x86-64 Mac OS Same as Propriet Fusion X (Intel) VMware ESX ary Server VMware VMware x86, x86-64 x86, x86-64 Windows, Same as Propriet Server Linux VMware ESX ary Server VMware VMware x86, x86-64 x86, x86-64 Windows, Same as Propriet Workstatio Linux VMware ESX ary n 6.0 Server VMware VMware x86, x86-64 x86, x86-64 Windows, Same as Propriet Player 2.0 Linux VMware ESX ary Server Wind River Wind x86, PPC (Same as host) no host Linux, Propriet hypervisor River OS VxWorks, bare ary metal virtual board Wind River Wind PPC (Same as host) no host VxWorks, bare Propriet VxWorks River OS metal virtual ary MILS board Platform Xen Citrix x86, x86-64 and (Same as host) NetBSD, FreeBSD, GPL Systems IA-64 Linux, NetBSD, Solaris Linux, Solaris, Windows XP & 2003 Server (needs vers. 3.0 and an Intel VT (Vanderpool) or AMD-V (Pacifica)- capable CPU), Plan 9 XtratuM Universid x86, x86, sparcv8 (Same as host) no host GPOS: Linux, GPL ad (LEON2/3) OS RTOS: Politecnic PartiKle, a de RTEMS Valencia z/VM IBM z/Architecture z/Architecture (z/ no host Linux on Propriet VM does not run OS, itself zSeries, z/OS, ary on predecessor (single or z/VSE, z/TPF, mainframes) multiple z/VM, VM/ levels/ CMS, MUSIC/ versions SP, deep, OpenSolaris e.g. VM/ for System z, ESA and running predecessors inside z/ VM 4.4 inside z/ VM 5.2 inside z/ VM 5.1.) z LPARs IBM z/Architecture z/Architecture Intrinsic Linux on Intrinsic feature of zSeries, z/OS, feature System z z/VSE, z/TPF, of mainfram z/VM, VM/ System es CMS, MUSIC/ z SP, and mainfra predecessors mes Name Creator Host CPU Guest CPU Host OS Guest OS(s) Licens (s) e