All Topics  
Hypervisor

 

   Email Print
   Bookmark   Link






 

Hypervisor



 
 
A hypervisor, also called virtual machine monitor (VMM), is a computer hardware platform virtualization software that allows multiple operating system
Operating system

An operating system is an interface between hardware and applications; it is responsible for the management and coordination of activities and the sharing of the limited resources of the computer....
s to run on a host computer concurrently.

rvisors are classified in two types:

This is the classic implementation of virtual machine architectures; the original hypervisor was CP/CMS
CP/CMS

CP/CMS was a time-sharing operating system of the late 60s and early 70s, known for its excellent performance and advanced features. It had three distinct versions:...
, developed at IBM
IBM

International Business Machines Corporation, abbreviated IBM and nicknamed "Big Blue" , is a multinational corporation computer technology and consulting corporation headquartered in Armonk, New York, New York, United States....
 in the 1960s, ancestor of IBM's current z/VM
Z/VM

z/VM is the current version in IBM's VM of virtual machine operating systems. z/VM was first released in October 2000 and remains in active use and development ....
.
More recent examples are Oracle VM
Oracle VM

Oracle VM is the server virtualization offerings from Oracle Corporation. Oracle VM is based on the open-source Xen hypervisor technology, supports both Windows and Linux guests and includes an integrated Web browser based management console....
, VMware ESX Server
VMware ESX Server

VMware ESX Server is an enterprise-level virtualization product offered by VMware. ESX Server is a component of VMware's larger offering, VMware Infrastructure, which adds management and reliability services to the core server product....
, LynxSecure from LynuxWorks
LynuxWorks

LynuxWorks, Inc. is a software company based in San Jose, California, that produces embedded operating systems and tools for embedded systems development....
, L4 microkernels
L4 microkernel family

L4 is a family of second-generation microkernels based on theoriginal designs and implementations by Germany computer scientist Jochen Liedtke....
, Green Hills Software
Green Hills Software

Green Hills Software is a privately owned company that builds operating systems and development tools for embedded systems. The company was founded in 1982 by Dan O'Dowd and Carl Rosenberg....
's INTEGRITY Padded Cell, Real-Time System's RTS-Hypervisor, VirtualLogix
VirtualLogix

VirtualLogix, Inc. is a privately owned company providing real-time virtualization software and related development tools for embedded systems. The company was founded in 2002 and is headquartered in Sunnyvale, California....
's VLX, TRANGO
Trango Virtual Processors

Trango Virtual Processors is a privately owned company that builds real-time hypervisors and development tools for embedded systems. The company was founded in 2004 by Pierre Coulombeau and Fabrice Devaux....
, IBM's POWER Hypervisor (PR/SM
PR/SM

PR/SM is a type 1 Hypervisor that allows multiple LPARs to share physical resources such as CPUs, DASD , and memory. It is integrated with all IBM System z machines....
), Microsoft's Hyper-V
Hyper-V

Microsoft Hyper-V, codenamed Viridian, formerly known as Windows Server Virtualization, is a hypervisor-based virtualization system for x86-64 systems....
 (released in June 2008), Xen
Xen

Xen is a Hypervisor for IA-32 , IA-64 and PowerPC 970 architectures. It allows several guest operating systems to be executed on the same computer hardware concurrently....
, Citrix XenServer, Parallels Server (released in 2008), ScaleMP's vSMP Foundation (released in 2005) , Sun's Logical Domains
Logical Domains

Logical Domains is a technology from Sun Microsystems released in May 2007 which offers a virtualization abstracted from all physical devices....
 Hypervisor (released in 2005), Wind River
Wind River Systems

Wind River Systems, Inc. is a publicly owned company providing embedded systems, development tools for embedded systems, middleware, and other types of software....
's hypervisor and VxWorks MILS Platform and XtratuM
XtratuM

XtratuM is an Open Source hypervisor specially designed for embedded real-time systems available for x86, PowerPC, MIPS and, recently for LEON2 processors....
.
A variation of this is embedding the hypervisor in the firmware of the platform, as is done in the case of Hitachi
Hitachi, Ltd.

is a multinational corporation specializing in high-technology and services headquartered in Marunouchi Itchome, Chiyoda, Tokyo, Tokyo, Japan. The company is the parent of the Hitachi Group as part of the larger DKB Group companies....
's Virtage hypervisor and VMware ESXi
VMware ESXi

VMware ESXi is a server virtualization software written by VMWare.VMware ESXi has the same functionality as VMware ESX, but with a 32 MB disk footprint....
.






Discussion
Ask a question about 'Hypervisor'
Start a new discussion about 'Hypervisor'
Answer questions from other users
Full Discussion Forum



Encyclopedia


A hypervisor, also called virtual machine monitor (VMM), is a computer hardware platform virtualization software that allows multiple operating system
Operating system

An operating system is an interface between hardware and applications; it is responsible for the management and coordination of activities and the sharing of the limited resources of the computer....
s to run on a host computer concurrently.

Classifications

Hypervisors are classified in two types:

  • Type 1 (or native, bare-metal) hypervisors are software systems that run directly on the host's hardware as a hardware control and guest operating system monitor. A guest operating system thus runs on another level above the hypervisor.
This is the classic implementation of virtual machine architectures; the original hypervisor was CP/CMS
CP/CMS

CP/CMS was a time-sharing operating system of the late 60s and early 70s, known for its excellent performance and advanced features. It had three distinct versions:...
, developed at IBM
IBM

International Business Machines Corporation, abbreviated IBM and nicknamed "Big Blue" , is a multinational corporation computer technology and consulting corporation headquartered in Armonk, New York, New York, United States....
 in the 1960s, ancestor of IBM's current z/VM
Z/VM

z/VM is the current version in IBM's VM of virtual machine operating systems. z/VM was first released in October 2000 and remains in active use and development ....
.
More recent examples are Oracle VM
Oracle VM

Oracle VM is the server virtualization offerings from Oracle Corporation. Oracle VM is based on the open-source Xen hypervisor technology, supports both Windows and Linux guests and includes an integrated Web browser based management console....
, VMware ESX Server
VMware ESX Server

VMware ESX Server is an enterprise-level virtualization product offered by VMware. ESX Server is a component of VMware's larger offering, VMware Infrastructure, which adds management and reliability services to the core server product....
, LynxSecure from LynuxWorks
LynuxWorks

LynuxWorks, Inc. is a software company based in San Jose, California, that produces embedded operating systems and tools for embedded systems development....
, L4 microkernels
L4 microkernel family

L4 is a family of second-generation microkernels based on theoriginal designs and implementations by Germany computer scientist Jochen Liedtke....
, Green Hills Software
Green Hills Software

Green Hills Software is a privately owned company that builds operating systems and development tools for embedded systems. The company was founded in 1982 by Dan O'Dowd and Carl Rosenberg....
's INTEGRITY Padded Cell, Real-Time System's RTS-Hypervisor, VirtualLogix
VirtualLogix

VirtualLogix, Inc. is a privately owned company providing real-time virtualization software and related development tools for embedded systems. The company was founded in 2002 and is headquartered in Sunnyvale, California....
's VLX, TRANGO
Trango Virtual Processors

Trango Virtual Processors is a privately owned company that builds real-time hypervisors and development tools for embedded systems. The company was founded in 2004 by Pierre Coulombeau and Fabrice Devaux....
, IBM's POWER Hypervisor (PR/SM
PR/SM

PR/SM is a type 1 Hypervisor that allows multiple LPARs to share physical resources such as CPUs, DASD , and memory. It is integrated with all IBM System z machines....
), Microsoft's Hyper-V
Hyper-V

Microsoft Hyper-V, codenamed Viridian, formerly known as Windows Server Virtualization, is a hypervisor-based virtualization system for x86-64 systems....
 (released in June 2008), Xen
Xen

Xen is a Hypervisor for IA-32 , IA-64 and PowerPC 970 architectures. It allows several guest operating systems to be executed on the same computer hardware concurrently....
, Citrix XenServer, Parallels Server (released in 2008), ScaleMP's vSMP Foundation (released in 2005) , Sun's Logical Domains
Logical Domains

Logical Domains is a technology from Sun Microsystems released in May 2007 which offers a virtualization abstracted from all physical devices....
 Hypervisor (released in 2005), Wind River
Wind River Systems

Wind River Systems, Inc. is a publicly owned company providing embedded systems, development tools for embedded systems, middleware, and other types of software....
's hypervisor and VxWorks MILS Platform and XtratuM
XtratuM

XtratuM is an Open Source hypervisor specially designed for embedded real-time systems available for x86, PowerPC, MIPS and, recently for LEON2 processors....
.
A variation of this is embedding the hypervisor in the firmware of the platform, as is done in the case of Hitachi
Hitachi, Ltd.

is a multinational corporation specializing in high-technology and services headquartered in Marunouchi Itchome, Chiyoda, Tokyo, Tokyo, Japan. The company is the parent of the Hitachi Group as part of the larger DKB Group companies....
's Virtage hypervisor and VMware ESXi
VMware ESXi

VMware ESXi is a server virtualization software written by VMWare.VMware ESXi has the same functionality as VMware ESX, but with a 32 MB disk footprint....
. This group also includes Kernel-based Virtual Machine
Kernel-based Virtual Machine

Kernel-based Virtual Machine is a Linux kernel virtualization infrastructure. KVM currently supports native virtualization using X86 virtualization#Intel Virtualization Technology or X86 virtualization#AMD virtualization ....
 (KVM) which turns a Linux
Linux

Linux is a generic term referring to Unix-like computer operating systems based on the Linux kernel. Their development is one of the most prominent examples of free and open source software collaboration; typically all the underlying source code can be used, freely modified, and redistributed by anyone under the terms of the GNU GPL license...
 kernel into a hypervisor.


  • Type 2 (or hosted) hypervisors are software applications running within a conventional operating system
    Operating system

    An operating system is an interface between hardware and applications; it is responsible for the management and coordination of activities and the sharing of the limited resources of the computer....
     environment. Considering the hypervisor layer being a distinct software layer, guest operating systems thus run at the third level above the hardware.
Examples include VMware Server
VMware Server

VMware Server is an entry-level server virtualization software suite from VMware, a subsidiary of EMC Corporation. VMware released version 1.0 of Server on July 12, 2006....
 (formerly known as GSX), VMware Workstation
VMware Workstation

VMware Workstation is a virtual machine software suite for x86 and x86-64 computers from VMware, a division of EMC Corporation. This software suite allows users to set up multiple x86 and x86-64 virtual computers and to use one or more of these virtual machines simultaneously with the hosting operating system....
, VMware Fusion
VMware Fusion

