|
|
X86 VirtualizationThe x86 processor architecture as used in modern PCs does not meet the Popek and Goldberg virtualization requirements. As a result, it is very difficult to implement a general virtual machine on an x86 processor. On February 8, 1999, VMware introduced the first x86 virtualization product, "VMware Virtual Platform", based on earlier research by its founders at Stanford University. VMware filed for a patent on their techniques in October 1998, which was granted as on May 28, 2002. VMware and similar Virtualization software for the x86 must employ very sophisticated techniques to trap and virtualize the execution of certain instructions. These techniques incur some performance overhead as compared to a VM running on a natively virtualizable architecture such as the IBM System/370 or Motorola MC68020. Kevin Lawton started the Plex86 project (originally called "freemware") to create a Free software for x86 virtualization. The focus of the project has since changed to support only Linux as a guest operating system, but prior to that Mr. Lawton published the paper Running multiple operating systems concurrently on an IA32 PC using virtualization techniques, which gives an analysis of what aspects of the x86 architecture are hard to virtualize and some techniques to overcome these difficulties. Microsoft offers two Windows-based x86 virtualization products, Virtual PC 2004 and Virtual Server 2005, based on technology they acquired from Connectix. Recent research efforts have sought to provide high performance virtualization of x86 by presenting an interface to virtual machines that differs from that of the raw hardware. Operating systems are ported to run over this interface, which does not use the hard-to-virtualize parts of the x86 instruction set. This technique is known as paravirtualization. The research systems Denali, L4 and Xen employ this technique to run modified versions of various operating systems. Hardware support in future x86 processors Intel has announced plans to add hardware support for virtualization to future x86 and Itanium processors under the code name "Vanderpool". (The Itanium version was formerly code-named "Silvervale".) Technical specifications for Vanderpool (VT) for both the IA32 and Itanium processors are available from the Intel web site. Intel has contributed support for Vanderpool to the Xen virtual machine monitor. AMD has announced that their future processors will have virtualization technology code-named "Pacifica". Pacifica is not compatible with Intel's Vanderpool, though it serves the same functions. Reportedly Pacifica will derive some benefit from the on-chip memory controller found in AMD K8 class processors. The Pacifica specification is expected to be publicly available in April 2005. It appears that some insight into Pacifica may be found in , filed on October 7, 1999 and granted on June 15, 2004. External Links See also
|
 |