In an historic move, Microsoft Monday submitted driver source code for inclusion in the Linux kernel under a GPLv2 license.
The code consists of four drivers that are part of a technology called Linux Device Driver for Virtualization. The drivers, once added to the Linux kernel, will provide the hooks for any distribution of Linux to run on Windows Server 2008 and its Hyper-V hypervisor technology. Microsoft will provide ongoing maintenance of the code.
Linux backers hailed the submission as validation of the Linux development model and the Linux GPLv2 licensing.
Microsoft said the move will foster more open source on Windows and help the vendor offer a consistent set of virtualization, management and administrative tools to support mixed virtualized infrastructure.
"Obviously we are tickled about it," said Jim Zemlin, executive director of the Linux Foundation. "Hell has frozen over, the seas have parted," he said with a chuckle.
Microsoft made the announcement at the annual OSCON open source conference that opened Monday in San Jose.Greg Kroah-Hartman, the Linux driver project lead and a Novell fellow, said he accepted 22,000 lines of Microsoft's code at 9 a.m.PST Monday. Kroah-Hartman said the Microsoft code will be available as part of the next Linux public tree release in the next 24 hours. The code will become part of the 18.104.22.168 stable release.
"Then the whole world will be able to look at the code," he said.
The stable release is an interim build between each main release, which come in three-month cycles. The first main kernel release to include the open source driver technology will come in December as part of the 2.6.32 release, Kroah-Hartman said.The drivers will initially be part of the Linux kernel's staging tree, a place where code is stored and polished before it is moved into the main tree. The code of every first-time kernel submitter begins life in the staging tree.
Kroah-Hartman said Microsoft's submission was routine. "They abided by every single rule and letter of what we require to submit code. If I was to refuse this code it would be wrong," he said.
Microsoft's most important open source act
Sam Ramji, who runs the Open Source Software Lab for Microsoft and is the company's director of open source technology strategy, called the Linux kernel submission the company's most important Linux/open source commitment ever.
"It is a significant piece of technology. It is a strategic technology and it is under the GPLv2 license that the Linux kernel uses, and which the community is organized around."
Ramji said the code could be used by any Linux distribution, commercial or otherwise, without requiring any relationship with Microsoft. That could help emerging distributions such a Ubuntu gain a foothold in corporate networks.
And he added that the Linux driver contribution will change the way Microsoft donates code in the future. "It will raise our sights for how broadly we think about open source contributions and how open source drives our business."
Kroah-Hartman called the submission a milestone for Linux because "Microsoft is publicly stating that GPLv2 is a valid development license and something that is acceptable for contributing code. It validates our development model and that makes me very happy."
Linux Foundation boss Zemlin echoed those comments and said, "This is the culmination of a Microsoft that realizes they need to work with others to succeed."
For Microsoft, the submission is a dramatic turn of events in a relationship that has had its share of acrimony such as the 1998 Halloween memos attacking Linux, CEO Steve Ballmer calling the open source operating system a cancer in 2001 and Microsoft's claim Linux and open source violates 235 of its patents.
But over the past few years, Ramji has taken up damage control and continued work started by Microsoft's Bill Hilf, now general manager of platform strategy, to reach out to the open source community in a constructive way and to chip away at the distrust and resentment that had built up over the years.
In 2006, Microsoft inked a business and technology partnership with Novell to develop integration software around Linux and Windows, but instead of good will, the Linux community criticized the partnership's cross-patent licensing. However, the working relationship helped produce the driver technology underlying the source code Microsoft submitted to the Linux kernel.And over the past year, Microsoft has made its first ever code submission to the PHP community and become one of only three Platinum sponsors of the Apache Foundation.
Microsoft has eased off its public attacks on Linux and open source as corporations have pushed the vendor to provide interoperability for their ever-increasing mix of Windows and Linux in their environments.