VMware Fusion is a virtual machine software product developed by VMware for Macintosh computers with Intel processors. Fusion allows Intel-based Macs to run x86 and x86-64 "guest" operating systems, such as Microsoft Windows, Linux, NetWare and Solaris Operating System as virtual machines simultaneously with Mac OS X as the "host" operating s...
, the open source
Open source

Open source is an approach to design, development, and distribution offering practical accessibility to a product's source . Some consider open source as one of various possible design approaches, while others consider it a critical Strategy element of their business operations....
 QEMU
QEMU

QEMU is a central processing unit emulator that relies on dynamic binary translation to achieve a reasonable speed while being easy to port on new host CPU architectures....
, Microsoft Virtual PC
Microsoft Virtual PC

Microsoft Virtual PC is a virtualization suite for Microsoft Windows, and an emulation suite for Mac OS X on PowerPC-based systems. The software was originally written by Connectix, and was subsequently acquired by Microsoft....
 and Microsoft Virtual Server
Microsoft Virtual Server

Microsoft Virtual Server is a virtualization solution that facilitates the creation of virtual machines on the Windows XP, Windows Vista and Windows Server 2003 operating systems....
 products, Sun's (formerly InnoTek) VirtualBox
VirtualBox

VirtualBox is an x86 virtualization software package, originally created by Germany software company innotek, now developed by Sun Microsystems as part of its Sun xVM virtualization platform....
, as well as Parallels Workstation
Parallels Workstation

Parallels Workstation is the first commercial software product released by Parallels, Inc., a developer of desktop and server virtualization software....
 and Parallels Desktop.


The term hypervisor apparently originated in IBM
IBM

International Business Machines Corporation, abbreviated IBM and nicknamed "Big Blue" , is a multinational corporation computer technology and consulting corporation headquartered in Armonk, New York, New York, United States....
's CP-370 reimplementation of CP-67
CP-67

CP-67 was the control program portion of CP/CMS, a virtual machine operating system developed for the IBM System/360-67 by IBM's Cambridge Scientific Center....
 for the System/370
System/370

The IBM System/370 was a model range of IBM mainframes announced on June 30, 1970 as the successors to the System/360 family. The series maintained backward compatibility with the S/360, allowing an easy migration path for customers; this, plus improved performance, were the dominant themes of the product announcement....
, released in 1972 as VM/370. The term hypervisor call, or hypercall, referred to the paravirtualization
Paravirtualization

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....
 interface, by which a guest operating system could access services directly from the (higher-level) control program – analogous to making a supervisor call to the (same level) operating system. The term supervisor
Supervisory program

A supervisory program or supervisor is a computer program, usually part of an operating system, that controls the execution of other routines and regulates Scheduling , input/output operations, Exception handling, and similar functions and regulates the flow of work in a data processing system....
 refers to the operating system kernel, which runs in supervisor state on IBM mainframes.

Mainframe origins

The first hypervisor providing full virtualization
Full virtualization

Full virtualization, in computer science, is a virtualization technique used to implement a certain kind of virtual machine environment: one that provides a complete simulation of the underlying hardware. The result is a system in which all software capable of execution on the raw hardware can be run in the virtual machine....
 was IBM's CP-40
IBM CP-40

CP-40 was a research precursor to CP-67, which in turn was part of IBM's then-revolutionary CP/CMS – a virtual machine/virtual memory time-sharing operating system for the IBM System/360-67, and the parent of IBM's VM ....
, a one-off research system that began production use in January 1967, and which became the first version of IBM's CP/CMS
CP/CMS

CP/CMS was a time-sharing operating system of the late 60s and early 70s, known for its excellent performance and advanced features. It had three distinct versions:...
 operating system. CP-40 ran on a one-off S/360-40
System/360

The IBM System/360 is a mainframe computer system family announced by IBM on April 7, 1964. It was the first family of computers making a clear distinction between computer architecture and implementation, allowing IBM to release a suite of compatible designs at different price points....
 that was customized to support virtualization. Prior to this time, computer hardware had only been virtualized enough to allow multiple user applications to be run (see CTSS and IBM M44/44X
IBM M44/44X

The IBM M44/44X was an experimental computer system from the mid 1960s, designed and operated at IBM's Thomas J. Watson Research Center at Yorktown Heights, New York....
). With CP-40, the hardware's supervisor state was virtualized as well, allowing multiple operating systems to run simultaneously.

CP-40 was soon re-implemented (as CP-67
CP-67

CP-67 was the control program portion of CP/CMS, a virtual machine operating system developed for the IBM System/360-67 by IBM's Cambridge Scientific Center....
) for the IBM System/360-67, the first production computer system capable of full virtualization
Full virtualization

Full virtualization, in computer science, is a virtualization technique used to implement a certain kind of virtual machine environment: one that provides a complete simulation of the underlying hardware. The result is a system in which all software capable of execution on the raw hardware can be run in the virtual machine....
. This machine was first shipped in 1966, and included page translation table hardware for virtual memory, and other techniques that allowed a full virtualization
Full virtualization

