What is Virtualization?

p> Virtualization is enabling IT managers to efficiently and effectively manage the IT infrastructure at their disposal amid cost pressures and constant demand for flexibility. While the term has gained significant traction now, its core – “abstraction” has been around since long. Abstraction has been part of many IT / internet related innovations such as developing of languages such as C++, Java (both use abstraction). The power of abstraction lies in the enabling reference to objects such as hardware (disk drives), servers and storage (memory locations) etc. in generic terms. Thus in a nutshell, it eliminates “hard wired” connections.

Virtualization has been defined in many different ways, all point towards its core – abstraction and are correct in their own sense:

  1. “Virtualization broadly describes the separation of a resource or request for a service from the underlying physical delivery of that service” – VMware white paper
  2. “Virtualization software breaks the link between or "decouples" given software driven application or service and the hardware resources of the underlying system. This decoupling means that functionality delivered by software may survive the unexpected loss of the original host systems” – IDC whitepaper
  3. “Virtualization is a combination of software and hardware engineering that creates Virtual Machines (VMs) – an abstraction of the computer hardware that allows a single machine to act as if it where many machines” – Intel Corp.
  4. “Simply conceived, virtualization is a way to run multiple operating systems on a single machine — whether the virtual machines (VMs) are different operating systems altogether, versions of the same operating system to be tested, or whatever other configurations you care to imagine.” – AMD sponsored study report

Virtualization has touched upon almost all sections of IT infrastructure, and no wonder that there are so many different categories and sub-categories of virtualization present today. Some of the major ones are:

  1. Operating system virtualization
  2. Server virtualization
  3. Storage virtualization
  4. Network virtualization
  5. Desktop virtualization
  6. Application virtualization