23 juli 2009
Microsoft doneert drie device drivers aan de Linux-kernel, met de bedoeling de prestaties van gevirtualiseerde Linux-omgevingen op Windows-servers te verbeteren. Naar verwachting zal de code in de volgende versie van Linux, versie 2.6.32, opduiken. Microsoft heeft de drivers destijds ontwikkeld om de Linux-prestaties in een gevirtualiseerde omgeving te verbeteren. Microsoft lijkt de ondersteuning hiervoor te willen verbeteren. In totaal doneert de softwaremaker 20.000 regels broncode aan de tree, die wordt vrijgegeven onder de GPLv2. Volgens Hank Janssen, verantwoordelijk voor de ontwikkeling van de drivers, blijft Microsoft de code onderhouden. De programmeur stelt dat het besluit past in het plan 'to enhance the functionality of this code' en dat 'we will continue to work with the Linux Community to support the drivers and to ensure continued interoperability'. Het vrijgeven van de code is een mijlpaal: nog nooit eerder gaf het bedrijf code direct aan de community vrij. Ook de keuze voor GPLv2 is opmerkelijk: deze licentie kent relatief weinig beperkingen. Overigens kan Linux ook zonder deze drivers via Hyper V worden gevirtualiseerd, maar het prestatieniveau zou dan aanzienlijk lager liggen.
Greg Kroah-Hartman, een bekende Linux-ontwikkelaar, heeft de codetoevoeging via de Linux-mailinglijst bekendgemaakt. Volgens Kroah-Hartman zal de code op korte termijn opduiken in de staging tree, waarna deze na enkele kleine aanpassingen in de kernel zal worden opgenomen. In het verleden heeft Microsoft GPL afgewezen. Microsoft topman Graig Mundie noemde GPL in 2001 'een gevaar voor het intellectuele eigendom van elk bedrijf'. Maar Microsoft wil dat zijn code wordt opgenomen in de kern van het Linux-systeem en daarvoor is GPL een vereiste. De code is bedoeld voor virtuele besturingssystemen. Om servers in een datacentrum optimaal te belasten, werken er op één computer meerdere besturingssystemen tegelijk. Microsoft verkoopt een Windows-product (Hyper-V) waarop ook Linux moet kunnen werken. De bewuste programmaregels zorgen ervoor dat Linux sneller werkt op de Microsoft infrastructuur. Microsoft noemt deze stap een 'break from the ordinary' – een uitzondering op de regel. Maar het lijkt zijn beleid ten aanzien van open bronsoftware structureler aangepast te hebben. Vorige week werd bekend dat de online versie van kantoorpakket Office 2010 ook werkt in Firefox. Daarnaast bleek ook dat Microsoft broncode heeft vrijgegeven voor het educatieve management systeem Moodle. Wederom, onder GPL. Volgens critici en complotdenkers doet Microsoft dit vooral uit eigen belang. Het uitsluiten van Linux voor Hyper-V zou niet bepaald helpen in de concurrentiestrijd tegen commerciële virtualisatieoplossingen, zoals die van VMware. En dus, is het voor Microsoft zelf beter om dan maar de broncode van de Hyper-V drivers vrij te geven. Voordeel is dat Linux nu ook veel beter kan draaien als gast-systeem op een Windows Server 2008-host, aldus Microsoft-strateeg Sam Ramji. Andere critici denken dat de release van de Hyper-V drivers onder de GPL-licentie een noodoperatie was van Microsoft. De drivers bevatten oorspronkelijk namelijk GPL-code, maar die was statisch gekoppeld aan gesloten (binary) code. De GPL-licentie verbiedt dit expliciet. Om een rechtzaak te voorkomen zou Microsoft er voor hebben gekozen om de drivercode geheel onder de GPL uit te brengen. Linus Torvalds heeft het niet zo met die 'Microsoft-ziekte'. 'Natuurlijk wordt het gedreven door zelfzuchtige redenen, maar op die manier wordt alle open source code geschreven! … Het is de reden waarom iedereen op een gegeven moment bij de open source beweging betrokken raakt. Dus het is lachwekkend om te klagen over het feit dat Microsoft werkt op hun eigen terrein. Natuurlijk hebben ze een gebied uitgekozen dat nuttig voor hen is. Dat is het hele punt van open source, de mogelijkheid om de code beter te maken voor je eigen doeleinden, wie in deze de ‘je’ ook is. Klaagt iemand erover als hardwareboeren drivers schrijven voor de hardware die ze maken? Nee, dat zou dom zijn. Hoor je iemand klagen als IBM de POWER-ontwikkeling financiert of werkt aan features voor de enterprise omdat zij zich richten op de enterprise? Nee, dat zou waanzinnig zijn. Dus mensen die erover klagen dat Microsoft drivers schrijft voor hun eigen virtualisatie-model, die moeten eens goed in de spiegel kijken en zichzelf afvragen waarom ze de hypocriet uithangen'. Tja, en dat is nu echt de spijker op de kop slaan….