Full virtualization, in computer science, is a virtualization technique used to implement a certain kind of virtual machine environment: one that provides a complete simulation of the underlying hardware. The result is a system in which all software capable of execution on the raw hardware can be run in the virtual machine....
 of all kernel tasks, including I/O and interrupt handling. (Note that its "official" operating system, the ill-fated TSS/360
TSS/360

The IBM Time Sharing System TSS/360 was an early time-sharing operating system which ran on a special model of the System/360 line of mainframes, the IBM System/360 Model 67....
, did not employ full virtualization.) Both CP-40 and CP-67 began production use in 1967. CP/CMS
CP/CMS

CP/CMS was a time-sharing operating system of the late 60s and early 70s, known for its excellent performance and advanced features. It had three distinct versions:...
 was available to IBM customers from 1968 to 1972, in source code form without support.

CP/CMS
CP/CMS

CP/CMS was a time-sharing operating system of the late 60s and early 70s, known for its excellent performance and advanced features. It had three distinct versions:...
 was part of IBM's attempt to build robust time-sharing
Time-sharing

Time-sharing refers to sharing a computing resource among many users by Computer multitasking. Its introduction in the 1960s, and emergence as the prominent model of computing in the 1970s, represents a major historical shift in the history of computing....
 systems for its mainframe
Mainframe computer

Mainframes are computers used mainly by large organizations for critical applications, typically bulk data processing such as census, industry and consumer statistics, Enterprise Resource Planning, and financial transaction processing....
 computers. By running multiple operating systems simultaneously, the hypervisor increased system robustness and stability: Even if one operating system crashed, the others would continue working without interruption. Indeed, this even allowed beta
Development stage

A software release is the distribution of an initial or upgraded Software versioning of a computer software product. The software engineering and company doing the work decide on how to distribute the program or system, or changes to that program or system....
 or experimental versions of operating systems – or even of new hardware – to be deployed and debugged, without jeopardizing the stable main production system, and without requiring costly additional development systems.

IBM's System/370
System/370

The IBM System/370 was a model range of IBM mainframes announced on June 30, 1970 as the successors to the System/360 family. The series maintained backward compatibility with the S/360, allowing an easy migration path for customers; this, plus improved performance, were the dominant themes of the product announcement....
 series was announced in 1970 without any virtualization features, but these were added to the series in 1972, and have appeared in all successor systems. (All modern-day IBM mainframes, such as the zSeries
ZSeries

IBM System z, or earlier IBM eServer zSeries, is a brand name designated by IBM to all its mainframe computers.In 2000, IBM rebranded the existing System/390 to IBM eServer zSeries with the e depicted in IBM's red trademarked symbol....
 line, continue to be backwards-compatible with the 1960s-era IBM S/360 line.) The 1972 announcement also included VM/370
VM (operating system)

VM refers to a family of IBM virtual machine operating systems used on IBM System/370, System/390, zSeries, and System z IBM mainframes and compatible systems, including the Hercules emulator for personal computers....
, a reimplementation of CP/CMS
CP/CMS

CP/CMS was a time-sharing operating system of the late 60s and early 70s, known for its excellent performance and advanced features. It had three distinct versions:...
 for the S/370. Unlike CP/CMS
CP/CMS

CP/CMS was a time-sharing operating system of the late 60s and early 70s, known for its excellent performance and advanced features. It had three distinct versions:...
, IBM provided support for this version (though it was still distributed in source code form for several releases). VM stands for Virtual Machine
Virtual machine

In computer science, a virtual machine is a software implementation of a machine that executes programs like a real machine.Definitions...
, emphasizing that all, and not just some, of the hardware interfaces are virtualized. Both VM and CP/CMS enjoyed early acceptance and rapid development by universities, corporate users, and time-sharing
Time-sharing

Time-sharing refers to sharing a computing resource among many users by Computer multitasking. Its introduction in the 1960s, and emergence as the prominent model of computing in the 1970s, represents a major historical shift in the history of computing....
 vendors, as well as within IBM. Users played an active role in ongoing development, anticipating trends seen in modern open source
Open source

Open source is an approach to design, development, and distribution offering practical accessibility to a product's source . Some consider open source as one of various possible design approaches, while others consider it a critical Strategy element of their business operations....
 projects. However, in a series of disputed and bitter battles, time-sharing lost out to batch processing through IBM political infighting, and VM remained IBM's "other" mainframe operating system for decades, losing over MVS
MVS

Multiple Virtual Storage, more commonly called MVS, was the most commonly used operating system on the System/370 and System/390 IBM mainframes....
. It has enjoyed a resurgence of popularity and support in recent years as the current z/VM
Z/VM

z/VM is the current version in IBM's VM of virtual machine operating systems. z/VM was first released in October 2000 and remains in active use and development ....
 product, e.g. as the platform for Linux for zSeries.

As mentioned above, the VM control program includes a hypervisor call handler which intercepts DIAG ("Diagnose") instructions used within a virtual machine. This provides fast-path non-virtualized execution of file system access and other operations. (DIAG is a model-dependent privileged instruction, not used in normal programming, and thus is not virtualized. It is therefore available for use as a signal to the "host" operating system.) When first implemented in CP/CMS
CP/CMS

CP/CMS was a time-sharing operating system of the late 60s and early 70s, known for its excellent performance and advanced features. It had three distinct versions:...
 release 3.1, this use of DIAG provided an operating system interface that was analogous to the System/360
System/360

