All Topics  
Virtualization

 

   Email Print
   Bookmark   Link






 

Virtualization



 
 
In computing
Computing

Computing is usually defined as the activity of using and developing computer technology, computer hardware and computer software. It is the computer-specific part of information technology....
, platform virtualization is a 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....
 of computer
Computer

A computer is a machine that manipulates Data according to a list of Code .The first devices that resemble modern computers date to the mid-20th century , although the computer concept and various machines similar to computers existed earlier....
s or 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. It hides the physical characteristics of computing platform from the users, instead showing another abstract
Abstract

Abstract may refer to:* Abstract * Abstract * Abstract art* Abstract objectSee also* Abstraction ...
, emulated computing platform.

Concept
The term "virtualization" was coined in the 1960s, to refer to 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...
 (sometimes called pseudo machine), a term which itself dates from the experimental 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....
 system. The creation and management of virtual machines has been called platform virtualization, or server virtualization, more recently.

Platform virtualization is performed on a given hardware platform by host software (a control program), which creates a simulated computer environment, a virtual machine, for its guest software.






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



Encyclopedia


In computing
Computing

Computing is usually defined as the activity of using and developing computer technology, computer hardware and computer software. It is the computer-specific part of information technology....
, platform virtualization is a 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....
 of computer
Computer

A computer is a machine that manipulates Data according to a list of Code .The first devices that resemble modern computers date to the mid-20th century , although the computer concept and various machines similar to computers existed earlier....
s or 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. It hides the physical characteristics of computing platform from the users, instead showing another abstract
Abstract

Abstract may refer to:* Abstract * Abstract * Abstract art* Abstract objectSee also* Abstraction ...
, emulated computing platform.

Concept


The term "virtualization" was coined in the 1960s, to refer to 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...
 (sometimes called pseudo machine), a term which itself dates from the experimental 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....
 system. The creation and management of virtual machines has been called platform virtualization, or server virtualization, more recently.

Platform virtualization is performed on a given hardware platform by host software (a control program), which creates a simulated computer environment, a virtual machine, for its guest software. The guest software, which is often itself a complete operating system, runs just as if it were installed on a stand-alone hardware platform. Typically, many such virtual machines are simulated on a single physical machine, their number limited by the host’s hardware resources. Typically there is no requirement for a guest OS to be the same as the host one. The guest system often requires access to specific peripheral devices to function, so the simulation must support the guest's interfaces to those devices. Trivial examples of such devices are hard disk drive or network interface card.

Reasons for virtualization


In case of server consolidation, many small physical servers are replaced by one larger physical server, to increase the utilization of costly hardware resources such as CPU. Although hardware is consolidated, typically OSes are not. Instead, each OS running on a physical server becomes converted to a distinct OS running inside a virtual machine. The large server can "host" many such "guest" virtual machines. This is known as Physical-to-Virtual
Physical-to-Virtual

Physical-to-Virtual describes the process of decoupling and migrating a physical server's OS, applications, and data from a physical server to a virtual machine guest hosted on a virtualization platform....
 (P2V) transformation.

A virtual machine can be more easily controlled and inspected from outside than a physical one, and its configuration is more flexible. This is very useful in kernel development and for teaching operating system courses.

A new virtual machine can be provisioned as needed without the need for an up-front hardware purchase. Also, a virtual machine can easily be relocated from one physical machine to another as needed. For example, a salesperson going to a customer can copy a virtual machine with the demonstration software to his laptop, without the need to transport the physical computer. At the same time, an error inside a virtual machine does not harm the host system, so there is no risk of breaking down the OS on the laptop.

Because of the easy relocation, virtual machines can be used in disaster recovery
Disaster recovery

Disaster recovery is the process, policies and procedures related to preparing for recovery or continuation of technology infrastructure critical to an organization after a natural disaster or man-made hazards disaster....
 scenarios.

There are several approaches to platform virtualization.

Full virtualization


