Hardware level virtualization is not a new technology, this technique used since the 60’s but in recent years, the importance has been increased as the consumer level processors from Intel and AMD supports Hardware level virtualization. Also the Open Source Operating Systems (different flavors of free Linux) and supportive Virtualization Software has increased the scope of Virtualization. Paravirtualization is not new term either.
In this article, I will not go in to details of Full Virtualization or Hardware, but Paravirtualization.
What is paravirtualization?
In Paravirtualization, the operating system run can run on another operating system that acts as a hypervisor (host). The guests have to communicate with the hypervisor to achieve virtualization. I explained in very easy language the term paravirtualization.
Advantages of paravirtualization
The advantages of this paravirtualization approach are numerous : very good performance and the ability to run different operating systems as guests. You get also all the advantages of virtualization. Its disadvantage is that operating systems must be modified guests to work in this system.
Understanding difference between Software Virtualization and Paravirtualization
Paravirtualization is a technique where virtualization system allows some direct calls to the hardware, thereby reducing the performance penalty that involves while running a 100% virtualization. This is possible due to features of modern processors, like Intel VT and AMD-V. These APIs provide special instructions that you can use virtualization software to enable more efficient execution.
Software virtualization is said to have 2% , where as normal virtualization it is about 20% penalty.
Operating System support for Paravirtualization
Host can be almost any Linux distribution and there are ports for NetBSD and OpenSolaris. With the proprietary operating systems the reverse happens, because you need to modify the kernel to run this paravirtualization with a different privilege level, so none of the Windows family can be used as a guest.
However, this limitation of paravirtualization is eliminated with the new virtualization technologies from Intel and AMD, which allow operating systems to run processor 0 level without modification, leaving a special privilege level for the hypervisor. This special privilege level is called root-mode, the other components are in non-root-mode.
I have mercilessly copy pasted 2-3 lines in this article on paravirtualization from an Article by Tim Jones, ” Virtual Linux” (IBM). The image used to demonstrate paravirtualization is also his intellectual property. Thoughts from several text books on Paravirtualization has been reflected here. Paravirtualization basically is not for Windows, but Paravirtualization is best for Linux host.
This article on Paravirtualization is written by James B. Lee, M Phil.