The IBM System/360 is a mainframe computer system family announced by IBM on April 7, 1964. It was the first family of computers making a clear distinction between computer architecture and implementation, allowing IBM to release a suite of compatible designs at different price points....
 SVC ("supervisor call") instruction, but that did not require altering or extending the system's virtualization of SVC.

UNIX and Linux servers

Several factors led to a resurgence in the use of virtualization
Virtualization

In computing, platform virtualization is a virtualization of computers or operating systems. It hides the physical characteristics of computing platform from the users, instead showing another abstract, emulated computing platform....
 technology among UNIX
Unix

Unix is a computer operating system originally developed in 1969 by a group of American Telephone & Telegraph employees at Bell Labs, including Ken Thompson , Dennis Ritchie, Douglas McIlroy, and Joe Ossanna....
 and Linux
Linux

Linux is a generic term referring to Unix-like computer operating systems based on the Linux kernel. Their development is one of the most prominent examples of free and open source software collaboration; typically all the underlying source code can be used, freely modified, and redistributed by anyone under the terms of the GNU GPL license...
 server vendors:

  • Expanding hardware capabilities, allowing more simultaneous work to be done per machine
  • Efforts to control costs and simplify management through consolidation of servers
  • The need to control large multiprocessor and cluster installations, e.g. in server farm
    Server farm

    A server farm or server cluster is a collection of computer servers usually maintained by an business to accomplish server needs far beyond the capability of one machine....
    s and render farm
    Render farm

    A render farm is a computer cluster built to Rendering computer-generated imagery , typically for film and television visual effects, using off-line batch processing....
    s
  • The improved security, reliability, and device independence possible from hypervisor architectures
  • The desire to run complex, OS-dependent applications in different hardware or OS environments


The major UNIX
Unix

Unix is a computer operating system originally developed in 1969 by a group of American Telephone & Telegraph employees at Bell Labs, including Ken Thompson , Dennis Ritchie, Douglas McIlroy, and Joe Ossanna....
 vendors, including Sun Microsystems
Sun Microsystems

Sun Microsystems, Inc. is a multinational corporation vendor of computers, computer components, computer software, and information technology services, founded on February 24, 1982....
, HP, IBM
IBM

International Business Machines Corporation, abbreviated IBM and nicknamed "Big Blue" , is a multinational corporation computer technology and consulting corporation headquartered in Armonk, New York, New York, United States....
, and SGI
Silicon Graphics

Silicon Graphics, Inc. is a company manufacturer high-performance computing solutions, including computer hardware and computer software. SGI was founded by James H....
, have been selling virtualized hardware since before 2000. These have generally been large systems with hefty, server-class price tags (in the multi-million dollar range at the high end), although virtualization is also available on some mid-range systems, such as IBM's System-P
IBM System p

The System p, formerly known as RS/6000, was International Business Machines's RISC/Unix-based server and workstation product line.In April 2008, IBM announced a rebranding of the System p and its unification with the System i platform....
 servers, Sun
Sun Microsystems

Sun Microsystems, Inc. is a multinational corporation vendor of computers, computer components, computer software, and information technology services, founded on February 24, 1982....
's CoolThreads T1000, T2000 and T5x00 servers and HP 9000
HP 9000

HP 9000 is the name for a line of workstation and server computer systems produced by the Hewlett-Packard company. The HP 9000 brand was introduced in 1984 to encompass several existing technical workstations models previously launched in the early 1980s....
 Superdome series.

Multiple host operating systems have been modified to run as guest OSes on Sun's Logical Domains
Logical Domains

Logical Domains is a technology from Sun Microsystems released in May 2007 which offers a virtualization abstracted from all physical devices....
 Hypervisor. As of late 2006, Solaris
Solaris Operating System

Solaris is a Unix-based operating system introduced by Sun Microsystems in 1992 as the successor to SunOS.Solaris is known for its scalability, especially on SPARC systems, and for originating many innovative features such as DTrace and ZFS....
, Linux
Linux

Linux is a generic term referring to Unix-like computer operating systems based on the Linux kernel. Their development is one of the most prominent examples of free and open source software collaboration; typically all the underlying source code can be used, freely modified, and redistributed by anyone under the terms of the GNU GPL license...
 (Ubuntu and Gentoo), and FreeBSD
FreeBSD

FreeBSD is a Unix-like free software operating system descended from AT&T Unix via the Berkeley Software Distribution branch through the 386BSD and Berkeley Software Distribution#4.4BSD and descendants operating systems....
 have been ported to run on top of Hypervisor (and can all run simultaneously on the same processor, as fully-virtualized independent guest OSes). Wind River "Carrier Grade Linux" also plans to run on Sun's Hypervisor. Full virtualization on SPARC
SPARC

SPARC is a Reduced Instruction Set Computer microprocessor instruction set Computer architecture originally designed in 1985 by Sun Microsystems....
 processors was not difficult because the SPARC architecture, since its inception in the mid-1980s, was deliberately kept clean of artifacts that would have impeded virtualization. (Compare with virtualization on x86 processors below)

HP's technology to host multiple OS technology on its Itanium powered systems (Integrity) is called Integrity Virtual Machines (Integrity VM). Since Itanium is capable of running HP-UX, Linux, and Windows - these environments are also supported as virtual servers on HP's Integrity VM platform. The HP-UX operating system hosts the Integrity VM hypervisor layer which allows for many important features of HP-UX to be taken advantage of and provides major differentiation between this platform and other commodity platforms - such as processor hotswap, memory hotswap, and dynamic kernel updates without system reboot. HP also provides more rigid partitioning of their Integrity and HP9000 systems by way of VPAR and NPAR technology, the former offering shared resource partitioning and the later offering complete I/O and processing isolation. The flexibility of VSE has given way to its use more frequently in newer deployments.

