libvirt
KVM is a full virtualization solution for hardware architectures that support hardware virtualization.
VM Guests (virtual machines), virtual storage and virtual networks can
be managed with QEMU tools directly or with the libvirt
-based stack.
The QEMU tools include qemu-system-ARCH
, the QEMU
monitor, qemu-img
, and qemu-ndb
. A
libvirt
-based stack includes libvirt
itself, along with
libvirt
-based applications such as virsh
,
virt-manager
, virt-install
, and
virt-viewer
.
This full virtualization solution consists of two main components:
A set of kernel modules (kvm.ko
,
kvm-intel.ko
, and
kvm-amd.ko
) that provides the core
virtualization infrastructure and processor-specific drivers.
A user space program
(qemu-system-ARCH
) that
provides emulation for virtual devices and control mechanisms to
manage VM Guests (virtual machines).
The term KVM more properly refers to the kernel level virtualization functionality, but is in practice more commonly used to refer to the user space component.