Paravirtualization

From Wikipedia, the free encyclopedia

(Redirected from Paravirtualisation)
Jump to: navigation, search

In computing, paravirtualization is a virtualization technique that presents a software interface to virtual machines that is similar but not identical to that of the underlying hardware.

Paravirtualization may allow the virtual machine monitor (VMM) to be simpler or virtual machines that run on it to achieve performance closer to non-virtualized hardware. However, operating systems must be explicitly ported to run on top of a paravirtualized VMM. Owners of proprietary operating systems may decline to allow paravirtualization for strategic purposes.

Contents

This is a new term for an old idea. IBM's VM operating system has offered such a facility since 1972[1] (and earlier as CP-67). In the VM world, this is referred to as a "DIAGNOSE code", because it uses an instruction code used normally only by hardware maintenance software and thus undefined. IBM's Conversational Monitor System uses DIAGNOSE codes to call VM to request services.

The Parallels Workstation operating system calls its equivalent a "hypercall". All are the same thing: a system call to the hypervisor below. Such calls require support in the "guest" operating system, which has to have hypervisor-specific code to make such calls.

The term "paravirtualization" was first used in the research literature in association with the Denali virtual machine monitor[2]. The term is also used to describe the Xen, L4 and TRANGO hypervisors. All these projects use paravirtualization techniques to support high performance virtual machines on x86 hardware by implementing a virtual machine that does not implement the hard-to-virtualize parts of the actual x86 instruction set.

Paravirtualization is also used on non x86 hardware platforms such as ARM, PowerPC, or even DSP's (VirtualLogix).


An example of using paravirtualization for performance, the virtual monitor can present the host operating system with an intelligent NIC with support for DMA-based sending of packets, even though the NIC on the real system lacks this capability. Sending packets is then done entirely by the virtual monitor and NIC interrupts may be processed by the monitor too. Since delivering interrupts to the host operating system is expensive, performance can improve.

  1. ^ VM History and Heritage. IBM. Retrieved on 2007-10-10.
  2. ^ A. Whitaker, M. Shaw, and S. D. Gribble, "Denali: Lightweight Virtual Machines for Distributed and Networked Applications", Univ. of Washington Technical Report 02-02-01, (2002). (Available from Denali publications, technical reports, and talks)

Advanced Search
Included Web Search Engines


Safe Search

close

Top Matching Results

Occasionally Search.com will highlight specialized results that are based on the context of your query. Examples of specialized results include specific links to news, images, or video.

Top Matching Results may highlight information from other Search.com pages, content from the CNET Network of sites, or third party content. The listings are based purely on relevance. Search.com does not receive payment for listings in this section but our partners that provide this data may get paid for listing these products.

Sponsored Links

This section contains paid listings which have been purchased by companies that want to have their sites appear for specific search terms and related content. These listings are administered, sorted and maintained by a third party and are not endorsed by Search.com.

Search Results

Search.com sends your search query to several search engines at one time and integrates the results into one list which has been sorted by relevance using Search.com's proprietary algorithm. You can customize the list of search engines included in your metasearch from the preferences.

The search engines that are used in your metasearch may allow companies to pay to have their Web sites included within the results. To view the Paid Inclusion policy for a specific search engine, please visit their Web site. Search.com does not accept payment or share revenue with any search engine partner for listings in this section.