Virtualization Definitions

According to Wikipedia

Virtualization in computing, is the creation of a virtual (rather than actual) version of something, such as a hardware platform, operating system, a storage device or network resources

Virtualization can be viewed as part of an overall trend in enterprise IT that includes autonomic computing, a scenario in which the IT environment will be able to manage itself based on perceived activity, and utility computing, in which computer processing power is seen as a utility that clients can pay for only as needed. The usual goal of virtualization is to centralize administrative tasks while improving scalability and work loads.

According to Gartner

IT virtualization is the abstraction of IT resources in a way that masks the physical nature and boundaries of those resources from resource users. An IT resource can be a server, a client, storage, networks, applications or operating systems. Essentially, any IT building block can potentially be abstracted from resource users.

Abstraction enables better flexibility in how different parts of an IT stack are delivered, thus enabling better efficiency (through consolidation or variable usage) and mobility (shifting which resources are used behind the abstraction interface), and even alternative sourcing (shifting the service provider behind the abstraction interface, such as in cloud computing). A key to virtualization is being able to effectively describe what is required from the resource in an independent, abstracted and standardized manner.

In essence, cloud computing is all about abstracting service implementation away from the consumers of the services by using service-based interfaces (in other words, the interface for cloud-computing services is all about virtualization — an abstraction interface). But, to a provider, virtualization creates the flexibility to deliver resources to meet service needs in a very flexible, elastic, rapidly changing manner. The tools that make that happen could be virtual machines, virtual LANs (VLANs), or grid/parallel programming.