Part 1 - What Is Application Virtualization

by Chris Hampton

If you have spent time around the proverbial IT water cooler or stopped by your favorite tech blog lately, I am sure you have heard all the hype around virtualization. Virtualization is one of the hottest topics in the IT industry and according to Gartner Research, virtualization will be the number one technology initiative in 2009. With constrained budgets and a heightened sense of urgency from many corporate CFOs, IT directors and CIOs are turning to virtualization for cost savings.

Many corporate virtualization initiatives are focused on server consolidation and centralization—rightly so due to the high return on investment (ROI); however, these initiatives often fall short on their overall vision of what a fully virtualized infrastructure can be. I have seen too many organizations stop at the first step of server virtualization and proclaim success without taking into account the holistic view of virtualized servers, desktops, and applications.

With a specific focus on virtual desktop infrastructure (VDI) initiatives, smart organizations must see applications as the starting point for the overall design. Think about what makes an organization productive. It is reliable access to a specific set of corporate-sanctioned applications. In the end, it's all about the application. Of course, you will need to design and build a robust virtual infrastructure with all the bells and whistles to support your virtual desktop initiative, but if you do not consider the applications in the design, the entire initiative may fail. Application virtualization should be the cornerstone of a well-designed virtual infrastructure. The focus of this four-part series is to highlight application virtualization and the overarching benefits of this technology.

What Is Application Virtualization?

Application virtualization is all about separating the application from the guest operating system (OS). Technically referred to as abstraction or decoupling, application virtualization involves encapsulating the application within a virtual container, including private registry and file system locations for application access.

Traditional application deployments involve installing the application onto the OS, including multiple updates to the system registry and local file system. The application becomes bound to the specific guest OS. Why is this a problem?

  • Installed applications are inflexible and cannot be easily ported between different hardware platforms or guest OSs.
  • Installed applications also become susceptible to OS changes through normal updates and patching.
  • Installed applications do not allow for application contention (two applications requiring different versions of the same system file or supporting applications such as Microsoft's .NET Framework).

Abstraction, Encapsulation, and Isolation! Oh My!

Application virtualization addresses the shortcomings of traditionally installed applications by using a method of abstraction, encapsulation, and isolation as Figure 1 shows.

Application Virtualization

Figure 1 : Application virtualization

Each application is abstracted from the guest OS utilizing a virtual registry and file system. The application is also isolated within a virtual sandbox environment from other applications, thus solving application conflicts and allowing for multiple versions of the same application to run on a single guest OS. The virtualized applications are encapsulated in standalone executables with embedded runtimes or CAB files making applications portable and easy to deploy on multiple hardware platforms and OSs. The guest OS also benefits from the deployment of virtualized applications through increased stability and simplified image management.

Chris Hampton, is a professional IT consultant based in Englewood, Colorado. With nearly 12 years in information technology, Chris has developed extensive experience in systems administration, engineering, and architecture specializing in VMware, Citrix, and Microsoft remote application and virtualization technologies. He has traveled extensively teaching for VMware. Chris has also contributed to the authorship of the recent The Authorized Guide to Citrix XenApp Platinum Edition (McGraw-Hill Publishers). He is currently working with the latest virtualization technologies on numerous consulting engagements. Chris holds some of the industry’s highest technical certifications from VMware, Citrix, and Microsoft in the areas of server-based computing and virtualization.