Kernel-based Virtual Machine
From Wikipedia, the free encyclopedia
Latest release | 84 / 2009-02-14 |
---|---|
Written in | C |
Operating system | Linux kernel |
Type | Virtualization |
License | GNU General Public License or GNU Lesser General Public License |
Website | http://www.linux-kvm.org/ |
Kernel-based Virtual Machine (KVM) is a Linux kernel virtualization infrastructure. KVM currently supports native virtualization using Intel VT or AMD-V. Limited support for paravirtualization is also available for Linux guests and Windows in the form of a paravirtual network driver,[1] a balloon driver to affect operation of the guest virtual memory manager,[2] and CPU optimization for Linux guests. KVM is currently implemented as a loadable kernel module although future versions will likely use a system call interface and be integrated directly into the kernel.[3]
Architecture ports are currently being developed for s390,[4] PowerPC,[5] and IA64. The first version of KVM was included in Linux 2.6.20 (February 2007).[6] KVM has also been ported to FreeBSD as a loadable kernel module.[7]
A wide variety of guest operating systems work with KVM, including many flavours of Linux, BSD, Solaris, Windows, Haiku, ReactOS and AROS Research Operating System[8] and a patched version of kvm is able to run Mac OS X[9]
By itself, KVM does not perform any emulation. Instead, a user-space program uses the /dev/kvm interface to set up the guest VM's address space, feed it simulated I/O and map its video display back onto the host's. At least three programs exploit this feature: a modified version of Qemu, Qemu itself since version 0.10.0 and, optionally, Virtualbox.
KVM's parts are licensed under various GNU licenses:[10]
- KVM kernel module: GPL v2
- KVM user module: LGPL v2
- QEMU virtual CPU core library (libqemu.a) and QEMU PC system emulator: LGPL
- Linux user mode QEMU emulator: GPL
- BIOS files (bios.bin, vgabios.bin and vgabios-cirrus.bin): LGPL v2 or later
KVM is maintained by Avi Kivity and is funded primarily by Qumranet, a technology start up,[11] now owned by Red Hat.[12]
Contents |
[edit] Graphical management tools
- Virtual Machine Manager supports creating, editing, starting, and stopping KVM based virtual machines.
- ConVirt supports creating, editing, starting, and stopping KVM based virtual machines, as well as live or cold drag-and-drop migration of VMs between hosts.
- Proxmox Virtual Environment Free virtualization software including KVM and OpenVZ - bare-metal installer, management GUI and optional commercial support.
[edit] See also
[edit] References
- ^ Gmane - Mail To News And Back Again
- ^ 3.2 Ballooning
- ^ Gmane - Mail To News And Back Again
- ^ Gmane - Mail To News And Back Again
- ^ Gmane Loom
- ^ "Linux: 2.6.20 Kernel Released". KernelTrap. http://kerneltrap.org/node/7670.
- ^ "FreeBSD Quarterly Status Report: Porting Linux KVM to FreeBSD". http://www.freebsd.org/news/status/report-2007-07-2007-10.html#Porting-Linux-KVM-to-FreeBSD.
- ^ "KVM wiki: Guest support status". http://kvm.qumranet.com/kvmwiki/Guest_Support_Status.
- ^ "Virtualizing an x86 Mac OS X". http://alex.csgraf.de/self/?part/projects&folder/Qemu%20OSX&type/&project/projects¶meters/id=Qemu%20OSX.
- ^ Licensing info from Ubuntu 7.04 /usr/share/doc/kvm/copyright
- ^ Interview: Avi Kivity on KernelTrap
- ^ Red Hat press release on Qumranet purchase