July 20, 2009

Linux Kernel To Get Microsoft Code

Microsoft has contributed code to the Linux kernel.

Such a statement has been made before, always under an "April 1" dateline or tagged as "humor." But neither of those conditions are the case today. The statement is completely true, and the relationship between Microsoft and Linux will never be the same again.

The news came with little media advance work, showing up as a press release on Microsoft's site today as they made the announcement on the opening day of OSCON. The impact, as one would expect, was huge.

In order to provide better support for Linux as a guest OS for Microsoft's Hyper-V virtualization app, Microsoft is contributing 20,000 lines of device driver code to the Linux kernel under the GPL v2 license. The code has been submitted for inclusion to the main Linux kernel source tree.

Microsoft sees this as a step towards better interoperability with customers on its virtualization platform, which they hope will be seen as a stronger offering now that Linux should become a more efficient guest OS on Hyper-V.

“Our initial goal in developing the (Linux driver) code was to enable Linux to run as a virtual machine on top of Hyper-V, Microsoft’s hypervisor and implementation of virtualization," Tom Hanrahan, head of Microsoft's Open Source Technology Center stated in Microsoft's announcement, “The Linux device drivers we are releasing are designed so Linux can run in enlightened mode, giving it the same optimized synthetic devices as a Windows virtual machine running on top of Hyper-V. Without this driver code, Linux can run on top of Windows, but without the same high performance levels. We worked very closely with the Hyper-V team at Microsoft to make that happen.”

One of the architects of the code submission is Linux kernel programmer Greg Kroah-Hartman, who has been working with Microsoft's developers through the Linux Driver Project, which Kroah-Hartman leads.

On his Linux Kernel mailing list announcement today, Kroah-Hartman also explained the purpose of the release:

"These drivers are to enable Linux to work better when running as a guest on top of the Hyper-V system. There is still a lot of work to do in getting this into "proper" mergable state, and moving it out of the staging directory, but Hank [Janssen] and I will be undertaking this task," he wrote.

Kroah-Hartman acknowledged the work done by Microsoft as well as by Novell, which sponsors his work on the Linux Driver Project.

This event marks the first time Microsoft has submitted code to the Linux kernel, and the first major code release they have made under the GPL (that wasn't under GPL already).

Click Here!