IBM provides non virtualization partition technology known as logical partitioning
LPAR

In computing, a logical partition, commonly called an LPAR, is a subset of computer's hardware resources, virtualization as a separate computer....
 (LPAR) and applies to System/390, zSeries
ZSeries

IBM System z, or earlier IBM eServer zSeries, is a brand name designated by IBM to all its mainframe computers.In 2000, IBM rebranded the existing System/390 to IBM eServer zSeries with the e depicted in IBM's red trademarked symbol....
, pSeries and iSeries systems.

Similar trends have been seen with x86/x86_64 server platforms, where virtualization efforts have been led by open source
Open source

Open source is an approach to design, development, and distribution offering practical accessibility to a product's source . Some consider open source as one of various possible design approaches, while others consider it a critical Strategy element of their business operations....
 projects such as Xen
Xen

Xen is a Hypervisor for IA-32 , IA-64 and PowerPC 970 architectures. It allows several guest operating systems to be executed on the same computer hardware concurrently....
. These include hypervisors built on Linux and Solaris kernels as well as custom kernels. Since these technologies span from large systems down to desktops, they are described in the next section.

PCs and desktop systems

Interest in the high-profit server hardware market sector has led to the development of hypervisors for the Intel x86 instruction-set machines, including traditional desktop PC
IBM PC

The IBM Personal Computer, commonly known as the IBM PC, is the original version and progenitor of the IBM PC compatible hardware platform ....
s. One of the early PC hypervisors was the commercial VMware
VMware

VMware, Inc. is a software developer of virtualization software. The company was founded in 1998 and is based in Palo Alto, California. The Company is majority owned by EMC Corporation ....
, introduced in 1998. Parallels, Inc.
Parallels, Inc.

Parallels, Inc. is a privately-held virtualization technology company with offices all around the world . Parallels US offices are in Seattle, WA and Washington, D.C.....
 introduced Parallels Workstation
Parallels Workstation

Parallels Workstation is the first commercial software product released by Parallels, Inc., a developer of desktop and server virtualization software....
, which is primarily used on PCs, in 2005 and Parallels Desktop for Mac
Parallels Desktop for Mac

Parallels Desktop for Mac is a software product by Parallels, Inc., a developer of desktop and server virtualization software. The only retail publisher of Parallels Desktop since July 2006 has been Nova Development....
, which runs on Mac OS X, in 2006.

The x86 architecture used in most PC systems is particularly difficult to virtualize. Full virtualization (presenting the illusion of a complete set of standard hardware) on x86 has significant costs in hypervisor complexity and runtime performance. More recently CPU vendors have added hardware virtualization assistance to their products. Intel's is called Intel VT (codenamed Vanderpool) and AMD's is referred to as AMD-V (codenamed Pacifica). These extensions address the parts of x86 that are difficult or inefficient to virtualize, providing additional support to the hypervisor. This enables simpler virtualization code and a higher performance for full virtualization.

An alternative approach requires that the guest operating system be modified to make system calls to the hypervisor, rather than executing machine I/O instructions which are then simulated by the hypervisor. This is called paravirtualization
Paravirtualization

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....
 in Xen
Xen

Xen is a Hypervisor for IA-32 , IA-64 and PowerPC 970 architectures. It allows several guest operating systems to be executed on the same computer hardware concurrently....
, a "hypercall" in Parallels Workstation
Parallels Workstation

Parallels Workstation is the first commercial software product released by Parallels, Inc., a developer of desktop and server virtualization software....
, and a "DIAGNOSE code" in IBM's VM
VM (operating system)

VM refers to a family of IBM virtual machine operating systems used on IBM System/370, System/390, zSeries, and System z IBM mainframes and compatible systems, including the Hercules emulator for personal computers....
. VMware supplements the slowest rough corners of virtualization with device drivers for the guest. All are really the same thing, a system call to the hypervisor below. Some microkernels such as Mach and L4
L4 microkernel family

L4 is a family of second-generation microkernels based on theoriginal designs and implementations by Germany computer scientist Jochen Liedtke....
 are flexible enough such that "paravirtualization" of guest operating systems is possible.

Others, like Xen, are implemented as software-only virtual machine
Virtual machine

In computer science, a virtual machine is a software implementation of a machine that executes programs like a real machine.Definitions...
s. Xen runs on a normal host operating system such as Linux
Linux

Linux is a generic term referring to Unix-like computer operating systems based on the Linux kernel. Their development is one of the most prominent examples of free and open source software collaboration; typically all the underlying source code can be used, freely modified, and redistributed by anyone under the terms of the GNU GPL license...
, and is able to run both paravirtualized and fully virtualized (i.e., unmodified) operating systems with the help of the hardware virtualization extensions Intel VT-x. The Xen distribution already contains versions of FreeBSD
FreeBSD

FreeBSD is a Unix-like free software operating system descended from AT&T Unix via the Berkeley Software Distribution branch through the 386BSD and Berkeley Software Distribution#4.4BSD and descendants operating systems....
, Linux
Linux

