Virtualization

From Free net encyclopedia

Revision as of 09:00, 18 April 2006; view current revision
←Older revision | Newer revision→

In computing, virtualization is the process of presenting a logical grouping or subset of computing resources so that they can be accessed in ways that give benefits over the original configuration. This new virtual view of the resources is not restricted by the implementation, geographic location or the physical configuration of underlying resources. Commonly virtualized resources include computing power and data storage.

A good example of virtualization is modern symmetric multiprocessing computer architectures that contain more than one CPU. Operating systems are usually configured in such a way that the multiple CPUs can be presented as a single processing unit. Thus software applications can be written for a single logical (virtual) processing unit, which is much simpler than having to work with a large number of different processor configurations.

A new trend in virtualization is the concept of a virtualization engine which gives an overall holistic view of the entire network infrastructure by using the aggregation technique.

Contents

Types of virtualization

Virtualization is a broad term that refers to the abstraction of resources across many aspects of computing. Some common applications of virtualization are listed below.

Software virtualization

  • A virtual machine is an environment which appears to a "guest" operating system as hardware, but is simulated in a contained software environment by the host system. The simulation must be robust enough for hardware drivers in the guest system to work. The creation and management of virtual machines is often referred to as server virtualization. There are several approaches including
    • full virtualization — the virtual machine simulates the complete hardware, allowing an unmodified OS for a completely different CPU to be run. e.g. VMware
    • paravirtualization — the virtual machine does not simulate hardware but instead offers a special API that requires OS modifications. e.g. Xen
    • native virtualization — the virtual machine only partially simulates enough hardware to allow an unmodified OS to be run in isolation, but the guest OS must be designed for the same type of CPU. e.g. ?
  • Operating System-level Virtualization is virtualizing a physical server at the operating system level, enabling multiple isolated and secure virtualized servers on a single physical server. The guest OS environments are the same OS as the host system, since the same OS kernel is used to implement the guest environments.
  • Aggregation, spanning, or concatenation all combine multiple resources into larger resources or resource pools. For example, symmetric multiprocessing combines many processors; RAID and volume managers combine many disks into one large logical disk; RAIN and network equipment uses multiple links combined to work as though they offered a single, higher-bandwidth link. At a meta-level, computer clusters do all of this.
  • Application Virtualization involves the running of desktop or server application locally, using local resources, without being installed (compare with Software Installation and Terminal Services). A virtualized application runs in a small virtual environment that contains the registry entries, files, and other components that it needs to execute. This virtual environment acts as a layer between the application and the Operating System (OS), and eliminates application conflicts and application-OS conflicts.

Hardware virtualization

  • Partitioning is the splitting of a single, usually large, resource (such as disk space or network bandwidth) into a number of smaller, more easily utilized resources of the same type. This is sometimes also called "zoning," especially in storage networks.
  • Domaining

See also

Virtualization software
Virtualization hardware

External links

de:Virtualisierung (Informatik) fr:Virtualisation (informatique) pl:Wirtualizacja ru:Виртуализация