Microsoft aims at VM market with Linux kernel code offering

Microsoft has contributed Hyper-V drivers to the Linux kernel in order to …

Microsoft is contributing approximately 20,000 lines of source code to the Linux kernel with the aim of improving support for running the Linux operating system in virtualized environments on Windows servers. The move is part of a broader trend at Microsoft towards collaboration with the open source software community.

Prominent Linux kernel developer Greg Kroah-Hartman announced the code submission today in a message posted to the Linux kernel mailing list. He says that the new drivers contributed by Microsoft will soon land in the staging tree where they will undergo some refinement before they are merged directly into the mainline kernel. Microsoft is making the code available under the terms of GNU's General Public License (GPL), the open source software license that is used by the Linux kernel.

"I'm happy to announce, that after many months of discussions, Microsoft has released their Hyper-V Linux drivers under the GPLv2," Kroah-Hartman wrote. "These drivers are to enable Linux to work better when running as a guest on top of the Hyper-V system."

Although Microsoft has released source code under open licenses in the past, this is the first time that the company has contributed directly to the Linux kernel.

Kroah-Hartman is employed by Novell to work on the Linux Driver project, an initiative through which the Linux Foundation and kernel development community provide free technical assistance to vendors who want Linux support for their hardware.

Microsoft is working with Kroah-Hartman to get its Hyper-V code merged directly in the kernel so that it can be fully supported out of the box in all mainstream Linux distributions. Kroah-Hartman credits several people at Microsoft who played an important role in the process, particularly Microsoft software engineer Hank Janssen who supplied the code and is continuing to work with kernel developers to prepare it for merging. Kroah-Hartman says that Microsoft platform strategy director Sam Ramji—who often works to improve relations between Microsoft and the open source community—was also instrumental in the effort "for his push within Microsoft to make this happen in a manner that works with the Linux community."

"We are seeing Microsoft communities and open source communities grow together, which is ultimately of benefit to our customers," Ramji said in a Microsoft roundtable discussion. "There's mutual benefit for customers, for Microsoft, and for commercial and community distributions of Linux, to enhance the performance of Linux as a guest operating system where Windows Server is the host."

Microsoft is increasingly embracing open source software and is actively participating in a number of interoperability efforts in collaboration with the open source community. For example, Microsoft became a sponsor last year of the Apache Software Foundation and has contributed to Apache's Stonehenge project. Microsoft also recently issued a legally binding promise that it will not enforce its patents against Mono and other open source implementations of the C# and .NET standards.

Although Microsoft has released source code under open licenses in the past, this is the first time that the company has contributed directly to the Linux kernel. It also shows that the company is willing to use the GPL, a license that Microsoft has consistently avoided in the past. Microsoft has typically used its own OSI-approved open source licenses as well as several popular permissive licenses such as the Apache Software License.

In a statement, Microsoft says that they used Linux code in order to develop the Linux Hyper-V driver, which means that they had to release the resulting code under the GPL in order to comply with the licensing requirements. They are working with the kernel community to get their driver included in the mainline kernel so that the code can be maintained as part of the kernel and remain compatible in the future.

The code contributed by Microsoft can be freely used and redistributed by anybody, not just companies that have controversial patent agreements with Microsoft. As stipulated by the GPLv2, Microsoft says it will not charge royalties or assert patents covering the specific code that it is contributing.

Satisfying the skeptics?

It's unclear, however, if this will satisfy the vocal minority of free software extremists who believe that Microsoft cannot be trusted and that all of the company's efforts to empower open source are part of an elaborate trap. The patent nonenforcement requirements of the GPLv2 are not as explicit as they are in the GPLv3, a new version of the license that the kernel community has not adopted. The Free Software Foundation recently issued a statement saying that Microsoft cannot be trusted because of the company's past patent litigation threats against the Linux community.

Microsoft claimed in 2007 that the Linux kernel violates hundreds of its patents, but the company declined to substantiate the claim or specify which patents are infringed. The company called for Linux vendors to sign vague patent covenants which would protect their customers from patent infringement litigation but would not cover downstream use. At the time, Microsoft emphatically said that it would not collaborate on interoperability issues with companies that were unwilling to agree to the covenant.

Microsoft later changed its position on that issue and has since begun collaborating with Red Hat and other vendors on virtualization interoperability. Microsoft's release of the Hyper-V Linux drivers under the GPL is the latest move in that trend towards unencumbered interoperability. Microsoft's recent dispute with TomTom over FAT patents, however, indicates that the company is still using its IP to hold back interoperability in some cases.

