With all the virtualization schemes running on top of Linux, how do they exploit the underlying kernel for I/O virtualization? The answer is virtio, which provides an efficient abstraction for hypervisors and a common set of I/O virtualization drivers. Discover virtio, and learn why Linux will soon be the hypervisor of choice.
linux already is the hypervisor of choice….
On x86(_64), VMware ESX(i) is. While it uses driver code from Linux and even uses Linux for the ESX service console, the hypervisor is definitely not Linux.
Xen is probably the most popular non-VMware hypervsior; although Linux is commonly ran as the privileged guest (aka dom0, which handles I/O), the Xen hypervisor is separate from Linux (and other operating systems such as Solaris can act as the dom0).
Hyper-V, Microsoft’s hypervisor, is also not Linux.
Let’s see:
* virtio host support isn’t exclusive to Linux/KVM. It’s also included in qemu and VirtualBox, neither of which are hypervisors and neither of which are exclusive to Linux.
* virtio guest drivers seem to be available for Linux and Windows. This compares favorably to Hyper-V paravirtual I/O (which supports Windows, SLE, and RHEL). But this is limited compared to Xen (Linux, Windows, Solaris, others). VMware provides tools for many operating systems (at least Linux, Windows, Solaris, and FreeBSD are officially supported).
* virtio guest drivers only provide network and block device support. VMware, Xen, and Hyper-V also support SCSI passthrough, for example.
* For those using virtualization on a desktop, VirtualBox, Parallels, and VMware all provide special graphics drivers with varying levels of guest 3D acceleration.
I use KVM and virtio, but in terms of guest I/O driver availability, it is behind. The main advantage is that virtio drivers are included in Linux.