In 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....
, the virtual machine simulates enough hardware to allow an unmodified "guest" OS (one designed for the same instruction set
Instruction set

An instruction set is a list of all the instruction , and all their variations, that a processor can execute.Instructions include:* Arithmetic such as add and subtract...
) to be run in isolation. This approach was pioneered in 1966 with the IBM CP-40 and 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....
, predecessors of the 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....
 family. Examples outside the mainframe field include Parallels Workstation
Parallels Workstation

Parallels Workstation is the first commercial software product released by Parallels, Inc., a developer of desktop and server virtualization software....
, 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....
, 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....
, Virtual Iron
Virtual Iron

Virtual Iron Software, located in Lowell, Massachusetts, provides proprietary software for virtualization and management of a virtual infrastructure....
, 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....
, Virtual Server
Virtual server

Virtual server may refer to:* Virtual private server, a method of server hosting using virtual machines.* Virtual hosting, a method that servers such as webservers use to host more than one domain name on the same computer....
, 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....
, 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 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 GSX Server), 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....
, Adeos
Adeos

Adeos is a nanokernel hardware abstraction layer that operates between computer hardware and the operating system that runs on it. It is distinct from other nanokernels, in that it is not just a low level layer for an outer kernel....
, Mac-on-Linux
Mac-on-Linux

Mac-on-Linux is an open source virtual machine program for running Mac OS on PowerPC computers running Linux. It can also be used to run another instance of another PowerPC-based operating system ....
, Win4BSD, Win4Lin Pro
Win4Lin

Win4Lin is a Proprietary software software application for Linux which allows a user to run a copy of Microsoft Windows Windows 95, Windows 98, Windows Me, Windows 2000 or Windows XP applications on their desktop....
, and Egenera vBlade technology.

Hardware-assisted virtualization


In hardware-assisted virtualization, the hardware provides architectural support that facilitates building a virtual machine monitor and allows guest OSes to be run in isolation . In 2005 and 2006, Intel and AMD provided additional hardware to support virtualization. Examples include Linux KVM
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 ....
, VMware Workstation, 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...
, 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....
, 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....
, 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....
,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....
 and Parallels Workstation
Parallels Workstation

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

Hardware platforms with integrated virtualization technologies include:

  • x86 (and x86_64)
    X86 virtualization

    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....
    —AMD-V (previously known as Pacifica), Intel VT (previously known as Vanderpool)
    • IOMMU
      IOMMU

      In computing, an input/output memory management unit is a memory management unit that connects a direct memory access-capable I/O computer bus to the main memory....
       implementations by both AMD and Intel.
  • POWER
    Power Architecture

    Power Architecture is a broad term to describe similar RISC instruction sets for microprocessors developed and manufactured by such companies as IBM, Freescale, Applied Micro Circuits Corporation, Tundra Semiconductor and P.A....
     (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....
    /Power.org
    Power.org

    Power.org is an organization whose purpose is to develop, enable and promote Power Architecture technology. The objective is to establish open standards, guidelines, best practices and certifications regarding Power Architecture, as well as drive adoption of the platform....
    )
  • Virtage (Hitachi
    Hitachi

    Hitachi may refer to:*Hitachi, Ibaraki, Japan*Hitachi province, former province of Japan*Prince Hitachi and Princess Hitachi, members of the Japanese imperial family...
    )
  • UltraSPARC T1
    UltraSPARC T1

    Sun Microsystems' UltraSPARC T1 microprocessor, known until its 14 November 2005 announcement by its development codename "Niagara", is a multithreading, multicore central processing unit....
     & 2
    UltraSPARC T2

    Sun Microsystems' UltraSPARC T2 microprocessor is a Multithreading , Multi-core central processing unit. It is a member of the SPARC family, and the successor to the UltraSPARC T1....
     (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....
    )


Partial virtualization


In partial virtualization
Partial virtualization

Partial virtualization, in computer science, is a virtualization technique used to implement a certain kind of virtual machine environment: one that provides a partial simulation of the underlying hardware. Most but not all of the hardware features are simulated, yielding virtual machines in which some but not all software can be run with...
 (and including "address space virtualization"): The virtual machine simulates multiple instances of much (but not all) of an underlying hardware environment, particularly address space