Linux is a generic term referring to Unix-like computer operating systems based on the Linux kernel. Their development is one of the most prominent examples of free and open source software collaboration; typically all the underlying source code can be used, freely modified, and redistributed by anyone under the terms of the GNU GPL license...
, NetBSD
NetBSD

NetBSD is a freely redistributable, open source version of the Unix-derivative Berkeley Software Distribution computer operating system. It was the second open source BSD descendant to be formally released, after 386BSD, and continues to be actively developed....
, and Plan 9 from Bell Labs
Plan 9 from Bell Labs

Plan 9 from Bell Labs is a distributed operating system, primarily used for research. It was developed as the research successor to Unix by the Computing Sciences Research Center at Bell Labs between the mid-1980s and 2002....
 that have been so modified. User programs will continue to work on Xen without change. Also, Xen has been re-implemented on the OpenSolaris
OpenSolaris

File:Opensolaris-screenshot-2008-05.pngOpenSolaris is an open source operating system based on Sun Microsystems' Solaris . It is also the name of the project initiated by Sun to build a developer and user community around it....
 operating system as of build 75 — the result is called Sun xVM Server
Sun xVM

Sun xVM is a family of four technologies from Sun Microsystems that address desktop and server virtualization, as well as datacenter automation....
.

In June 2008, Microsoft delivered a new Type 1 hypervisor called Hyper-V
Hyper-V

Microsoft Hyper-V, codenamed Viridian, formerly known as Windows Server Virtualization, is a hypervisor-based virtualization system for x86-64 systems....
 (codenamed "Viridian" and previously referred to as Windows Server virtualization); the design features OS integration at the lowest level. New versions of the Windows operating system
Microsoft Windows

Microsoft Windows is a series of software operating systems and graphical user interfaces produced by Microsoft. Microsoft first introduced an operating environment named Windows in November 1985 as an add-on to MS-DOS in response to the growing interest in graphical user interfaces ....
 beginning with Windows Vista
Windows Vista

Windows Vista is one member in a family of operating systems developed by Microsoft for use on personal computers, including home and business Desktop computer, laptops, Tablet PCs, and media center PCs....
 include extensions to boost performance when running on top of the Viridian hypervisor.

Embedded systems

Virtual machines have recently appeared in embedded systems, such as mobile phones. This is driven by the desire to provide a high-level operating-system interface for application programming, such as Linux
Linux

Linux is a generic term referring to Unix-like computer operating systems based on the Linux kernel. Their development is one of the most prominent examples of free and open source software collaboration; typically all the underlying source code can be used, freely modified, and redistributed by anyone under the terms of the GNU GPL license...
 or Microsoft Windows
Microsoft Windows

Microsoft Windows is a series of software operating systems and graphical user interfaces produced by Microsoft. Microsoft first introduced an operating environment named Windows in November 1985 as an add-on to MS-DOS in response to the growing interest in graphical user interfaces ....
, while at the same time maintaining traditional real-time operating system
Real-time operating system

A Real-Time Operating System is a Computer multitasking operating system intended for real-time computing applications. Such applications include embedded systems , industrial robots, spacecraft, industrial control , and scientific research equipment....
 (RTOS) APIs. The low-level RTOS environments need to be retained for legacy support, and because the real-time capabilities of high-level OSes are insufficient for many embedded applications.

Embedded hypervisors
Embedded Hypervisor

Software virtualization has been a major topic in the enterprise space for quite some time, but has become an important technology for embedded systems only in the last few years....
 must therefore be real-time
Real-time computing

In computer science, real-time computing is the study of Computer hardware and computer software systems that are subject to a "real-time constraint"?i.e., operational deadlines from event to system response....
 capable, a design criterion not present for hypervisors used in other domains. The resource-constrained nature of many embedded systems, especially battery-powered mobile systems, imposes a further requirement for small memory size and low overhead. Finally, in contrast to the ubiquity of the x86 architecture in the PC world, the embedded world uses a wider variety of architectures. Support for virtualization requires memory protection
Memory protection

Memory protection is a way to control memory usage on a computer, and is core to virtually every modern operating system. The main purpose of memory protection is to prevent a process running on an operating system from accessing memory beyond that allocated to it....
 (in the form of a memory management unit
Memory management unit

A memory management unit , sometimes called paged memory management unit , is a computer hardware component responsible for handling accesses to computer memory requested by the central processing unit ....
 or at least a memory protection unit) and a distinction between user mode and privileged mode, which rules out most microcontrollers. This still leaves x86, MIPS
MIPS architecture

MIPS is a RISC instruction set architecture developed by MIPS Technologies . In the mid to late 1990s, it was estimated that one in three RISC microprocessors produced were MIPS implementations....
, ARM
ARM architecture

The ARM architecture is a 32-bit RISC central processing unit architecture developed by ARM Limited that is widely used in embedded system designs....
 and PowerPC
PowerPC

PowerPC is a RISC instruction set architecture created by the 1991 Apple Inc.?IBM?Motorola alliance, known as AIM alliance. Originally intended for personal computers, PowerPC CPUs have since become popular embedded system and high-performance processors....
 as widely-deployed architectures on medium- to high-end embedded systems.

As embedded-system manufacturers usually have source code to their operating systems, there is less need for full virtualization
Full virtualization

