Types of virtualization
Hardware
Hardware virtualization or platform virtualization refers to the creation of a virtual machines that acts like a real computer with an operating system. Software executed on these virtual machines are separated from the underlying hardware resources. For example, a computer that is running Microsoft Windows may host a virtual machine that looks like a computer with Mac OS X operating system. Subsequently, Mac OS X-based software can be run on that virtual machine.
In hardware virtualization, the term host machine refers to the actual machine on which the virtualization takes place; the term guest machine, however, refers to the virtual machine. Likewise, the adjectives host and guest are used to help distinguish the software that run on the actual machine from those that run on the virtual machine. The software or firmware that creates a virtual machine on the host hardware is called Hypervisor or Virtual Machine Monitor.
Different types of hardware virtualization include:
1.Full virtualization: Almost complete simulation of the actual hardware to allow software, typically a guest operating system, to run unmodified
2.Partial virtualization: Some but not all of the target environment is simulated. Some guest software, therefore, may need modifications to run in this virtual environment.
3.Paravirtualization: A hardware environment is not simulated; however, the guest software are executed in their own isolated domains, as if they are running on a separate system. Guest software need to be specifically modified to run in this environment.
Hardware-assisted virtualization is a way of improving the efficiency of hardware virtualization. It involves employing specially-designed CPUs and hardware components that help improve the performance of a guest environment.
Hardware virtualization must not be mistaken with hardware emulation: In hardware emulation, a piece of hardware imitates another, which in hardware virtualization, a hypervisor (a piece of software) imitates a computer hardware. Furthermore, a hypervisor must not be mistaken with an emulator. These two are defined similarly: Both are computer programs that imitate hardware. However, their domain of use in language differs.
Software
Operating system-level virtualization, hosting of multiple virtualized environments within a single OS instance
Application virtualization and Workspace virtualization, the hosting of individual applications in an environment separated from the underlying OS
Memory
Memory virtualization, aggregating RAM resources from networked systems into a single memory pool
Virtual memory, giving an application program the impression that it has contiguous working memory, isolating it from the underlying physical memory implementation
Storage
Storage virtualization, the process of completely abstracting logical storage from physical storage
Distributed file system
Data
Data virtualization, the presentation of data as an abstract layer, independent of underlying database systems, structures and storage
Database virtualization, the decoupling of the database layer, which lies between the storage and application layers within the application stack
Network
Desktop virtualization, the remote display, hosting or manipulation of a graphical computer environment (desktop)
Network virtualization, creation of a virtualized network addressing space within or across network subnets
|