Role of the OS on the desktop?
[Update: be sure to read the comments for more on the coming 'application agnostic' world.]
Kimbro at Virtualization Daily and Scott Lowe are having an interesting conversation on the Role of the OS from the desktop perspective. I'm knee-deep working with virtual appliances these days, which tend to be server-based at this point. There we are starting to see stripped down Linux distributions, which only include the services and complexity necessary for the application contained within it. I would expect to see profiled operating systems (ie configured for specific tasks) from all the major players within a year or two. This is a major win for reduction of complexity, simplification of updates, and avoidance of security exploits in random unneeded packages.
But what about the desktop? What does a cooperating set of virtual machines on your desktop mean? And who profits more -- Microsoft, Apple, Sun, Red Hat, Novell ... ?
Kimbro rounds up some of the conversation and sets the stage in The OS is under attack:
If you can run Mac OS and Windows on the same machine and use whichever program you want, and drag data back and forth at will between the two, what does an operating system mean? In a sense, it just becomes a visual preference rather than a system or standards choice. And if you spend most of your time using Web apps, the operating system means even less. We’re not quite there yet, of course, but would such a world help Apple or Windows more?
Scott Lowe then wrote an extended riff on the End of the OS As-We-Know-It, but exempts Mac OS X.
I do agree with these conclusions on at least one point: The general purpose operating system as we know it will cease to exist in the next 5 to 10 years, perhaps sooner. I do believe that the release of massive development projects such as Windows Vista won’t be the norm moving forward and that, in fact (as others have predicted as well), Windows Vista will be the last of its kind.
Notice I didn’t place Mac OS X in that list as well. Why? Because I think that Apple is capitalizing on an architecture and a convergence of technology that allows it to make Mac OS X into what Windows NT was supposed to be.
I think Scott lumps together too much the technical arguments of Windows vs OS X (OS X wins) with marketshare arguments around the various unixes and Linuxes (OS X wins again). I don't think OS X has any magical advantage, and nor do I think it's uniquely privileged to run the hypervisor, as it currently does with Parallels Desktop and the upcoming VMware product. In a hypervisor-driven world where my desktop is a cluster of cooperating virtual machines (security, storage, etc.) and where my "desktop" can live anywhere, Apple's current software-locked-to-hardware business model falls down. If I can't run OS X anywhere but Apple-branded hardware, then Mac users have to sit out on a lot of innovation going forward. However, virtualization is disruptive enough that it's still anybody's game to win, if they put their chips on the right strategies.
Scott concludes with the question of whether the hypervisor should be inside or outside the OS.
So I guess the future of the operating system depends on your perspective. If you’re an operating system guy, you’ll say that the OS has a bright future, and point to developments such as built-in paravirtualization and bundled hypervisors to prove your point. If you’re a virtualization guy, you’ll say that the OS is dead, and you’ll point to developments such as third-party paravirtualization and independent hypervisors to prove your point. Which of these two is correct?
And that's the forking path coming up for virtualization -- do you get the hypervisor layer from your OS vendor, effectively locking you in to a single operating system? Is your ability to run a guest dependent on the business deals between the various players, which may be what we're seeing in the recent Microsoft deals with XenSource and Novell? Are you willing to run a hypervisor that is locked to one brand of hardware? Or does the hypervisor sit outside the OS, allowing you to use the OS of your choice? The latter future seems a lot more appealing to me, although I'm admittedly looking at it from a VMware perspective.
But we digress a bit from the central question here -- what about virtualization on the desktop? When two or more OSes are sharing your devices and now your display, what is the role of the OS? Who are the winners and the losers?
I'll admit I am a Mac OS X fan, occasionally to my detriment (we all have our flaws). Certainly Apple's refusal to allow OS X to run anywhere except on their hardware puts them at a disadvantage vs. other vendors, although a little less so now that they have switched to x86 chips. But enough of that.
With regards to the desktop OS, my view is that their evolution path lies less along the virtual appliance way and more along the path of "application agnosticism" (need a good marketing term for that--any ideas?). What I mean by that is the ability to run whatever software needs to be run, but in a completely invisible way. Have Windows software but prefer a Linux desktop environment? No problem. Have one Mac application you love but use primarily Windows applications? No problem. The desktop OS will evolve to include the technologies (virtualization, primarily) that will make this possible so that users can use whatever they prefer without the headache of figuring out if their system is compatible.
Each of three major OSes have their strong points at this stage of the game. Microsoft has at least started work on a hypervisor (bundled with the OS, of course), whereas Apple has not (to the best of anyone's knowledge), for example. The open source crowd has been working on WINE for API emulation, which gives them an advantage in that area.
When this evolution finally happens, the "OS" becomes more of a preference and less of a technical decision, as others have stated. The winners will be those vendors that embrace this idea of an "application agnostic" OS. The losers will be those vendors that try to keep their users locked in to their OS.
Posted by: Scott | December 06, 2006 at 04:20 AM
By the way, here's my article that was referenced above (there was no link). Thanks!
Posted by: Scott | December 06, 2006 at 07:09 AM
To my mind, the Linux world has already started to embrace the "application agnosticism" (and, for the record, I love that term) that Scott advocates. WINE does allow you to run Windows applications on the Linux desktop. There are also Mac emulators under Linux, though not as popular or well-developed; keep in mind that, under the hood, Mac OS X and Linux are kissing cousins. Linux software doesn't depend on which distribution of Linux you are running, which allows for multiple desktop OS choices within the *nix family. You already have the option of multiple desktop environments for Linux (KDE, Gnome, XFCE, etc.) on top of the OS choices. Linux has a tremendous amount of flexibility for users in what they run, how they run it, and the look and feel of their desktop.
In the end, I think the winner on the desktop will be whoever succeeds in making the experience most seamless for a user. When virtualization allows desktop users to click an icon and run applications, without opening a new OS environment, desktop users will sign on wholeheartedly. VMware Player and Workstation have saved my sanity for running certain applications that only run under Windows; if I could run those applications in the OS of my choice without having to visit another OS environment, it would be another major leap forward.
Any way it goes, these are exciting times for virtualization and the major readjustment that is happening and will continue to happen in the marketplace due to its impact.
Posted by: Jessica Tanenhaus | December 06, 2006 at 07:29 AM