Chinaunix首页 | 论坛 | 博客
  • 博客访问: 661734
  • 博文数量: 291
  • 博客积分: 10025
  • 博客等级: 上将
  • 技术积分: 2400
  • 用 户 组: 普通用户
  • 注册时间: 2004-12-04 12:04
文章分类

全部博文(291)

文章存档

2008年(102)

2007年(112)

2006年(75)

2004年(2)

我的朋友

分类: LINUX

2007-05-23 22:10:55

what is paravirtualization, 来自的解释可谓经典:

sDefinition/0,,sid94_gci1224295,00.html

Paravirtualization is an enhancement of technology in which a is recompiled prior to installation inside a . Paravirtualization allows for an 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 (), the program that allows a single computer to support multiple, identical execution environments. However, paravirtualization eliminates the need for the virtual machine to 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 OS known as . , an open-source software project, incorporates paravirtualization.

 

提到paravirtualization, 就会想到XenVMware攻击Xen时,并不讳言Xen的性能会好一些,官方的说法是Xen的虚拟化开销为3%, VMware5%. VMware也会说用paravirtualization需要modify guest OS. 今天遇到的egenera也是使用的paravirtualization, 对于linux,实际上就是适用由厂商提供的具备paravirtualization功能的kernel, 对于windowsVM, paravirtualization是指支持虚拟化指令集的CPU.

以下来自于VMware对于paravirtualization的解释,显然VMware也在向paravirtualization技术靠拢。不过出于商业的考虑,VMware提供的VMI接口主要是使得其他的paravirtualization的虚拟机可以运行在VMware自己的hypervisor上。

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 as an open specification. In order to foster industry evaluation and feedback, VMware is releasing a 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自己的解释:

Paravirtualization

Paravirtualization is State of the Art Virtualization
XenSource was founded by the creators of paravirtualization, the acknowledged state of the art virtualization technology that allows hosted virtual servers to collaborate with the Xen hypervisor to achieve the best performance for enterprise applications, with a smaller code base, greater security and up to 10 times less overhead than alternative virtualization approaches.

Other vendors are now rushing to implement paravirtualization but are years behind XenSource.

Comparison of Xen Paravirtualization implementation to other approaches to Paravirtualization

Paravirtualization: A New Approach to Virtualization
Pioneered by XenSource, paravirtualization delivers a factor of 10 performance advantage to virtualized servers. With this technology the virtual servers and hypervisor co-operate to achieve very high performance for I/O and for CPU and memory virtualization. In essence, Xen appears to the virtualized server as an idealized hardware abstraction layer that offers superb performance.

Leverages Hardware Virtualization
In addition, Xen uniquely takes advantage of hardware virtualization support from Intel® VT-x enabled processors (and AMD® Pacifica enabled processors in the future) to enable virtualized guests to run natively on the hardware while still achieving very high performance I/O. With alternative approaches, the hypervisor must binary patch running guests to prevent them from interacting with the hardware, resulting in high performance overhead and stability and security risks. Moreover, this approach results in significant I/O performance impact.

Paravirtualization Provides Superior Performance
Paravirtualization requires a tiny hypervisor code base (Xen is under 50 KLOC) that results in extremely low performance overhead, typically in the range of 0.1% to 3.5% for industry standard performance benchmarks. It also leverages all of the native Linux device drivers and therefore supports an extremely diverse set of drivers. Xen’s paravirtualized drivers run outside the core hypervisor, where they implement policy for resource sharing between multiple guests, providing fine-grained partitioning of I/O between multiple virtual servers. Another benefit of this approach is that drivers run at a lower protection level than Xen, making the hypervisor impervious to driver failure.

 

techweb上,paravirtualization的定义直接对于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.

     Originally developed for x86 machines, support for the IA-64 (Itanium) and POWER5 (Mac) platforms followed. Xen gained wide acceptance in the Linux server market in the 2005 time frame.

The OS Must Be Ported
Xen uses one or more privileged "guest" operating systems for handling the actual device drivers for the hardware. Known as "para-virtualization" and unlike other VM environments where the OS runs as is, the OS that runs on top of Xen must be ported to call Xen virtual drivers which call the real drivers. Linux and versions of Unix were the first operating systems ported to Xen.

     Because the real drivers run outside of Xen, the machine can always be booted into a consistent, secure base personality. In addition, a virtual machine (OS and apps) can be moved to another server and continue running in a matter of seconds.

No Porting for Hardware Virtualization
There is no requirement to port the operating system to Xen if the hardware platform offers support for virtualization, such as Intel's VT, AMD's Pacifica and IBM's POWER5 architecture. For more information, visit Xensource (), which was founded in 2004 by the people who created Xen. See , and .

 

阅读(1478) | 评论(2) | 转发(0) |
给主人留下些什么吧!~~

chinaunix网友2010-02-21 15:42:46

谢谢分享!!!!