Dan's journey into desktop virtualizaiton land continues with this post. As I trudged down the path towards a greater understanding of all virtualization technologies, I met Kenji Obata, Founder, CEO and all around interesting person, of Xenocode and we had an interesting discussion of application virtualization and the role it plays in overall desktop virtualization. Furthermore, we discussed where Xenocode's virtualization technology and its Xenocode Virtual Operating system fit in the Kusnetzky Group model of virtualization technology. It's an interesting albeit sharply focused story.
How Xenocode describes its technologyXenocode's marketing materials include the following snippet:
Xenocode OS virtualization technology allows complex applications to be deployed in lightweight, pre-configured virtual executables that run instantly, anywhere. Xenocode virtualized applications require no setup, configuration, client, or device drivers, are isolated from external DLL and dependency conflicts, and run properly on locked-down desktops.
What is Xenocode virtualization?
Xenocode is a next-generation virtualization technology that allows applications to be deployed in lightweight, pre-configured, single-executable files that execute instantly on any Windows desktop. Unlike hardware virtualization solutions such as VMware and Virtual PC, which emulate the underlying hardware and therefore require an entire copy of the host operating system, Xenocode OS virtualization technology emulates operating system features required for application execution. As a result, Xenocode-virtualized applications have essentially the same performance characteristics as native executables, allowing for easy deployment on corporate Intranets, the web, USB keys, or existing infrastructure such as Microsoft SMS, LANDesk, Altiris, ZENWorks, Unicenter, or AppStream.
Xenocode OS virtualization technology allows IT administrators, system integrators, and software publishers to dramatically reduce the costs and complexity associated with development, setup, configuration, deployment, and maintenance of software applications, and to deploy legacy applications on Windows Vista.
How does Xenocode describe the embedded operating system they've developed?
The core of Xenocode virtualization technology is the Xenocode Virtual Operating System. The Xenocode Virtual OS kernel is a lightweight implementation of core Windows operating system APIs, including the filesystem, registry, process, and threading subsystems, completely implemented within the Windows user-mode space. The Xenocode Virtual OS kernel is embedded within each virtualized application executable, allowing virtual applications to be executed without any separate client install, device drivers, or player software.
Applications executing within the Xenocode Virtual OS environment interact with a virtualized filesystem, registry, and process environment, rather than directly with the host device operating system. The virtualization engine handles requests within the virtualized environment internally or, when appropriate, routes requests to the host device filesystem and registry, possibly redirecting or overriding requests as determined by the virtual application configuration:
Snapshot analysisAlthouhgh Xenocode's technology could be applied in numerous scenarios, it appears that the company frequently addresses application compatibility issues such as the following for its customers:
- Making today's applications work on Microsoft's Windows Vista
- Allowing applications built on different versions of Microsoft's .NET framework to live together in harmony
- Allowing applications build on different versions of Java to live in harmony
- Allowing applications to be run on locked-down desktops even though those applicaitons may require features or functions that are not typically available on this desktop or to this user
- Allowing individuals to carry applications and needed data with them so that locked down or borrowed PCs could be used to run protected applications
When Xenocode's story is analyzed, it doesn't sound all that much different from those offered by many desktop application virtualization suppliers, such as Endeavors Technologies, InstallFree, Provision Networks, Sentellion or a few others. All of these companies are addressing similar issues. All of them have unique benefits. All of them are using nearly identical language to describe what they're doing. This, of course, creates a very confusing environment for the decision maker.
Xenocode's virtual operating system seems to be a unique feature allowing applications to run in what appears to be a familiar environment, run very quickly and actually utilize only what's necessary from the host operating system.
If your organization is seeking an application virtualization toolset, Xenocode should certainly be evaluated during your search. You just may find that its features and your requirements are a good match.