kvm: Virtualization
KVM (Virtualization)
Kernel-based Virtual Machine, abbreviated to KVM, is a virtual machine monitor (VMM) integrated into the Linux kernel. It allows Linux to function as a type-1 hypervisor — a virtualized environment in which multiple virtual machines (also called guest machines) can run, each with its own operating system. KVM uses hardware virtualization extensions available in modern processors from Intel (Intel VMX) and AMD (AMD SVM), making it possible to run virtual machines efficiently and with minimal overhead.
The development of KVM began in mid-2006, when Avi Kivity started working at the Israeli company Qumranet on developing a new virtualization solution. Qumranet was founded in 2005 by Benny Schnaider, Rami Tamir, Moshe Bar and Giora Yaron, and focused on virtualization software. The goal was to build a lightweight, powerful and kernel-integrated virtualization solution that could make direct use of Linux's existing kernel functionality, instead of running as a separate layer on top of the operating system.
On October 19, 2006, Avi Kivity announced KVM on the Linux kernel mailing list, an important platform for developers who contribute to the Linux kernel. In this first announcement it was made clear that the software used the Intel VMX instructions for hardware virtualization. Support for AMD's SVM technology followed shortly afterwards, which increased KVM's accessibility for users with different processor architectures.
The integration of KVM into the Linux kernel proceeded quickly. In December 2006, the KVM patch set was included in the upstream Linux kernel — the official development branch of the kernel. This meant that from that moment on KVM was officially part of the core of Linux, which was a crucial step for broad use and further development. On February 5, 2007, KVM was released as part of Linux kernel version 2.6.20. From that moment on, KVM was available to anyone running a Linux system with a compatible processor and the correct kernel version.
KVM is not a complete virtualization solution in itself. It provides the core functionality for virtualization — creating and managing virtual machines — but uses userland software such as QEMU to provide hardware emulation. QEMU emulates equipment such as network cards, disks, graphics cards and other I/O devices that a guest machine needs to function correctly. KVM handles CPU and memory virtualization via the kernel, while QEMU emulates the rest of the hardware. This combination is known as KVM/QEMU and forms the basis of many contemporary Linux-based virtualization solutions.
One of the important advantages of KVM is that it is fully open source and part of the Linux kernel. This means it benefits from the kernel's continuous development, security updates and stability. In addition, KVM can make use of existing kernel mechanisms such as memory management, process scheduling and network stack, which leads to an efficient and well-integrated solution.
In August 2007, the first KVM Forum took place in Tucson, Arizona, United States. This event was organized by Qumranet and brought together developers, users and stakeholders to exchange knowledge about KVM. Avi Kivity was not only the keynote speaker, but also served as maintainer of the project — the person responsible for managing code submissions, releases and the general direction of development.
In September 2008, Red Hat acquired the company Qumranet for 107 million dollars. This acquisition marked an important turning point in the history of KVM. After the acquisition, the project came under the wing of Red Hat, one of the largest players in the open source and enterprise Linux world. Red Hat continued KVM's development and began integrating it into its own products, in particular Red Hat Enterprise Linux (RHEL).
In RHEL 5.4, Red Hat introduced support for both Xen and KVM as hypervisors. This gave users a choice between two virtualization platforms. However, from the release of RHEL 6.0 in 2010, Red Hat explicitly chose KVM as the default hypervisor. Xen was no longer supported as a host hypervisor, which was a clear signal of Red Hat's confidence in KVM's stability, performance and future potential.
Thanks to the support of Red Hat and other large technology companies such as IBM, Google and Intel, KVM grew into one of the most widely used virtualization solutions in data centers. It is deployed in large cloud platforms, including OpenStack, where KVM is often the default hypervisor for running virtual machines. KVM also plays a role in containerization environments, such as with Kata Containers or OpenShift, by providing secure, lightweight virtual machines that can isolate containers.
KVM is suitable for both desktop and server virtualization. At the desktop level, it is used in tools such as GNOME Boxes, a simple virtualization application that allows users to create and manage virtual machines with a graphical interface. Boxes internally uses libvirt, QEMU and KVM to realize the virtualization. It supports downloading and installing operating systems such as Fedora, Ubuntu, Debian, CentOS Stream and even Microsoft Windows, with minimal user interaction.
Another related tool is Snowglobe, a virtualization viewer developed by Bilal Elmoussaoui. Snowglobe communicates with running QEMU instances via DBus and offers a clean interface for managing virtual machines. It supports keyboard, mouse and multi-touch gestures, and is available as a Flatpak via Flathub. Although Snowglobe is not part of KVM itself, it illustrates the ecosystem of tools that have emerged around the KVM/QEMU stack.
KVM also offers advanced functionality such as live migration — moving a running virtual machine from one physical host to another without downtime — snapshots, scalable network configurations and support for various storage backends. These features make KVM suitable for production environments where reliability and flexibility are crucial.
Unlike commercial hypervisors such as VMware ESXi or Microsoft Hyper-V, KVM is fully open source and free to use. It is actively maintained by a worldwide network of developers, with Red Hat as one of the largest contributors. The code is part of the Linux kernel and falls under the GPLv2 license, which means that anyone may use, modify and distribute the source code.
KVM's integration into the kernel means it works closely with other kernel subsystems. For example, it uses kernel Samepage Merging (KSM) to save memory by combining identical memory pages in different virtual machines. It also uses SELinux for hardened security and cgroups for resource limitation and isolation.
In summary, KVM has grown from an experimental project at a small company in Israel into a core component of modern Linux-based virtualization. Its success is due to its simplicity, efficiency, open source nature and the strong support of large players in the IT industry. Through its integration into the Linux kernel and its collaboration with tools such as QEMU and libvirt, KVM forms the backbone of countless virtualization and cloud environments worldwide.