Virtualization
Definition: Virtualization cannot be defined clearly without a proper example as it is a concept and not a process. In brief, it can be said that Virtualization, in computing world, means a creation of a Virtual version of something, be it a Hardware device, an operating system, a network resource or an application.
Example: Suppose a computer is running on Windows XP and VMware Workstation is installed on it. With VMware three new Virtual Machines (VMs) could be set up on that Windows XP machine and each one of them can behave like an independent system.
One VM can run on Linux Operating System, one on Windows Server 2003 and the other one in Macintosh. So, three completely different Operating systems running on a single parent Operating System, i.e. Windows XP.
Types of Virtualization
There are various kinds of Virtualization that can be done in our technical arena. Lets discuss a few among them.
i) Server Virtualization: Server Virtualization is the concept where the resources of the Physical Server are masqueraded in front of the Users. Here there prevails a concept of Host and Guest. The Host is the original Physical Server with the base operating system and the Guests are the Virtual machines that are built on Top of it. It is also possible to mask the original resources present in the physical Server and allocate only the amount required to each the Virtual Machines. So when the Users logs into the Virtual machines they can only view the selected amount of resources allocated to it. It is also possible to allocate additional resources at any point of time to the Virtual Machines. So, the Server (Virtual Machines) that the Users are using and working on are hosted on another Physical Server. So, actually the users are on a virtual Server rather than on a Physical machine.
Example: XenServer, VMWare Workstation
ii) Desktop Virtualization: Desktop Virtualization is a concept where the personal desktop computing model has been enhanced to client-server architecture. Virtual Desktop Interface or the Virtual Desktop Infrastructure is the Server-Computing Model which allows the Virtualization of the Desktop model. It allows the users with different network subscribers to use the Virtual Machines and maintain an individualized central computer or Server. It can be located at any Residence, Data center or in a Server Room of any office Campus. The Users are located at different parts of the World but they will be using that same Computer (Desktop) by using a network connection be it LAN or WAN or a simple internet cloud.
Example: XenDesktop
iii) Application Virtualization: Application Virtualization is a concept which increases the portability of Heavyweight applications among all the Users who are located geographically at different corners of the globe. Let’s think of a situation where a user is out of his home and needs to prepare a PowerPoint presentation at that very moment. He can easily find a Cyber café or Cyber zone which may also not have the required software installed on the machine, he can easily login to a server which has the required software for him and he can complete his task successfully. May be that Server is Located at Los Angeles and he is sitting in Melbourne. So, if he has his Credentials he can easily use any of the applications that are hosted from the remote Servers.
Example: Citrix Presentation Server 4.5, XenApp5 and XenApp6.
iv) Memory Virtualization: Memory Virtualization is the concept to detach the volatile memory i.e. the Random Access Memory (RAM) of the individual computers present within a Cluster or Network and build a Memory pool with it. The advantage of the concept is that by doing this each machine within that cluster or network can use the memory from the pool. So, the memory utilization is now streamlined and the memory availability becomes more. A single machine can use the required amount of memory only and the spare memory of that machine can be used by other users ho really require it.