Microsoft App-V: The Secret Powerhouse

On 16 November 2012 by Pete Petersen

App-V

In Microsoft’s long list of pervasive products, there is one lurking there that is less-understood, and certainly under-utilized, than many of the others. And that is Microsoft’s App-V.

History

First, some background. A lesser-known company called Softricity spent a number of years building their core product, SoftGrid. In its simplest form, there are two major components to consider. The process goes something like this:

  1. The Sequencer. A software package (say, Microsoft Office) is installed onto a sequencing machine that is as identical as possible to the target devices (if you’re planning to run the package on an RDS server, then sequence with the same drivers and installs already there). The Sequencing software watches the install for registry changes, DLL installs, and file changes. Also during the sequencing process, the app should be run through a number of operations so that the sequencer can capture everything it needs to deliver the package. Once all this is done, the entire install is encapsulated into a sequenced package that can be run by the SoftGrid client agent.
  2. SoftGrid Client Agent. The agent runs on the client machine (whether an end user device or an RDS server). It takes the sequenced package and runs it in a “bubble,” so to speak. It abstracts the registry and shared files so that any changes that are made are captured in the user profile data and not the base operating system. When the application is shut down, it’s as if it were never there. No registry tattoos, no file system changes, no nothing.
There are several benefits to running applications this way: It allows for a more pure desktop image. Applications do not have to be regression tested together with all other applications in the golden image. A release/rollback is as easy as managing directory groups.
However, it’s not panacea. For example, not all apps can be sequenced. Some of the difficult parts of sequencing a package (some of which can stop an application from being sequenced at all), include:
  • Device drivers
  • Local databases
  • Auto-updating
  • Microsoft Office is actually one of the more difficult packages to sequence
Another drawback and barrier to adoption was the price of the software. At the time, concurrent user licenses went for in the neighborhood of $250-400 (plus annual maintenance). This price was akin at the time to buying a XenApp infrastructure. One would really have to weigh the value of doubling the license cost of an install to add a feature to it in that case.

Then, in 2006, Microsoft bought Softricity (and SoftGrid) and promptly lowered the per-concurrent-user price to $7. Well, in many instances, that equated to nearly free and finally made it accessible as a product. The possibility of integrating into an existing infrastructure suddenly became a possibility.

For a few more details, Wikipedia has a nice write-up about App-V that includes some of the history, operations, and limitations.

The Hidden Powerhouse

One of the interesting things about App-V, as it has now been Microsoft’s product for over six years, is that it doesn’t get much press–neither from Microsoft nor from the industry.

Some of the competing technologies include:

  • Novell ZENworks Application Virtualization
  • VMware ThinApp (fka Thinstall)
  • AppZero
  • (Citrix XenApp, XenDesktop, Quest vWorkspace, and VMware View are examples of presentation virtualization, not to be confused with application virtualization technologies, such as App-V.)

So although it’s not entirely clear why this technology doesn’t get more air time, it is clear that it’s inexpensive (most volume licensed organizations already own it), but that the up-front sequencing process for an application can be complex in some cases and has a steep learning curve.

Please look at my previous post about Application Virtualization for a few more details.

Please also review Tim Mangan’s article, “What You Need To Know About App-V 5” for some good insights about the technology, and the new version.

Trackbacks & Pings