In order to make Hyper-V a compelling solution for enterprise virtualization, Linux support is a basic necessity. Microsoft obviously realizes that locking out a dominant server platform is not going to help make Hyper-V competitive against the offerings of entrenched virtualization vendors like VMware. Mixed environments are increasingly common, so getting native Hyper-V support integrated into the mainline kernel will make it possible for companies to deploy almost any mainstream Linux distribution alongside Windows with Hyper-V, a capability that could help boost adoption of Microsoft's virtualization technology.

While I should hope that such code is not rejected merely because it came from MS, the continuing threat of patent claims should make all of us who have been skeptical continue to be skeptical. All of the technical collaboration in the world cannot make such a threat irrelevant or mitigated.

The Bill and Melinda Gates foundation is striving to fight global warming. Taking a daring and innovative approach to the problem, they first convinced Microsoft to contribute to Linux and release code under the GPL. This is anticipated to coincide with hell freezing over. Cold air will be transferred from hell into Earth's atmosphere, dramatically lowering global temperatures.

Originally posted by bsbsbs:The usual bullshit.Read Groklaw dot net for real information about this crap..

Did you expect MS to contribute code to improve a competing operating system for nothing more than altruistic reasons? While we're at it, let's have Apple contribute to Windows 7 and Google contribute to Bing. Yup, makes LOTS of sense...

The bottom line is that the device driver code contributed here improves the experience of running Linux on a Windows VM host. How can anyone call that 'evil' (CNET) or 'bullshit' (you)? Did SteveB come to your house and force you to run Linux on Windows hosts?

The usual bullshit exists here but only in that comment. Stop the extreme paranoia. The code is GPL'd and MS can't force it into the trunk, that's something the community needs to decide.

And this article spins the whole thing like they Microsoft is some angel descending from heaven. And anyone who believes anything less is one of "the vocal minority of free software extremists who believe that Microsoft cannot be trusted"

Wow... Just wow...

This is what happens when some evangelical Mono developer is writing the news.

You don't have to modify your kernel. If you are already on Windows Hyper V host, you'll want to use these device drivers for the best experience. By no means are you required to use these features.

quote:

And this article spins the whole thing like they Microsoft is some angel descending from heaven. And anyone who believes anything less is one of "the vocal minority of free software extremists who believe that Microsoft cannot be trusted"

Wow... Just wow...

Wow indeed. Let's step back and look at this from the perspective of reality. This is a source code contribution submitted under GPL. Nothing more. Nothing less. The intent is clear.

Originally posted by Viewer:VirtualBox supports most variants of Windows and most distros of Linux, BSD, Solaris as-is without modification.

VirtualBox is a desktop virtualization package, not a bare-metal hypervisor like Hyper-V and ESX. It'ss nice to play around with but is by no means ready for enterprise virtualization of critical servers.

Even if it was, what was your point with this statement? Do you not want people to have a better experience when virtualizing Linux on Hyper-V? This gives a greater incentive to use Hyper-V over VMware products. Makes great business sense to me.

VMware's paravirtualization framework was also recently merged into the Linux kernel. It's not an unreasonable request for a virtualization vendor to make.

quote:

And this article spins the whole thing like they Microsoft is some angel descending from heaven.

Where, exactly, does it do that? The basic premise of the article is that Microsoft is doing this because they need to in order to make Hyper-V competitive with VMware's products.

quote:

And anyone who believes anything less is one of "the vocal minority of free software extremists who believe that Microsoft cannot be trusted"

Yes. If you believe that Microsoft releasing code under GPLv2 is some kind of heinous trap and that it should not be permitted in the kernel simply because it was written by Microsoft, then you are part of the vocal minority of free software extremists.

quote:

This is what happens when some evangelical Mono developer is writing the news.

This is the last article I comment on Ars for a while. While the forums still have value, its clear the BS "shock" mentality and need to post insulting, inflammatory language in "articles" has become standard operating procedure. I understand somewhat, whatever you guys can do to generate revenue. However, I need more than that. I'm disappointed.

As to the actual article, ddjay pretty much sums it up. It's just good business for MS to embrace to extend and extinguish.

No they're not. They're asking the upstream kernel to include a driver. Distros are free to do whatever the fuck they want. Don't like it? Put the driver in /etc/modprobe.d/blacklist. Not that it'll be loaded anyway, because you're not using Hyper-V (and if you were, you'd sure as shit want that driver.)

quote:

And this article spins the whole thing like they Microsoft is some angel descending from heaven.

No, it's spinning it for exactly what it is: Microsoft's trying to improve their product's (Hyper-V's) position in the virtualization market place. If I had to guess I'd say the number of running VM instances with Linux installed out there is a number much higher than 50%. Microsoft simply can't sit idly by and ignore more than half the potential customers in the virtualization market. So they're doing what any sensible company would do in this situation, and improving the viability of their product by making Linux run better in Hyper-V.

