Life is like a bowl of candy
Best Open Source Project?
The table below compares basic information about virtual machine packages, including: creator, guest systems supported, license, etc. Note that these are all Virtual Machines in the 'hypervisor' or 'hardware emulator' sense. None of them are VMs in the Application Virtualization sense as the Java Virtual Machine or Parrot virtual machine. For those, see Comparison of Application Virtual Machines.
| Name | Creator | Host Processor | Host OS | Officially supported guest OS | Guest OS SMP available? | Drivers for supported guest OS available? |
|---|---|---|---|---|---|---|
| APV Advanced Power Virtualization [1] | IBM | POWER4, POWER5, POWER6 |
hardware / firmware no host OS |
Linux-ppc, AIX, i5OS (=prev OS/400) |
Yes | Yes |
| Bochs | Kevin Lawton | Intel x86, AMD64, SPARC, PowerPC, Alpha, MIPS | Windows, Linux, OS X, IRIX, AIX, BeOS |
DOS, Windows, xBSD, Linux | Yes | ? |
| Cooperative Linux | Dan Aloni helped by others developers 1 | Intel x86, others? | Windows NT (NT, 2000, XP, Server 2003), Linux? | Linux | ? | some are supported |
| Denali | University of Washington[3] | Intel x86 | Denali | Ilwaco, NetBSD | No | ? |
| DOSBox | Peter Veenstra and Sjoerd with community help | Intel x86, AMD64, SPARC, PowerPC, Alpha, MIPS | GNU/Linux, Windows, Mac OS Classic, Mac OS X, BeOS, FreeBSD, OpenBSD, Solaris, QNX, IRIX | Internally emulated DOS shell | No | Yes |
| DOSEMU | Community Project | Intel x86 | Linux | DOS | No | Yes |
| FreeVPS | PSoft | Intel x86, AMD64 | Linux | Various Linux distributions | Yes | n/a |
| GUSS | guss-hackers | Intel x86 | GNU/Linux | GNU/Linux | ? | ? |
| Integrity Virtual Machines | Hewlett- Packard | IA-64 | HP-UX | HP-UX, Windows (Linux, OpenVMS announced) | Yes (4-way) | Unnecessary |
| Jail | FreeBSD | Intel x86, | FreeBSD | FreeBSD | Yes | N/A |
| KVM | KVM | Intel/AMD processor with X86_virtualization | Linux | Linux, Windows | No | N/A |
| Linux- VServer | Community Project | Intel x86, AMD64, IA-64, Alpha, PowerPC/64, PA-RISC/64, SPARC/64, ARM, S/390, SH/66, MIPS | Linux | Various Linux distributions | Yes | N/A |
| Logical Domains | Sun Microsystems | UltraSPARC T1 | Solaris | Solaris, Linux, and FreeBSD | Yes | ? |
| Mac-on-Linux | Mac On Linux [8] | PowerPC | Linux | Mac OS X, Mac OS 7.5.2 to 9.2.2, Linux | ? | ? |
| Mac-on-Mac | Sebastian Gregorzyk | PowerPC | Mac OS X | Mac OS X, Mac OS 7.5.2 to 9.2.2, Linux | ? | ? |
| OpenVZ | Community project, supported by SWsoft | Intel x86, AMD64, IA-64, PowerPC64, SPARC64 | Linux | Various Linux distributions | Yes | Compatible |
| Parallels Desktop for Mac | Parallels, Inc. | Intel x86, Intel VT-x | Mac OS X (Intel version) | Windows, Linux, FreeBSD, OS/2, eComStation, MS-DOS, Solaris | No | Yes |
| Parallels Workstation | Parallels, Inc. | Intel x86, Intel VT-x | Windows, Linux | Windows, Linux, FreeBSD, OS/2, eComStation, MS-DOS, Solaris | No | Yes |
| PearPC | Sebastian Biallas | x86, AMD64, PowerPC | Windows, Linux, OS X, NetBSD | OS X, Darwin, Linux | No | Yes |
| POWER Hypervisor (PHYP) | IBM | POWER5 | N/A | AIX, Linux, i5/OS | Yes | Yes |
| QEMU | Fabrice Bellard helped by other developers | Intel x86, AMD64, IA-64, PowerPC, Alpha, SPARC 32 and 64, ARM, S/390, M68k | Windows, Linux, OS X, Solaris, FreeBSD, OpenBSD, BeOS | Changes regularly [12] | Yes | ? |
| QEMU w/ kqemu module | Fabrice Bellard | Intel x86, AMD64 | Linux, FreeBSD, Solaris, Windows | Changes regularly [14] | No | ? |
| QEMU w/ qvm86 module | Paul Brook | x86 | Linux, NetBSD, Windows | Changes regularly | No | ? |
| QuickTransit | Transitive Corp. | AMD64, Intel x86, IA-64, Power | Linux, OSX, Irix | Linux, OSX, Irix, Solaris | Yes | No |
| SimNow | AMD | AMD64 | Linux (64bit), Windows (64bit) | Linux, Windows (32bit and 64bit) | Yes | Yes |
| SVISTA 2004 | Serenity Systems International | Intel x86 | Windows, OS/2, Linux | ? | No | ? |
| TRANGO | TRANGO Systems, Grenoble, France | ARM, XScale, MIPS, PowerPC | none: bare metal execution, Linux or Windows as dev. hosts | Linux, eCos, µC/OS-II, WindowsCE, Nucleus, VxWorks | Yes | Yes |
| View-OS | Renzo Davoli helped by other developers [17] | Intel x86, PowerPC, AMD64 (in progress) | Linux 2.6+ | Linux executables | Yes | N/A |
| User Mode Linux | Jeff Dike helped by other developers | Intel x86, PowerPC | Linux | Linux | ??? | ??? |
| VirtualBox | InnoTek | Intel x86 | Windows, Linux | DOS, Windows, Linux, OS/2, OpenBSD, FreeBSD | No | Yes |
| Virtual Iron Virtual Iron 3.1 | Virtual Iron Software, Inc. | Intel x86 VT-x, AMD64 AMD-V | none: bare metal execution | Windows, RedHat, SuSE |
Yes
(up to 8 way) |
Yes |
| Virtual PC 2007 | Microsoft | Intel x86 | Windows Vista (Business, Enterprise, Ultimate), XP Pro, XP Tablet PC Edition | DOS, Windows, OS/2 | No | Yes |
| VirtualPC 7 for Mac | Microsoft | PowerPC | OS X | Windows, OS/2, Linux | No | Yes |
| VirtualLogix VLX | VirtualLogix | ARM, DSP C6000, Intel x86, Intel VT-x | none: bare metal installation | Linux, C5, VxWorks, Nucleus, DSP/BIOS and proprietary OS | Yes | Yes |
| Virtual Server 2005 R2 | Microsoft | Intel x86, AMD64 | Windows 2003, XP | Windows NT, 2000, 2003, Linux (Red Hat and SUSE) | No | Yes |
| Virtuozzo | SWsoft | Intel x86, IA-64, AMD64 | Linux & Windows | Various Linux distributions; Windows | Yes | Compatible |
| VMware ESX Server 3.0 | VMware | Intel x86, AMD64 | none (bare metal install) | Windows, RedHat, SuSE, Netware, Solaris |
Yes
(Add-on) (up to 4 way) |
Yes |
| VMware ESX Server 2.5.3 | VMware | Intel x86, AMD64 | none (bare metal install) | Windows, RedHat, SuSE, FreeBSD, Netware |
Yes
(Add-on) (2 way) |
Yes |
| VMware Fusion | VMware | Intel x86, Intel VT-x | Mac OS X (Intel) | Windows, Linux, Netware, Solaris, others | Yes | Yes |
| VMware Server | VMware | Intel x86, AMD64 | Windows, Linux | DOS, Windows, Linux, FreeBSD, Netware, Solaris, Virtual Appliances[22] | Yes | Yes |
| VMware Workstation 5.5 | VMware | Intel x86, AMD64 | Windows, Linux | DOS, Windows, Linux, FreeBSD, Netware, Solaris, Virtual Appliances[23] | Yes | Yes |
| VMware Player | VMware | Intel x86, AMD64 | Windows, Linux | DOS, Windows, Linux, FreeBSD, Netware, Solaris, Virtual Appliances[24] | No | Yes |
| Xen | University of Cambridge, Intel, AMD | Intel x86, AMD64, (PowerPC and IA-64 ports in progress) | NetBSD, Linux, Solaris | Linux, NetBSD, FreeBSD, OpenBSD, Solaris, Windows XP & 2003 Server (needs vers. 3.0 and a Vanderpool or Pacifica-capable CPU), Plan 9 | Yes | Not required with the exception of the networking drivers where a NAT is required. A modified guest kernel or special hardware level abstraction is required for guest OSs. |
| z/VM | IBM | z/Architecture | None or itself, single or multiple levels/versions deep, e.g. VM/ESA running inside z/VM 4.4 inside z/VM 5.2 inside z/VM 5.1. | Linux on zSeries, z/OS, z/VSE, z/TPF, z/VM, VM/CMS, MUSIC/SP, and predecessors | Yes, both real and virtual (guest perceives more CPUs than installed), incl. dynamic CPU provisioning and reassignment | Yes, but not required |
| Zones | Sun Microsystems | x86, x86-64, SPARC (portable: not tied to hardware) | Solaris | Solaris, Linux (BrandZ) | Yes, over 100-way | N/A |
- ^ Providing any virtual environment usually requires some overhead of some type or another. Native usually means that the virtualization technique does not do any CPU level virtualization (like Bochs and QEMU) which require emulating the CPU, so in most circumstances they cannot run at the applications native speed. Some other products such as VMWare and Virtual PC use similar approaches to Bochs and QEMU, however they use a number of advanced techniques to shortcut most of the calls directly to the CPU (similar to the process that JIT compiler uses) to bring the speed to near native in most cases. However, some products such as coLinux, Xen, z/VM (in real mode) do not suffer the cost of cpu level slow downs as the cpu level instructions are not proxied or executing against an emulated architecture since the guest OS or hardware is providing the environment for the applications to run under. However access to many of the other resources on the system, such as devices and memory may be proxied or emulated in order to broker those shared services out to all the guests, which may cause some slow downs as compared to running outside of virtualization.
- ^ OS-level virtualisation is described as "native" speed, however some groups have found overhead as high as 3% for some operations, but generally figures come under 1%, so long as secondary effects do not appear.
- ^ See [25] for a paper comparing performance of paravirtualisation approaches (eg Xen) with OS-level virtualisation
- ^ Requires patches/recompiling

