Microsoft contributes to Linux kernel: a CAOS Theory Q&A

Microsoft has announced that it is to contribute code to the Linux kernel development effort under the GNU General Public License (GPL) v2. What on earth does it all mean? Here’s our take on the situation. With thanks to Jay Lyman for his contribution to the following:

Flying Pig

Q. This is a joke, right?

A. Not at all, although if any announcement is better suited to the image above, we can’t think of one. Microsoft has announced that it is going to contribute code to Linux under the GPLv2.

Q. What code is Microsoft contributing?

A. Microsoft is offering 20,000 lines of its own device drivers to the Linux kernel that will enable Linux to run as a guest on its Hyper-V virtualization technology. Specifically, the contributed loadable kernel modules enable Linux to run in ‘enlightened mode’, giving it efficiencies equivalent to a Windows virtual machine running on Hyper-V.

Q. Why is Microsoft doing this?

A. Red Hat and Novell’s Linux distributions already support enlightened mode, thanks to the development work done by both in partnership with Microsoft. One benefit for Microsoft of contributing to the kernel is that it reduces duplication of effort and the cost of supporting multiple, unique implementations of Linux. Once the code has been accepted into the kernel, Microsoft will use the kernel tree code as the basis for future virtualization integration development.

It also means that community Linux distributions will be able to use the code, which opens up more opportunities for Microsoft in the hosting market, where adoption of community Linux distributions such as Ubuntu, Debian and CentOS is significant. It also therefore slightly strengthens the challenge those community operating systems can make to Red Hat and Novell, which are more direct commercial challengers to Windows.

Make no mistake about it, Microsoft’s contribution is driven by its own interests. While it must serve and respond to enterprise customers that continue to drive the use of multiple operating systems and mixed environments, Microsoft also benefits by differentiating its Hyper-V virtualization technology from virtualization leader VMware. We believe Microsoft sees an opportunity to make virtualization with Windows more Linux-friendly than VMware.

Q. What’s in it for Linux?

A. The interoperability benefits previously reserved for ‘approved’ Microsoft partners will now be available licensed under the GPLv2, and available for all Linux distributions – commercial or community – without the need for a formal partnership.

The contribution of device drivers to the Linux kernel as been a sticking point for the Linux development community in the past as developers have struggled to encourage vendors to contribute driver code to the kernel. Microsoft is therefore setting something of a precedent and could encourage other vendors that have been reticent to contribute their drivers to do so.

The seal of approval Microsoft has given to the GPLv2 is also not to be overlooked. If Microsoft can find a way to contribute to Linux projects, many other organisations may also be encouraged to do so.

Q. I guess Linux is no longer “a cancer” then?

A. Exactly. Back in 2001 Steve Ballmer told the Chicago Sun-Times* “Linux is a cancer that attaches itself in an intellectual property sense to everything it touches. That’s the way that the license works.”

Reviewing the statement in the context of today’s announcement demonstrates how much progress Microsoft has made in the intervening years to understand open source licenses. Contribution to Linux, or to any other project under the GPL, would have been unthinkable at the time, and is still barely believable today. The announcement is likely to challenge perceptions of Microsoft’s strategy when it comes to open source, Linux and the most popular open source license.

*The original article is no longer available online. Plenty of references are still available, however.

Q. What does this say about Microsoft’s overall strategy towards open source?

A. The contribution is a significant sign that Microsoft is now prepared to participate with open source projects on their own terms by using the chosen license of that project and making contributions directly to the chosen development forge of that project. Microsoft continues to use its own CodePlex project hosting site for code releases, but if an existing open source project uses SourceForge then Microsoft has acknowledged that the best way to engage with that community is on SourceForge. Don’t expect this to be the last contribution Microsoft does under the GPL.

