Virtualization is a broad term encompassing a set of several deployment and management features and could be defined as a technique used to abstract the physical characteristics of the resources of a system from other systems, applications or users interacting with those resources (IBM, 2008). The virtualization can make a single physical resource appear to be multiple logical resources, or multiple physical resources appear to be a single logical resource.
Virtualization is viewed as:
File virtualization: multiple files aggregated into a large file, presents integrated file interface,
Software virtualization: enabling users to use more-efficient, high-performance hardware to support hundreds of applications and several operating systems in a single system. Applications are used in data path, or in “plug-and-play” way from host view,
Desktop virtualization: providing the access from anywhere for convenience and to ensure business continuity and disaster recovery,
Workstation virtualization: enabling the centralized control of data and the efficient administration of them among multiple users in different locations,
Storage virtualization: enabling users to centralize data storage to protect data, improve security and disaster recovery, and accelerate data backups, while desktop virtualization enables moving of data, applications, and processing away from desktop PCs onto secure, cost-efficient virtualized network resources, replacing PCs with virtualized thin-client computers (Moore, 2006).