ltstudiooo - Fotolia
Paravirtualization requires the guest OS to communicate with the underlying hypervisor layer. This means the OS must be modified or adapted to handle this communication and that non-modified OSes won't handle paravirtualization.
Paravirtualization support for Xen has long been added to the Linux kernel through a combination of paravirt operations extensions -- dubbed PVOPS -- and paravirtualization front-end (guest) and back-end (host) drivers that are included with Linux. PVOPS determines whether the OS is paravirtualized or not. If it is, the kernel will use paravirtualization operations and commands to communicate with the particular hypervisor.
Xen guest support for Linux first matured with Linux kernel 2.6.24. Xen host support was included in Linux kernel 2.6.37. Driver support and optimizations were finally added in Linux kernel 3.0. And Linux kernel 4.13.4 was released in late September 2017. Many major Linux distributions began providing some level of support for paravirtualization, including Red Hat Enterprise Linux (RHEL) 5, RHEL6, SUSE Linux Enterprise Server (SLES) 10, SLES 11, SLES 11 Service Pack (SP) 1, Debian Etch Linux, Debian Lenny Linux, Debian Squeeze Linux, Fedora 12 and 13 Linux, Fedora Core 16 and Ubuntu 11.10.
However, the open source nature of Linux means that paravirtualization support could vary depending on the kernel level. This occurred in previous OS versions. For example, RHEL 5 employed Linux kernel 2.6.18, while RHEL 6 used Linux 2.6.32. As another example, SLES 10 used Linux 2.6.16 while SLES 11 used Linux 2.6.27 and SLES 11 SP1 used Linux 2.6.32. Other variations also appeared in previous versions of Debian and Fedora. The message is that while each of these older OSes could provide support for paravirtualization, each might not have been capable of the same suite of features and functionality. Today, these OS versions use later versions of the Linux kernel and can offer more complete and uniform support for paravirtualization. Still, it's important for administrators to consider the kernel version for the particular OS.
Although non-modified OSes don't offer paravirtualization support, it might be possible to add paravirtualization drivers to supply paravirtualization features to the non-modified OS. For example, the Xen Windows GPLPV initiative provides paravirtualization drivers to support a Windows guest OS running on the Xen hypervisor.
Understand Linux VM limitations
Master Linux distribution upgrades
Dig Deeper on Introduction to virtualization and how-tos
Related Q&A from Stephen J. Bigelow
Regression tests and UAT ensure software quality and both require a sizeable investment. Learn when and how to perform each one, and some tips to get... Continue Reading
Learn the meaning of functional vs. nonfunctional requirements in software engineering, with helpful examples. Then, see how to write both and build ... Continue Reading
Just because software passes functional tests doesn't mean it works. Dig into stress, load, endurance and other performance tests, and their ... Continue Reading