Information AboutVtx |
| CATEGORIES ABOUT X86 VIRTUALIZATION | |
| virtualization software | |
| x86 architecture | |
|
x86 virtualization is the method by which X86 -based "guest" operating systems are run under another "host" x86 operating system, with little or no modification of the guest OS. The x86 processor architecture did not originally meet the Popek And Goldberg Virtualization Requirements . As a result, it was very difficult to implement a general Virtual Machine on an x86 processor. In 2005 and 2006, extensions to their respective x86 architectures by Intel and AMD resolved this and other virtualization difficulties. SOFTWARE TECHNIQUES 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 Free Software for x86 virtualization. The focus of this 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, Microsoft Virtual PC and Microsoft Virtual Server , based on technology they acquired from Connectix . Open Source alternatives include QEMU and VirtualBox . The research systems Denali , L4 , and Xen explored ways to provide high performance virtualization of x86 by implementing a virtual machine that differs from the raw hardware. Operating systems are Ported to run on the resulting virtual machine, which does not implement the hard-to-virtualize parts of the actual x86 instruction set. This technique is known as Paravirtualization . HARDWARE SUPPORT Intel and AMD have independently developed virtualization extensions to the x86 architecture. They are not directly compatible with each other, but serve largely the same functions. Either will allow a virtual machine Hypervisor to run an unmodified guest operating system without incurring significant Emulation performance penalties. Intel VT (IVT) Intel's virtualization extension for 32-bit and 64-bit x86 architecture is named ''IVT'' (short for ''Intel Virtualization Technology''), and is sometimes referred to by the development code name "Vanderpool". The 32-bit or IA-32 IVT extensions are referred to as ''VT-x'' 1. Intel has also published specifications for IVT for the IA-64 ( Itanium ) processors which are referred to as ''VT-i'' ; formerly the IA-64 virtualization was code-named "Silvervale". Intel VT was officially launched at the Intel Developer Forum Spring 2005. It is available on certain (excluding T2300E) and Core 2 Duo processors (excluding the T5200, T5250, T5300, T5450, T5470, T5500, E4x00, E2xx0). On some implementations, IVT support may be switched off in the Firmware . This can be determined by checking if the VMX flag is enabled by the Feature Control MSR. Documentation on the Intel website has stated that VT requires not only support from the processor, but also support from the Chipset , BIOS , and perhaps software 34. Intel plans to add a technology named Virtualization For Directed I/O (''VT-d'') to VT. This provides a way of configuring interrupt delivery to individual virtual machines and an IOMMU for preventing a virtual machine from using DMA to break isolation. AMD virtualization (AMD-V) AMD's virtualization extensions to the 64-bit x86 architecture is named ''AMD Virtualization'', abbreviated ''AMD-V''. It is still referred to as "Pacifica", the AMD internal project code name. AMD-V is present in all K8 AMD (Athlon 64) processors from stepping "F" and all newer processors support AMD-V technology. This applies for all current Socket AM2 and Socket F processors. AMD has published a specification for a technology named IO Memory Management Unit ( IOMMU ) to AMD-V. This provides a way of configuring interrupt delivery to individual virtual machines and an IO memory translation unit for preventing a virtual machine from using DMA to break isolation. The IOMMU also plays an important role in advanced operating systems (absent virtualization) and the AMD Torrenza architecture. Software utilizing VT The following software is known to conditionally make use of virtualization technology features:
Performance Standard Performance Evaluation Corporation (SPEC) has created a working group to address the development of a set of industry standard methods to compare performance of virtualization technologies. Current members of the working group include AMD , Dell , Fujitsu Siemens , Hewlett-Packard , Intel , IBM , Sun Microsystems , and VMware . SPEC is currently seeking information from the IT community to better understand the types of information that would provide the best industry Benchmark s. WINDOWS VISTA Windows Vista Home Basic And Home Premium's End User License Agreement s state that they may not be installed on a virtual machine, although there are no technological barriers preventing a user from doing so. This interpretation of the EULA has been specifically confirmed by Microsoft . SEE ALSO
REFERENCES EXTERNAL LINKS ;General links
;Hardware virtualization ''VT'' from Intel
;Hardware virtualization ''Pacifica'' from AMD
;(non-x86) Hardware virtualization from IBM
;(non-x86) Hardware virtualization for SPARC ;Blogs discussing virtualization technologies
|
|
|