What’s a Virtual App? The AnandTech posting Application Virtualization set out to find a simple definition but found it difficult.
The search turned out to be rather difficult, as it seems the different companies pursuing the technology are defining what it means. It is not our intention to declare a “winning technology” in this article; the fact is that all the products we’ll have a look at have a slightly different focus. Instead, the goal is to provide an objective view of the technology’s current possibilities for the IT market.
While the number of companies offering application virtualization is definitely growing, the bulk of the possibilities currently come from four products, namely VMware’s Thinstall, Altiris’ SVS (Software Virtualization Solution), Microsoft Application Virtualization (previously SoftGrid), and Citrix XenApp (previously Citrix Presentation Server). It’s interesting to note that in the course of the past two years, nearly all of these products were acquired by one of the major software companies, so there’s definitely interest by the big players in this field.
When moving to application virtualization, we take another step and follow the same logic, turning applications into isolated, self-contained packages that are able to operate under an OS and use all of its resources, but they are unable to wreak havoc when things go wrong. Because the packages are basically a complete environment they no longer require installation, thus providing extremely easy software distribution along with the safety of a completely isolated application. We’ll cover more of the interesting uses of application virtualization later, though.

Virtualized applications can run perfectly next to regularly installed applications, and next to each other. This allows a user to run several different versions of the same software at the same time, and can reduce software conflicts to a minimum. While researching this subject, we regularly bumped into a conflict discussing the “two kinds of application virtualization”. While the above image in fact applies to either approach, there’s a rather significant difference in their usage, so let’s cover that first.
Some players are
Microsoft Application Virtualization
Acquired by Microsoft in 2006, this software may sound more familiar by naming its previous versions: Softricity’s SoftGrid or Microsoft SoftGrid. MAV is pretty much a nice average of everything we’ve just described, developed by Microsoft to strengthen their position in the virtualization market. It uses a classic client/server model, using the Microsoft Systems Center Virtual Application Server to host the applications and provide them to the client through streaming. It allows for advanced user authorization requirements in order to deal with licensing issues, and it is able to stream selectively. This means that if a user only makes use of certain libraries within the application, only those libraries need to stream to the specific system.
XenApp
Known by many as simply Citrix, XenApp is the new name of what was previously Citrix Presentation Server. This software generally caters to a different audience, its focus being primarily applications that are run on the remote server with the interface then streamed to the user, as opposed to running the application on the client side. However, Citrix has included the possibility for application virtualization for quite a while, and with this new release it is pushing both server-side and client-side virtualization to the foreground. While this move more or less forces the software into direct competition with MAV, Citrix has stated that it believes several separate developments of the technology will increase customer awareness of its merits, and the interoperability of Citrix and Microsoft technologies will continue playing a big role in improving the user experience.
SVS
Acquired by Symantec in 2007, Altiris provides a very solid application virtualization solution with SVS. SVS (Software Virtualization Solution) adds an interesting twist to the story by introducing a slightly different look at the isolation of the applications. Instead of completely isolating separate applications, it gives users the opportunity to build up their own custom “layers”. This removes the restriction to pure software virtualization and allows us to virtualize pretty much anything in the file system; it also enables users to bundle different applications in a single layer, allowing them full communication with each other when necessary. Activating a layer will make the contained application look as if it’s installed normally, complete with its folder and files being present in the Program Files directory, while deactivating a layer removes every trace of the application from the system.
Thinstall
Though Thinstall may be the odd one out in this comparison, it is still a very capable product with an interesting approach. Acquired by VMware in January 2008, Thinstall is different from other solutions in that it is “agentless”. This means that virtualization is achieved without the need for any management software on the client, essentially making the packages useable on any computer running Windows. This is done by installing the Thinstall software on a freshly installed operating system and using it to capture the installation of any piece of software. After making the necessary changes in settings, Thinstall will compile the entire application, along with its extremely lightweight agent, into a single distributable package. This takes the portability of the software to a whole new level, allowing applications to be carried pretty much anywhere on a simple USB stick. Of course, this portability raises questions about controlling software after deployment.
At this point in this emerging horse race, I think the “agentless” aspect of Thinstall is an attribute.
…John