Kernel-based Virtual Machine (KVM)

KVM is a full virtualization solution for Linux on x86 hardware containing virtualization extensions (Intel VT or AMD-V). It consists of a loadable kernel module, kvm.ko, that provides the core virtualization infrastructure and a processor specific module, kvm-intel.ko or kvm-amd.ko. KVM also requires a modified QEMU although work is underway to get the required changes upstream.

Using KVM, one can run multiple virtual machines running unmodified Linux or Windows images. Each virtual machine has private virtualized hardware: a network card, disk, graphics adapter, etc. The kernel component of KVM is included in mainline Linux, as of 2.6.20.

What is it good for?

Many things, for example;

Running Windows
Trying out other Operating Systems
Development work

Although listed here under the guise of a Desktop application, KVM also works well as a server application and is very competent when it comes to providing instances as part of a Cloud based hosting infrastructure. It’s relatively easy to configure and maintain and fairly flexible. Here are some screen shots of KVM’s management interface in action;

How does it compare to the real thing?

In terms of raw performance, you won’t notice the difference, KVM is very quick. If you try it out and for some reason you find it horribly slow then it’s because it’s fallen back to QEMU (which is the non-accelerated version of KVM) either because you have a problem with your KVM installation, or because your CPU is too old and does not support the extensions required to run KVM properly.

Unlike some of it’s competitors, KVM runs a completely up-to-date kernel and as a result supports completely up-to-date kernels as guest operating systems. In addition it has a range of virtualised drivers which support network, disk access, sound card support etc, all at pretty good speeds.

In terms of reliability, subject to specific bugs / currently unknown problems, KVM would rate as very stable software.

For more details and information, please take a look at the KVM Website.

Leave a Reply

You must be logged in to post a comment.