Paravirtualization works by allowing the guest OS of a VM to communicate directly with the underlying hypervisor,...
By submitting your personal information, you agree that TechTarget and its partners may contact you regarding relevant content, products and special offers.
such as Xen. This means the guest OS is aware of the underlying virtualization. It also means that the guest OS must be adapted or modified to handle direct communications. Full virtualization -- now assisted by command set extensions in processor hardware -- uses complete hardware emulation and doesn't allow such direct communication. Each guest OS is completely unaware of the underlying virtualization, and no OS modifications are required.
Ultimately, the need to use modified OSes for a paravirtualization interface will limit the number of OSes that can be selected for deployment. The good news is that paravirtualization functionality is now part of the Linux kernel and other OSes, allowing for more open source options.
A paravirtualization interface that is built into an OS will typically provide features and functionality in four areas. It will supply disk and network drivers to handle storage I/O and network communication. Low-level system behaviors, like interrupts and timers, are supported so that devices can call and use system hardware. For example, paravirtualized VMs can operate block-based disk storage, SCSI disk storage, USB devices, Video Graphics Array adapters and Peripheral Component Interconnect device interfaces.
Paravirtualization includes emulated motherboard support, allowing software drivers to help accommodate the differences in circuitry between physical motherboards. This works to expand the system hardware support for paravirtualization. Legacy boot allows a system to start using traditional basic input/output system firmware rather than later Unified Extensible Firmware Interface firmware. This helps support older hardware platforms that might still be used to run legacy applications. Each of these functional areas can generally provide excellent performance.
Additional paravirtualization interface features include support for privileged instructions and page tables. Privileged instructions are extremely low-level processor operations that can only be executed in a protected mode -- usually to access I/O devices and sensitive data structures. Support for page tables allows the OS to map physical memory space to virtual memory space. The virtual memory is used by the VM, while the physical memory is handled by the underlying hardware. Performance for privileged instructions and page tables is generally not as good as other features and functionality.
Compare different Linux distributions
Evaluate Linux management tools
Learn about Linux administration
Dig Deeper on Introduction to virtualization and how-tos
Related Q&A from Stephen J. Bigelow
OpenStack scheduled numerous hypervisors for deprecation in 2014's OpenStack Icehouse, but no others are scheduled for future releases, up to and ...continue reading
There are many differences between OpenStack-supported hypervisors, but only some features are mandatory. Adopters need to review feature sets as ...continue reading
VIC supports container creation and image deployment through virtual container hosts, which suit well-proven workloads, or Docker container hosts, ...continue reading
Have a question for an expert?
Please add a title for your question
Get answers from a TechTarget expert on whatever's puzzling you.