Full virtualization, in computer science, is a virtualization technique used to implement a certain kind of virtual machine environment: one that provides a complete simulation of the underlying hardware. The result is a system in which all software capable of execution on the raw hardware can be run in the virtual machine....
 in this space. Instead, the performance advantages of paravirtualization
Paravirtualization

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....
 make this usually the virtualization technology of choice. Nevertheless, ARM has recently added a limited form of support for full virtualization (single guest only) with their TrustZone technology.

Other differences between virtualization in server/desktop and embedded environments are requirements for efficient sharing of resources across virtual machines, high-bandwidth, low-latency inter-VM communication, a global view of scheduling and power management, and fine-grained information-flow control.

The first (and so far only) hypervisor deployed in a commercially-sold mobile embedded system (a Toshiba
Toshiba

is a multinational corporation list of conglomerates manufacturing company, headquartered in Tokyo, Japan. The company's main business is in Infrastructure, Consumer Products, and Electronic devices and components....
 mobile phone) is , a commercial member of the L4 microkernel family
L4 microkernel family

L4 is a family of second-generation microkernels based on theoriginal designs and implementations by Germany computer scientist Jochen Liedtke....
. It supports x86, ARM and MIPS processors.

Other hypervisors for embedded use include:
  • TRANGO, which supports ARM, MIPS and PowerPC.,
  • x86-based LynxSecure from LynuxWorks
    LynuxWorks

    LynuxWorks, Inc. is a software company based in San Jose, California, that produces embedded operating systems and tools for embedded systems development....
    ,
  • the XtratuM
    XtratuM

    XtratuM is an Open Source hypervisor specially designed for embedded real-time systems available for x86, PowerPC, MIPS and, recently for LEON2 processors....
     from the Universidad Politécnica de Valencia (Spain),
  • the RTS-Hypervisor from Real-Time Systems which supports Windows XP
    Windows XP

    Windows XP is a line of operating systems produced by Microsoft for use on personal computers, including home and business desktops, laptop, and media centers....
    , Windows CE
    Windows CE

    Windows CE is Microsoft's operating system for minimalistic computers and embedded systems. Windows CE is a distinctly different operating system and Kernel , rather than a trimmed-down version of desktop Windows....
    , Linux
    Linux

    Linux is a generic term referring to Unix-like computer operating systems based on the Linux kernel. Their development is one of the most prominent examples of free and open source software collaboration; typically all the underlying source code can be used, freely modified, and redistributed by anyone under the terms of the GNU GPL license...
    , On Time RTOS-32, VxWorks
    VxWorks

    VxWorks is a real-time operating system operating system made and sold by Wind River Systems of Alameda, California, California, USA.VxWorks is designed for use in embedded systems....
    , RadiSys'
    RadiSys

    RadiSys Corporation is a supplier of embedded systems and related technology, with corporate headquarters in Hillsboro, Oregon within the Portland metropolitan area....
     Microware
    Microware

    Microware is a United States corporation that produced the OS-9 Real-time computing operating system.Microware Systems Corporation existed as a separate entity from 1977 until September 2001, when it was bought by RadiSys, and became a division of that company....
     OS-9
    OS-9

    OS-9 is a family of real-time computing, process , computer multitasking, multi-user, Unix-like operating systems, developed in the 1980s, originally by Microware for the Motorola 6809 microprocessor....
    , Pharlap ETS, and
  • the Wind River
    Wind River Systems

    Wind River Systems, Inc. is a publicly owned company providing embedded systems, development tools for embedded systems, middleware, and other types of software....
     hypervisor which supports Linux and VxWorks on popular embedded processors.


Rootkits

A rootkit
Rootkit

A rootkit is malware which consists of a Computer program designed to hide or obscure the fact that a system has been compromised. Contrary to what its name may imply, a rootkit does not grant a user administrator access as it requires such access to execute and tamper with system files and processes....
 can in theory install itself as a hypervisor, and thereby intercept any operations of the original operating system, which unknowingly becomes a virtual machine
Virtual machine

In computer science, a virtual machine is a software implementation of a machine that executes programs like a real machine.Definitions...
. The concept has been demonstrated via the SubVirt laboratory rootkit, developed jointly by Microsoft
Microsoft

Microsoft Corporation is a multinational corporation computer technology corporation that develops, manufactures, licenses, and supports a wide range of computer software products for computing devices....
 and University of Michigan
University of Michigan

The University of Michigan, Ann Arbor, Michigan is a public university research university located in the state of Michigan. It is the state's oldest university and the flagship campus of the University of Michigan, which also includes two regional campuses in University of Michigan-Flint and University of Michigan-Dearborn....
 researchers, as well as Blue Pill
Blue pill (malware)

Blue Pill is the codename for a controversial rootkit based on x86 virtualization technology that targets Microsoft's Windows Vista operating system....
. Security best practice therefore is to disable hardware virtualization features at BIOS level on machines that will not be using this technology.

See also

  • Comparison of platform virtual machines
  • Virtualization
    Virtualization

    In computing, platform virtualization is a virtualization of computers or operating systems. It hides the physical characteristics of computing platform from the users, instead showing another abstract, emulated computing platform....
  • Nanokernel
  • Embedded Hypervisor
    Embedded Hypervisor

    Software virtualization has been a major topic in the enterprise space for quite some time, but has become an important technology for embedded systems only in the last few years....