X

The virtualized client is coming

Citrix's XenClient offers a window to a future where virtualization is just part of the way that client systems are designed and built.

Gordon Haff
Gordon Haff is Red Hat's cloud evangelist although the opinions expressed here are strictly his own. He's focused on enterprise IT, especially cloud computing. However, Gordon writes about a wide range of topics whether they relate to the way too many hours he spends traveling or his longtime interest in photography.
Gordon Haff
4 min read

LAS VEGAS--The Day One keynotes at Citrix Synergy 2009 were about users and desktops. Today was nominally about data centers and clouds--of which there were a variety of announcements. However, Citrix's XenClient ("Project Independence") loomed large as well.

Of the products discussed on stage, XenClient is perhaps furthest from being a fully realized product. But is also offers an intriguing window into how the PC as we know it is likely to fundamentally change over the coming years.

XenClient is a "Type 1" native hypervisor that sits on a PC and hosts one or more guest operating systems. This approach contrasts with the "Type 2" hosted hypervisors that are far more common on PCs today.

There are good reasons why we tend to see native hypervisors on servers and hosted hypervisors on desktops. Native hypervisors are higher performance, especially when it comes to interacting with networks and disks. As a result, it wasn't until native hypervisors like VMware ESX Server and Xen came to market that x86 virtualization started to seriously move beyond useful but relatively narrow uses such as in test and development labs.

The downside of native hypervisors is that, because they sit directly on top of a system's hardware, they have to take over a variety of the functions that an operating system usually performs. For example, a native hypervisor has to deal with things like power management and needs to know how to talk to graphics cards and chips, network and storage adapters, and other system hardware.

(Depending upon the virtualization architecture in question, some device interactions can be passed through to the guest operating systems, but the point remains that a native hypervisor is exposed to hardware details and idiosyncrasies that are masked if the hypervisor is hosted on an operating system.)

The great diversity of client hardware relative to server hardware therefore makes running native hypervisors on a PC tricky business.

It's also been the case that vendors haven't exactly pushed client-side virtualization--in contrast to using application virtualization to deliver software to clients--in a broad way. Hosted virtualization products handle specific use cases such as security (VMware ACE), running Windows applications on Macs (Parallels Desktop for Mac, VMware Fusion), and software development (VirtualBox, VMware Workstation). Start-ups are also tackling the security angle with alternative approaches. RingCube uses containers. Neocleus uses a Xen-based native hypervisor.

But no large vendor has seriously pushed a broad-based Type 1 hypervisor for the client. Microsoft, for its part, has been publicly skeptical about the idea. (Not especially surprising given that Microsoft has only reluctantly embraced virtualization--in part because native virtualization takes over some of the traditional tasks of the operating system.)

That changes with XenClient, a project that Citrix has collaborated on closely with Intel.

Here's how Citrix describes XenClient and its vision for desktop computing:

XenClient is a strategic product initiative with partners like Intel, focused on local virtual desktops. We are working together to deliver on our combined vision for the future of desktop computing.

This new virtualization solution will extend the benefits of hosted desktop virtualization to millions of mobile workers with the introduction of a new client-side bare metal hypervisor that runs directly on each end user's laptop or PC. This together with an innovative back-end desktop management solution for creating, delivering, and updating corporate desktop computing environments will transform the way corporate desktops are delivered and managed, giving IT all the security, simplicity and cost savings of centralized management, with an unprecedented level of performance, personalization and freedom for end users.

To net it out, Citrix is pushing for a future in which a hypervisor is a standard abstraction layer for every cleint and server--just the way that x86 architectures of all stripes are architected and built. Think of it as a BIOS on steroids if you will.

Citrix's interest here is obvious. After all, its strategy is to make money from managing virtualized environments. Thus, continuing with a theme from Synergy's first day, XenClient--like XenServer--will be free when made available later this year.

Intel's interest here is that XenClient is specifically targeted for systems with vPro technology. vPro includes:

  • Intel Virtualization Technology (VT)--hardware assists for improved virtualization performance
  • Intel Trusted Execution Technology (TXT)--formerly called LaGrande, provides hardware-based rooted security
  • Intel Active Management Technology (AMT)--hardware management technology

Intel's Pat Gelsinger said in his keynote that vPro is ramping quickly--he claimed it was in 60 percent of the Fortune 100--but Intel is doubtless actively seeking more reasons to get businesses to upgrade to their latest and greatest client platforms.

The vision here seems a sound one. After all, IT vendors have essentially been adding layers of abstraction to mask complexity since the beginning. Even an operating system is an example of abstraction (actually many of them rolled into one software package). And use cases involving personal PCs used to access corporate networks or protected VMs that run security scanners seem far less esoteric than they did even just a couple of years back.

The question is more one of time frame. When do compelling uses get made available by software vendors in largely transparent ways for end users who are not developers or otherwise ready, willing, and able to explicitly manipulate multiple virtual machines on a single client? It isn't this year but there's a lot of reason to believe that this is the direction the client is headed.