What would you rather do? Have them release binary drivers in .rpm format supporting RHEL 4 and SLES 9 only? Targeting only 5 kernel versions? Better hope there's not important security updates to the kernel! You wouldn't want to mess with that version number and break compatibility with MS's driver!

No, Microsoft's doing exactly what Linus and co have begged hardware (in this case, virtual hardware) vendors to do from day one: release their code under GPL and get it included in the mainline tree. Do I really need to point you at one of the dozens of times in the LKML that Linus has preached this?

quote:

And anyone who believes anything less is one of "the vocal minority of free software extremists who believe that Microsoft cannot be trusted"

If you believe anything less than what I just described, pretty much.

quote:

This is what happens when some evangelical Mono developer is writing the news.

The kernel developers, or at least Linus, tend to prefer to create generic mechanisms that can be adapted to different vendors' tech with a small piece of vendor-specific code. The real challenge of Microsoft will be how they deal with the devs' inevitable move to take the donated code and rebuild it into something that works with any VM environment you throw at it instead of accepting it verbatim.

The real challenge of Microsoft will be how they deal with the devs' inevitable move to take the donated code and rebuild it into something that works with any VM environment you throw at it instead of accepting it verbatim.

Considering the guest Linux will be running on Hyper-V AND the original code's in the wild. As long as someone's working on the code it's a win win for Microsoft. Improving other VMs may help overall, but I gather this combination is for Windows shops that need a touch of Linux.

Originally posted by jus10:This is the last article I comment on Ars for a while. While the forums still have value, its clear the BS "shock" mentality and need to post insulting, inflammatory language in "articles" has become standard operating procedure.

Really? I find it the other way 'round, really.

In other news, I'd likely be categorized as a Free Software "extremist", but I totally welcome the move. If only more of MSFT's work were GPL'ed with implicit or explicit patent licenses and less sabre rattling, lawsuits, and deck stacking, the world would be quite a bit brighter. A we4lcome step, indeed. More so!

(As an aside, Greg K-H would likely also be catogrized as an "extremist" by many. That he welcomes the move and is indeed doing it speaks volumes about what's going on here. Plus, don't forget that MSFT has now released software under the GPL. This is huge for Free Software.)

Originally posted by Tim R:The kernel developers, or at least Linus, tend to prefer to create generic mechanisms that can be adapted to different vendors' tech with a small piece of vendor-specific code. The real challenge of Microsoft will be how they deal with the devs' inevitable move to take the donated code and rebuild it into something that works with any VM environment you throw at it instead of accepting it verbatim.

as long as there is still competition in the vm space, I'd expect their hands to be pretty well tied. The code is GPL, albeit v2. The biggest thing they could do would be to dink around with the hypervisor, but their wiggle room will be restricted as long as they can't break things and people won't have much of a choice but to eat it like they can with Windows and Office.

Originally posted by jus10:This is the last article I comment on Ars for a while. While the forums still have value, its clear the BS "shock" mentality and need to post insulting, inflammatory language in "articles" has become standard operating procedure.

Really? I find it the other way 'round, really.

In other news, I'd likely be categorized as a Free Software "extremist", but I totally welcome the move. If only more of MSFT's work were GPL'ed with implicit or explicit patent licenses and less sabre rattling, lawsuits, and deck stacking, the world would be quite a bit brighter. A we4lcome step, indeed. More so!

(As an aside, Greg K-H would likely also be catogrized as an "extremist" by many. That he welcomes the move and is indeed doing it speaks volumes about what's going on here. Plus, don't forget that MSFT has now released software under the GPL. This is huge for Free Software.)

Of course it's good for free software and for Linux (and for other OSes, since it's GPL, it could be ported to Solaris, BSD, OSX Server, etc).

Microsoft isn't saying "don't run Linux, use Windows instead... besides Windows will run better on Hyper-V", they're saying "If you want to run Linux on our virtualization platform, go ahead, it will run just as well as our software"

I'm in as one of the vocal minority who thinks Microsoft can't be trusted further than we can comfortably spit a rat. That being said, the stuff on Groklaw is basically what is said in this article except with FAR more emphasis and evil intent hinting and less actual content. I'm with segphault, this is not an unreasonable thing Microsoft is doing.

Here's how I'm looking at it. Say you've got a shop that's 100% Microsoft. They've probably got cronies in there who are as rabid about Microsoft's superiority as I am about Linux's superiority. If Microsoft wants to release code that makes it easier for Linux to run as a VM when such a shop needs a Linux boxen, I'm all for it. If they install Linux on a VM and have nothing to complain about, maybe they'll be a little more open minded towards it in the future.

