Virtualization: Why Microsoft cares
Have you ever wondered why Microsoft cares so much about server virtualization? After all, it's only a software representation of a physical machine.
Microsoft has been very content over the last nearly 30 years letting the likes of Dell, Hewlett-Packard and IBM build physical servers with nary a care. When VMware introduced commodity server virtualization back in 1999, Microsoft hardly batted an eye. So what's happened to make Microsoft not only care, but care enough to invest millions of dollars into their own server virtualization solution?
It's all about control.
Today, Microsoft pretty much owns the x86 data center above the hardware. Sure, Linux has established a beach head and Apple is blowing up some dust, but by and large, if it's x86, it's running Windows.
How did Microsoft get into this position? By making it easy for developers to build applications on top of the Windows operating system. Look at Novell NetWare - arguably a much better network OS than Windows NT, but a really difficult development platform for ISVs. You had your choice of development languages, as long as it was Watcom C. You also had your choice of user interface, as long as it was exposed across the network.
Microsoft gave the developers freedom to choose the development language they liked to work in and to build a rich user interface. The rest is history. Sure, there are still people who choose Novell for their technology, but Microsoft has usurped Novell's customer base and Novell has been relegated to a second tier vendor.
OK, so what in the world does all that have to do with Microsoft caring about virtualization? Well, think of today's developers. Do they develop applications for Windows? Mostly, no. They develop against an application framework. Be it .Net, Struts, Ruby on Rails or something else, it's the framework that's important, not the operating system.
You can run many (most?) .Net applications on Linux with a simple recompile under Mono. The other frameworks really don't care what OS is underneath. As for the user interface, Ajax provides near fat client user experience through an industry standard framework. Microsoft's response to Ajax is Silverlight, an attempt to keep control over the user experience.
Microsoft is nervous because they see their firm grip on the data center slipping away. And it's not only the data center. Ajax is loosening the grip on the client, too. No longer do you need to have a Windows server offering up data to a Windows client. You can now have a Linux server being accessed from an Apple client - and many users would be challenged to know the difference (much less care!).
So again you ask, what does this have to do with virtualization? It's simple...all it's going to take is for a virtualization vendor to implement the frameworks in their hypervisor and there's no longer any reason to have Windows on your servers. Implement a thin client in a client-based hypervisor and there's no longer any reason to have Windows on your desktop or laptop (assuming ubiquitous network access).
In this scenario, the hypervisor really does become the "datacenter operating system". Microsoft becomes an application vendor who would have to compete head-on with Google and whoever else decides to play in that space.
In short, if Microsoft loses the hypervisor battle, they lose control of the datacenter. They lose control of your IT budget. They lose. It's not something that Microsoft does very often, and I expect them to fight vigorously in their attempt to keep from losing this battle. Whatever happens, it's going to make for an interesting couple of years while the titans of virtualization fight it out to see who winds up in control.