Microsoft is now becoming more proactive in how it engages with open source under a strategy it describes as ‘Open Edge’ (which we have previously mentioned here and here. Whereas Open Core is used by commercial open source vendors to offer proprietary extensions to open source code, Open Edge is Microsoft’s strategy to encourage open source development and application deployment on top of its suite of commercial software: Windows, Office, Exchange, Sharepoint, SQL Server etc.

The Open Edge strategy is rooted in attempting to ensure Microsoft’s commercial products continue to be relevant to the ecosystem of developers and partners that the company has attracted to its software platform. It is also a continuation of the realization that if customers and developers are going to use open source software, Microsoft is more likely to retain those customers if it helps them use open source on Windows et al.

For more details on Microsoft’s strategy towards open source, its partnerships with open source vendors, and its contributions to open source projects, see The 451 Group’s formal report on the contribution to Linux (the report will shortly be available via this link ).

Q. How is the contribution to the Linux kernel being handled?

A. The contribution is being made via an alliance with the Linux Kernel Driver Project and its maintainer, Greg Kroah-Hartman, who will steward the contribution into the Linux kernel code base. (Greg has a post up about it here).

Q. What are the intellectual property issues?

A. The copyright for the code will remain with Microsoft, with the contributor credit going to its engineering lead, Hank Janssen, group program manager at Microsoft’s Open Source Technology Center.

Q. And patents?

A. If we were putting money on the most likely conspiracy theory to emerge in response to this news it would be that this is a Trojan horse and Microsoft is contributing code to Linux that it will later claim patent rights over. Whether that is even theoretically possible depends on your understanding of the GPLv2.

The GPLv2 contains an implicit patent promise that some would say makes a Trojan horse impossible. However, the FSF obviously thought it necessary to introduce a more explicit patent promise with the GPLv3 to remove any doubt.

Ultimately this is a question for a lawyer, or an eloquence of lawyers (yes it is ironic, apparently). In the meantime, it is our understanding that Microsoft’s understanding is that contributing code using the GPLv2 includes a promise not to charge a royalty for, or assert any patents covering, the code being contributed.

Q. What about Microsoft’s prior claim that Linux infringes its patents?

A. Microsoft really dropped the ball on its communication of the suggestion that free software infringes over 200 of its patents, and tensions with free and open source software advocates are likely to continue to be tested by Linux-related patent agreements, such as the one struck with Melco Holdings last week, which have driven scepticism and mistrust of Microsoft among some key open source supporters.

Absent the company giving up on software patents altogether, we believe that in order to convince those FOSS advocates that it is serious about co-existence, Microsoft needs to find a way to publicly communicate details about those 200+ patents in such a way that is not seen as a threat and would enable open source developers to license, work around, or challenge them. We also believe that the company is aware of this, although finding a solution to the problem will not be easy. But then neither was contributing code to Linux under the GPLv2.

UPDATE – It has subsequently become clear that there were two important questions that were not answered by our Q&A. Those have been covered by an addendum – UPDATE.

451 CAOS Links 2008.11.21

Sun updates MySQL Enterprise. The Microsoft/Novell deal is two years old. Nuxeo and Boxee get funding. Red Hat’s CEO on open source in a downturn. Steve Ballmer as a glove puppet. And more.

Press releases
Sun Enhances MySQL Enterprise With New Query Analyzer Tool to Boost Database Application Performance Sun Microsystems

Microsoft and Novell Mark Two Years of Interoperability Progress Microsoft

Nuxeo secures 2 million Euros and strengthens its board of directors and corporate governance Nuxeo

Red Hat Expands JBoss Certified ISV Program With 250 Partners Red Hat

Live from Beijing China: Community to Launch NetBeans 6.5 IDE at Sun Tech Days Conference Sun Microsystems

rPath Expands Multi Operating System Support with Ubuntu, CentOS rPath

Open Source Leaders Andy Astor and Anthony Gold Join Bluenog’s Board of Directors Bluenog

Univa UD Announces Software Stack to Simplify Cluster Deployment Univa UD

Sun’s Lustre File System Powers More Than 50 Percent Of The Top 50 Supercomputers Sun Microsystems

New Open Storage Solutions Establish Sun As HPC Storage Leader Sun Microsystems

Open Source Data Protection from Zmanda Soars to the Cloud(s) in 2008 Zmanda

CorraTech Launches Outsourcing Solutions For Open Source Independent Software Vendors CorraTech

New, Faster Zend Framework 1.7 Features Adobe High-Speed Format for RIAs plus IBM i DB2 Adapter, JQuery, & Dojo 1.2.1 Zend

Ulteo unveils the first Open Source virtual desktop, providing businesses with quicker, cheaper deployment and easier applications management Ulteo

OpenLiberty.org Releases First Open Source Identity Governance Framework Software OpenLiberty.org

News articles
Red Hat CEO Whitehurst Talks About Slowdown, Virtualization, Linux Charles Babcock, InformationWeek

Boxee raises funding as it goes after content, your living room Mg Siegler, VentureBeat

Struggling Sun faces difficult choices about future Jon Brodkin, NetworkWorld

The Microsoft-Novell Linux deal two years later Paul Krill, Computerworld

Open Source 101: An Executive Guide to Open Source Christopher Lindquist, CIO.com.au

An Open Source Vendor’s Biggest Competitor: Its Customers? Serdar Yegulalp, InformationWeek

Blogs
Sustainability in Uncertain Times Mitchell Baker, Mozilla

Two Years and Counting…. Peter Galli, Port25

Microsoft and Novell at two: Was the patent pact worth it? Mary-Jo Foley, ZDNet

Final Judgment in SCO v. Novell: SCO Loses Again Pamela Jones, Groklaw

MySQL Query Analyzer and open source business models Zack Urlocker, InfoWorld

Is Red Hat’s Whitehurst Right? Open Source Thrives In Downturn? Charles Babcock, InformationWeek

Open-source traffic is way up in 2008 Matt Asay, Cnet

How to Maintain a Successful Community Dawn Foster, Community 2.0

Ubuntu Server Edition: Canonical’s Big Challenge The VAR Guy

OpenX: the Unknown Variable Glyn Moody, ComputerWorld

Audio/visual
Steve Ballmer on Yahoo Acquisition 1938enterprise
The clip linked to above features a glove puppet of Steve Ballmer and some very strong language. Do not click it if you are easily offended. Do click it if you are easily amused.

Ballmer’s upside down thinking on open source

For all the positive steps taken by Microsoft in relation to open source in recent years it is hard to escape the feeling that the company’s senior executives still just don’t get it.

Steve Ballmer admitted as much during a visit to Australia this week:

    “I don’t really understand their strategy. Maybe somebody else does. If I went to my shareholder meeting, my analyst meeting, and said, ‘hey, we’ve just launched a new product that has no revenue model!’…I’m not sure that my investors would take that very well. But that’s kind of what Google’s telling their investors about Android,” he said, according to Cnet.

Contrast that statement with this question Ballmer was asked, according to CIO.com, during a Power to Developers event in Sydney:

    “Why is IE still relevant and why is it worth spending money on rendering engines when there are open source ones available that can respond to changes in Web standards faster?”

As the author, Rodney Gedda, notes:

    If I was a Microsoft share holder I would want to know why Microsoft is sinking so much money into its own Web browser rendering engine when there are others available for free.

And indeed when it is giving it away for free. I’m sure Steve Ballmer understands perfectly well what the model is and is just taking the opportunity to disparage a rival with his comments about Android, but it doesn’t present a good impression.

Incidentally, the opening line of Gedda’s report made me smile:

    Microsoft has given its most ringing endorsement of open source Web browsers to date with chief executive officer Steve Ballmer not ruling out adopting such technology…

I guess with Steve Ballmer not ruling out open source is as close as you’re going to get to a ringing endorsement.