I never thought the day would come where Microsoft would be allowed to inject its code directly into the Linux kernel. In my opinion, this is Microsoft adapting to the once percieved Linux threat. Unable to gain ground on the desktop, laptops, and completely chased on nettops, Microsoft is now playing at the heart of Linux. The kernel itself. Being run in a Virtual state inside of Microsoft Hyper V seems to me like checkmate.

Now, it doesn't matter. Chrome OS, Ubuntu, Mandriva, RedHat, whatever... Microsoft can run them in Hyper V servers but its trump card is the deeply integrated ecosystem of businesses, schools, PC manufacturers, software developers, support, and most importantly cash. Its definitely part of their strategy of embrace, extend, and extinguish. Part one is supporting Linux. Part two is now extending control into the heart of the Linux kernel. Now all that is left is the extinguish. Just like the Borg, analyze, adapt, and assimilate.

My hat is off to Microsoft. They are definitely good at what they do. Everybody think's their empire is crumbling, but the way I see it, Microsoft is in the beginning of a reinvention that will make it stronger. Windows 7 made incredible presales in the U.S. and Europe. Both Apple and Google are feeling threatened again by Microsoft.

I think all the critics who believe Microsoft days are over needs to take a good look at this headline and realise that they've been played like a fool. The perception of weakness is just a mascarade. A feint for their real counterattack. Briliant strategy.

It seems people are missing that Microsoft is not trying to cover up anything. They freely admit that they still want every server to have their OS:

quote:

"...to enhance the performance of Linux as a guest operating system where Windows Server is the host."

Money is still the name of the game, and always will be. Personally I just think their starting to see that profit revenue can come in new ways. And as for the evil of Microsoft source in the Linux kernel, the only thing I'd be worried about is security. Other then that, it's GPL. captain numerica already summed this up quite well:

Why does the guy that runs Microsoft always look so buffoonish ? I swear - I have never seen a picture that he doesn't look like a drunk staggering bumwad. I like Microsoft but it is too bad nobody has the balls to tell him to calm down a little when the cameras are on.

The past 12 to 18 months have been pretty incredible for cross-platform enterprise customers that skew toward the Microsoft platform. This announcement is a huge cap to the cross-platform support announced and delivered in the System Center product lines. Working in a mixed shop myself, these changes have or will greatly improve my management experience. From my seat, it seems MSFT is finally understanding that most (if not all) enterprises are not sole-source IT shops and they either need to step up or lose business to IBM, CA, and others.

What truly amazes me is the number of tin foil hats I've seen related to this news. Microsoft finally plays by the rules of the community, releases a set of DRIVERS, and now they're the bad guy for finding a "chink" to tear down Linux. This isn't a contagion that will infect the kernel and cause bits to fall off... its 20,000 lines of specialized driver code for paravirtualization that was submitted appropriately... it can be reviewed, accepted, and used or discarded at the will of the community and its leaders.

This should be great news to both Microsoft and FOSS users in an enterprise.

this will satisfy the vocal minority of free software extremists who believe that Microsoft cannot be trusted and that all of the company's efforts to empower open source are part of an elaborate trap.

I agree with that statement, but it seems like a direct request for said vocal minority to go batshit nuts on the forums. I believe the kids call it "flame-bait".

Tinfoil hat wearers don't really need an invitation to tell you their unhinged point of view though, so maybe I'm thinking it through too much.

Holy crap, I just got horrible flashbacks to last summer's Presidential Election, where conservative talking heads demanded Obama denounce and distance himself from his religious advisor, and then when he did it, they tsk-tsked that he threw an old confidant and friend under the bus which shows he's really not God-fearing.

Here's a hint guys: When your position on Microsoft resembles that of Rush Limbaugh towards Democrats; "They're EVIL because they don't do what we say...except when they DO what we say, then they're DOUBLE EVIL!" ...chances are your position is not entirely rational anymore, and you might need to take some time and breathe into a paper bag for awhile.

Originally posted by Viewer:Microsoft is asking Linux distros to modify their kernel to accomodate Microsoft's virtualization system.

Why bother trying to please you if your double standard is so blatant you won't accept Microsoft releasing drivers for their product? We praise everyone else for doing that.

Of course they want Linux to perform better for their product. So does every other vendor who releases docs or GPL drivers. That's why the community works, everyone has an incentive to play nice.

YES.

Microsoft IS asking for people to modify the kernel. This is something called 'PARAVIRTUALIZATION'. What this is is that instead of emulating hardware the kernel is given a driver that can by-pass all the emulation crap and work directly with the host operating system.

This gives you massive increases in performance.

Microsoft is doing this because they need to be competitive with Xen and Vmware.

This is how open source is suppose to work. You want to do something different you code for it, you release the code, other people take the code and do what they want with it. '