what is paravirtualization
时间:2007-05-23 来源:joey
what is paravirtualization, 来自http://searchservervirtualization.techtarget.com/的解释可谓经典:
http://searchservervirtualization.techtarget.com/sDefinition/0,,sid94_gci1224295,00.html
Paravirtualization is an enhancement of virtualization technology in which a guest OS is recompiled prior to installation inside a virtual machine. Paravirtualization allows for an interface to the virtual machine that can differ somewhat from that of the underlying hardware. This capacity minimizes overhead and optimizes system performance by supporting the use of virtual machines that would be underutilized in conventional or full virtualization. The main limitation of paravirtualization is the fact that the guest OS must be tailored specifically to run on top of the virtual machine monitor (VMM), the host program that allows a single computer to support multiple, identical execution environments. However, paravirtualization eliminates the need for the virtual machine to trap privileged instructions. Trapping, a means of handling unexpected or unallowable conditions, can be time-consuming and can adversely impact performance in systems that employ full virtualization. Paravirtualization is an expansion of a technology that has existed for years in the IBM OS known as VM. Xen, an open-source software project, incorporates paravirtualization.
|
提到paravirtualization, 就会想到Xen,VMware攻击Xen时,并不讳言Xen的性能会好一些,官方的说法是Xen的虚拟化开销为3%, 而VMware为5%. 但VMware也会说用paravirtualization需要modify guest OS. 今天遇到的egenera也是使用的paravirtualization, 对于linux,实际上就是适用由厂商提供的具备paravirtualization功能的kernel, 对于windows的VM, paravirtualization是指支持虚拟化指令集的CPU.
以下来自于VMware对于paravirtualization的解释,显然VMware也在向paravirtualization技术靠拢。不过出于商业的考虑,VMware提供的VMI接口主要是使得其他的paravirtualization的虚拟机可以运行在VMware自己的hypervisor上。
http://www.vmware.com/interfaces/paravirtualization.html
Transparent Paravirtualization A hypervisor provides the virtualization abstraction of the underlying computer system. In full virtualization, a guest operating system runs unmodified on a hypervisor. However, improved performance and efficiency is achieved by having the guest operating system communicate with the hypervisor. By allowing the guest operating system to indicate its intent to the hypervisor, each can cooperate to obtain better performance when running in a virtual machine. This type of communication is referred to as paravirtualization. In 2005, VMware proposed a paravirtualization interface, the Virtual Machine Interface (VMI), as a communication mechanism between the guest operating system and the hypervisor. This interface enabled transparent paravirtualization in which a single binary version of the operating system can run either on native hardware or on a hypervisor in paravirtualized mode. In 2006, VMware continued its work in paravirtualization by releasing the VMI specification as an open specification. In order to foster industry evaluation and feedback, VMware is releasing a Technology Preview that demonstrates support for paravirtualized operating systems in a hosted environment using VMI. VMware continues its collaboration with the Linux community to develop a paravirtualization interface that supports multiple hypervisors. A proposal, referred to as paravirt-ops, is being adapted by developers from IBM, VMware, RedHat, and XenSource. This proposed interface incorporates many of the concepts of VMI including the support of transparent paravirtualization. Using this interface, a paravirtualized Linux operating system will be able to run on any hypervisor that supports it. VMware is adding support for paravirtualized operating systems as they become adopted in commercial operating system distributions across its virtual infrastructure platform products.
|
Xen自己的解释:
http://www.xensource.com/xen/xen/paravirtualization.html
Paravirtualization
Paravirtualization is State of the Art Virtualization Other vendors are now rushing to implement paravirtualization but are years behind XenSource.
Paravirtualization: A New Approach to Virtualization
Leverages Hardware Virtualization
Paravirtualization Provides Superior Performance
|
在techweb上,paravirtualization的定义直接对于xen, ;):
http://www.techweb.com/encyclopedia/defineterm.jhtml?term=Xen
Xen
Open source virtualization software that is used to partition workstations and servers into separate virtual machines, each containing its own copy of an OS. Pronounced "zen," and developed at the University of Cambridge in the U.K., Xen is noted for its fast response and low overhead. Xen is a small, low-level "hypervisor," which is the first control software loaded when the computer starts up. |