Virtualization means a lot of different things
“Machine Virtualization” can be considered to be the “Father of all Virtualization” because that is what is commonly associated with the concept of Virtualization. The concept of “Machine Virtualization” provides the virtual environment for applications run within an operating system - thus simulating the existence of a physical machine (with it’s own CPU, hard-disk, memory etc.) virtually. The concept of Machine Virtualization itself can be categorized into “Hardware Virtualization” and “Operating System Virtualization”. Hardware Virtualization is the case where a software layer is used to emulate the physical hardware and each virtualization machine deals with this software emulation as if it is running on it’s own dedicated hardware. This approach is what Microsoft is propagating with it’s Hyper-V technology in it’s Windows Server 2008 platforms. Operating System Virtualization is the case where the Guest OS running inside the VMs require the services of a Host OS to perform it’s core functions.
“Server Virtualization”, “Server Consolidation”, “Application Consolidation” are more or less terms used to explain the same concept – i.e. the act of consolidating server based applications to less number of physical machines by running them within VMs. This approach prevents machine sprawl (and hence less manpower costs to administer machines) and reduces costs for power and cooling requirements (to the glee of Green IT enthusiasts) . With the VM machine management tools that vendors are providing today, administration overheads are greatly reduced. With Server Virtualization, disaster recovery, security and high availability - so important to server based applications – are well addressed.
Traditionally, server side deployments have been more with deploying a single application on a given server machine- thus you would have a database server, an email server etc on disparate machines. This has resulted in wastage of computing resources. With Virtual Machines, you can run multiple server side applications cocooned inside VM silos. Even in the case where multiple applications were indeed running in a physical server, a ‘naughty’ application would end up crashing the server and bringing down all other applications with it. A naughty application within a VM however can only bring down it’s VM which would not affect other applications running in their own VM spaces.
The concept of Desktop Virtualization is something that most developers the world over might be considerably familiar with. The facilities provided by products like Microsoft’s Virtual PC fall in this category. Desktop Virtualization helps you test your applications across various operating systems without having to deal with the hassles of procuring separate physical machines. One can also simulate and test various n-tier applications on the same physical machine by running each tier in a VM. Today, the term Desktop Virtualization is also used to consider the case where an employee’s desktop is now managed and maintained in a central server. The employee can effectively use any device to access their desktop as long as the device is capable is displaying the desktop. This approach provides enhanced security as data is now safe in a central server, control over what employees can access and not access, reduced hardware costs as client machines need not be high end, easier management with patch control not requiring visits to every physical machine etc.
Virtualization has primarily been considered as targeting the server market based on x86 based processors. But, the concept of SmartPhone Virtualization promises to virtualize a larger market in terms of mobile phones. Mobile hypervisors are being developed that are placed in the stack between the phone application and the device CPU and intercepts instructions and converts to the needs of the device processor. VMWare’s Mobile Virtualization Platform promises to do just this and in the process applications developed for Nokia phones can be run on Motorala phones for example (as long as the devices are based on the ARM architecture)
While much of the focus in the industry has been in server virtualization, the complexities of managing various types of storage devices and provisioning storage has been a continuous challenge. The concept of Storage Virtualization brings in an abstraction layer to hide applications from storage systems (collections of SAN, NAS, DAS systems etc.) and provides a consistent interface to heterogeneous storage devices and applications. Applications need not be concerned with where and how data is being stored as storage virtualization solutions take up the responsibility of maintaining this data in an appropriate device. Some intelligent storage solutions have the capability to store data of applications in various class of storage devices (tiered storage) depending on access frequency (faster storage device), security etc. Storage virtualization solutions from NetApp, VERITAS and Hitachi Data Systems are quite popular in the market today.
Network Virtualization is another talked about Virtualization concept which seems to be an abstraction that provides a way to run multiple networks (each network possibly configured for a specific purpose) using a shared network. The idea behind this could be to increase the efficiency of a large corporate network or data center. It is also possible to provide a “network in a box” where virtual machines in a single box share resources and exchange data by simulating virtual NICs. Cisco, HP are major players while VMWare, Microsoft, OpenSolaris etc. have their own network virtualization features in their virtualization offerings.
Virtualization means different things to different people-but at the end of the day it all boils down to achieving substantial cost savings by “doing more with less”. This becomes all the more relevant considering the bleak economic climate as we end the first half of the year. With there being a lot of talk of delivering on the ‘cloud’, and with a lot of CEOs acknowledging the benefits of this changed computing environment all thoughts on achieving the best out of infrastructure lead to Virtualization.
Here’s opening up the post for information regarding other types of Virtualization that you might have encountered in the industry and would like to mention ……there sure are going to be many more!

