Saturday, November 26, 2005

Xen and the desktop of tomorrow

Tomorrow's computing world will be dominated by servers hosting multiple different OS's as virtual machines, to which users log on by protocols such as VNC from their local thin client terminals, which are no more than a bit of RAM, flash memory, a marginal CPU and display and input peripherals.

I predict that in less than five year's time, the preferred practice for booting a computer will be by Linuxbios -> GNU/Linux -> Xen -> Virtual OSs; this will happen on a central server with parallel 64 bit CPUs and large amounts of RAM. By using virtualisation technology, the conflict over which OS is being used is avoided - users will be able to switch between Linux, Windows, and possibly Mac OS X (or Free implementations of Mac OS X) guest OSs effortlessly, as a pool of virtual OSs will be available for users to sign on to. Multiple users could log on to the same OS instance, or a new instance be created for each user; advanced users could request root-jail type sessions, for instance. It is clear that Linux with Xen will be the host OS of choice, since this combination has the lowest total cost of ownership (TCO).

Users will work at thin client terminals that have no more than a small amount of RAM and flash memory - no more than is needed to hold the kernel and sufficient graphics routines for a minimal VNC client; there will be a display and reasonably powerful video card, and fundamental audio hardware. Such hardware is already typical of today's thin clients. Linux, due to its virtues in embedded applications, is likely to be the foundation of such a thin client set-up.

As more services get transferred to the web - such as office applications in the guise of ThinkFree Office and GroupOffice; photo albums on Flickr; email services at Yahoo and Google, etc.; the browser will increasingly be the user's window to the world, and classical desktops will be displaced by the browser as the graphical user interface; tabbed and extensible browsers such as Firefox will gain in marketshare, but be themselves displaced by derivative projects that eliminate the "application" behaviour of the browser and implement the browser as the exclusive GUI to which the user signs on.

This presents a somewhat alternative scenario, in which the vast majority of virtual OS sessions hosted by the server would be a simple browser OS, allowing legacy hardware to drive the server and clients, with the labour-intensive services bought in from external service providers such as Yahoo and Google.

The niche for commercial desktop software is vanishing, then, with the advent of standards-compliant, Free browsing environments, that through high-level language-written web applications (in JavaScript and Java on the client, and Python, Perl and PHP, with an sql variant, on the server) achieve all of today's and tomorrow's objectives. Key to the success of this new way to using computers is the elimination of file traffic through the user's machine through sensible cross-integration of different web services and service providers with each other.

No comments: