OK – I have been having loads of fun with Microsoft’s App-V virtualisation suitability challenges over the past few months, and I now have been tasked to look at the VMware ThinApp technology.
From the VMware website, the ThinApp technology is described as a technology that:
“With ThinApp, applications are packaged into single executables that run completely isolated from each other and the operating system for conflict-free execution on end point devices. Application packages can be deployed to different Windows platforms, eliminating costly recoding and regression testing so you can easily migrate existing applications to Windows 7.”
Which is a little naughty as this messaging propagates one of the now unravelling myths about virtualisation technology. Specifically, virtualisation technologies do not solve OS level compatibility issues. If an application does not work on a platform (such as Windows 7) in a native environment, then the chances of it working in a virtualization layer (or bubble) on that same target platform are actually reduced.
Now, ThinApp is a great product and this OS level compatibility issue applies to all virtualization products across the industry including Symantec’s SWVS, Microsoft’s App-V, Citrix’s XenApp and VMware’s ThinApp.
I need to do a quick posting today, so here are two scenarios to illustrate the compatibility “question” when investigating virtualisation layers
Scenario 1: It works on Windows XP but will it work on Windows 7?
Due to the changes made in Windows 7, primarily to the underlying driver model, some applications may install, start and run correctly in an older environment (Windows XP) but may not run correctly due non-supported driver issues, security restrictions or incorrectly configured installation logic on a new platform like Windows 7. So, with specific references to non-supported drivers, if the application will not run on Windows 7, it will not run in a ThinApp layer on a Windows 7 build.
Scenario 2: It may work on Windows 7, but will it work in ThinApp?
The VMware ThinApp virtualisation technology imposes a few (but manageable) limitations on the installation and configuration of an application. One example of these limitations is Kernel mode drivers (low-level system drivers that generally relate to hardware such as drives and printers). ThinApp operates in the user context of the operating system – meaning ThinApp can not crash your workstation but it can not directly load (but it can reference) any system level resources. If an application relies on a Kernel mode driver to run correctly, ThinApp will not be able to load this driver into the user-context and the application may fail to behave as expected.
There is some good news here. Many applications are now shipping with user mode drivers; which are supported on both Windows 7 and VMware ThinApp. So, you can have your driver and virtualise it too.
VMware ThinApp Product Page