KVM ( Kernel-based Virtual Machine ) is a software solution that provides Linux virtualization on the x86 platform , which supports hardware virtualization based on Intel VT (Virtualization Technology) or AMD SVM (Secure Virtual Machine).
| Kernel-based virtual machine | |
|---|---|
| Type of | virtualization |
| Developer | Open Virtualization Alliance (OVA), originally ( Qumranet , then Red Hat ) |
| Written on | Si |
| operating system | Linux |
| Latest version | 1.2.0 ( September 5, 2012 ) |
| License | GNU General Public License and GNU Lesser General Public License |
| Site | linux-kvm.org |
KVM software consists of a loadable kernel module (called kvm.ko ) that provides a basic virtualization service, a processor-specific loadable module kvm-amd.ko or kvm-intel.ko , and user-mode components (modified by QEMU ). All KVM software components are open . The kernel component required for KVM to work has been included in the main Linux kernel since version 2.6.20 (February 2007) [1] . KVM has also been ported to FreeBSD as a kernel module [2] . Work is underway to include the modifications needed to work with KVM in the main QEMU branch.
KVM itself does not emulate. Instead, a program running in user space uses the / dev / kvm interface to configure the guest address space of a virtual machine, and through it emulates input-output devices and a video adapter.
KVM allows virtual machines to use unmodified disk images of QEMU , VMware and others containing operating systems. Each virtual machine has its own virtual hardware: network cards , disk , video card and other devices.
KVM software was created, developed and maintained by Qumranet , which was purchased by Red Hat for $ 107 million on September 4, 2008. [3] . After the deal, KVM (along with the oVirt virtualization management system) became part of the virtualization .
Content
License
- KVM kernel module: GPL v2.
- KVM user environment module: LGPL v2.
- QEMU virtual processor library ( libqemu.a ) and QEMU PC system emulator: LGPL.
- Linux user mode emulator QEMU: GPL.
- BIOS files ( bios.bin , vgabios.bin and vgabios-cirrus.bin ): SeaBIOS (LGPL v2 or later).
System Requirements
KVM requires an x86-compatible processor that supports one of the hardware virtualization technologies - Intel VT or AMD SVM. Presently [ specify ] KVM is able to run 32-bit and 64-bit systems based on the Linux kernel , Windows and other systems as guest operating systems [ specify ] [4] .
Graphical Management Utilities
- Virtual Machine Manager : Create, edit, start, and stop KVM-based virtual machines
- ConVirt : creating, editing, starting and stopping KVM-based virtual machines, both hot and cold migration from other VM hosts.
- Proxmox Virtual Environment . Free virtualization based on KVM and OpenVZ - installation on a stripped down Linux distribution , management via GUI and the possibility of obtaining commercial support
- AQEMU: create, edit, start, stop, save snapshots of virtual machines based on KVM and QEMU. The program was created by a Russian-speaking developer using Qt4, allows you to set all the parameters for KVM / QEMU. Hosted by SourceForge .
- GKVM: for the GNOME desktop . Creating, editing, starting, stopping, saving snapshots of KVM virtual machines. Hosted by SourceForge.
- QtEmu: a graphical shell for QEMU and KVM, written in Qt4. Interface in ten languages. Hosted by SourceForge.
Current Developments
KVM uses QEMU as a frontend and to emulate some devices [5] . Work is underway to optimize the use of hardware virtualization capabilities embedded in modern Intel and AMD processors. The performance of KVM was compared with the performance of Xen operating in hardware virtualization mode (not paravirtualization ), and for certain types of loads, KVM showed better performance (but not in most cases) [6] .
See also
- Lguest is a minimalistic hypervisor for Linux.
- Virtual machine comparison
Notes
- ↑ Linux: 2.6.20 Kernel Released . KernelTrap. Archived February 21, 2012.
- ↑ FreeBSD Quarterly Status Report: Porting Linux KVM to FreeBSD . Archived February 21, 2012.
- ↑ blkdog. Red Hat acquired Qumranet, a company developing the KVM virtualization system . Maxim Chirkov (September 4, 2008). Date of treatment September 5, 2008. Archived February 21, 2012.
- ↑ Main Page - KVM Archived on July 10, 2007.
- ↑ http://www.cs.hs-rm.de/~linn/fachsem0910/hirt/KVM.pdf "To provide hardware like hard disks, cd drives or network cards to the VMs, KVM uses a highly modified QEMU .. KVM uses QEMU as such a backend which handles I / O operations directly "
- ↑ Phoronix Linux KVM Virtualization Performance , January 8, 2007
Links
- Linux-kvm.org
- Official site of Qumranet - KVM developers
- M. Tim Jones . Learn about the Linux kernel virtual machine (KVM) . developerWorks IBM (June 20, 2007). Date of treatment September 5, 2008. Archived February 21, 2012.
- Architecture of the Kernel-based Virtual Machine (KVM) , 2010