Address space

In computing, an address space defines a range of discrete addresses, each of which may correspond to a physical or virtual memory register, a Node , peripheral device, disk sector or other logical or physical entity....
s. Such an environment supports resource sharing and process isolation, but does not allow separate "guest" operating system instances. Although not generally viewed as a virtual machine category per se, this was an important approach historically, and was used in such systems as CTSS, the experimental IBM M44/44X, and arguably systems like 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....
 and the Commodore 64
Commodore 64

The Commodore 64 is an 8-bit home computer released by Commodore International in August, 1982, at a price of United States dollar595. Preceded by the Commodore VIC-20 and Commodore MAX Machine, the C64 features 64 kilobytes of Random-access memory with sound and graphics performance that were superior to IBM-compatible computers of tha...
 (a couple of 'task switch' programs). (Many more recent systems, such as 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 ....
 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...
, as well as the remaining categories below, also use this basic approach.)

Paravirtualization


In 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....
, the virtual machine does not necessarily simulate hardware, but instead (or in addition) offers a special API that can only be used by modifying the "guest" OS. This system call to the hypervisor
Hypervisor

A hypervisor, also called virtual machine monitor , is a computer hardware platform virtualization software that allows multiple operating systems to run on a host computer concurrently....
 is called a "hypercall" in 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....
 and 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....
; it is implemented via a DIAG ("diagnose") hardware instruction in IBM's CMS
Conversational Monitor System

The Conversational Monitor System is a relatively simple interactive computing single-user operating system.* CMS is part of IBM's VM , which runs on IBM mainframe computers....
 under 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....
 (which was the origin of the term hypervisor). Examples include IBM's LPAR
LPAR

In computing, a logical partition, commonly called an LPAR, is a subset of computer's hardware resources, virtualization as a separate computer....
s,Win4Lin 9x
Win4Lin

Win4Lin is a Proprietary software software application for Linux which allows a user to run a copy of Microsoft Windows Windows 95, Windows 98, Windows Me, Windows 2000 or Windows XP applications on their desktop....
, 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....
, 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 ....
, and TRANGO.

Operating system-level virtualization


In operating system-level virtualization
Operating system-level virtualization

Operating system-level virtualization is a server virtualization method where the kernel of an operating system allows for multiple isolated user-space instances, instead of just one....
, a physical server is virtualized at the operating system level, enabling multiple isolated and secure virtualized servers to run on a single physical server. The "guest" OS environments share the same OS as the host system – i.e. the same OS kernel is used to implement the "guest" environments. Applications running in a given "guest" environment view it as a stand-alone system. Examples are Linux-VServer
Linux-VServer

Linux-VServer is a virtual private server implementation done by adding operating system-level virtualization capabilities to the Linux kernel ....
, Parallels Virtuozzo Containers, OpenVZ
OpenVZ

OpenVZ is an operating system-level virtualization technology based on the Linux kernel and operating system. OpenVZ allows a physical server to run multiple isolated operating system instances, known as containers, virtual private server , or Virtual Environments ....
, Solaris Containers
Solaris Containers

Solaris Containers is an implementation of operating system-level virtualization technology first made available in 2005 as part of Solaris 10....
, FreeBSD Jail
FreeBSD Jail

The FreeBSD prison mechanism is an implementation of operating system-level virtualization that allows BOFH to partition a FreeBSD-based computer system into several independent mini-systems called jails....
s and iCore Computer 3-in-1.

See also


  • Comparison of platform virtual machines
  • Hypervisor
    Hypervisor

    A hypervisor, also called virtual machine monitor , is a computer hardware platform virtualization software that allows multiple operating systems to run on a host computer concurrently....
  • Popek and Goldberg virtualization requirements
    Popek and Goldberg virtualization requirements

    The Popek and Goldberg virtualization requirements are a set of sufficient conditions for a computer architecture to efficiently support system virtualization....


External links