BT

最新技術を追い求めるデベロッパのための情報コミュニティ

寄稿

Topics

地域を選ぶ

InfoQ ホームページ ニュース Microsoft、2万行のコードをLinuxカーネルに提供

Microsoft、2万行のコードをLinuxカーネルに提供

Leia em Português

原文(投稿日:2009/7/22)へのリンク

Microsoftは、3つのLinuxデバイス ドライバをLinuxカーネル2.6.32に提供したとしている。これはGPLv2ライセンスの下で行われ、コードは2万行に及ぶ。

Tom Hanrahan氏 (MicrosoftのOpen Source Technology Centerのディレクタ) は、何がきっかけでMicrosoftがこの極めて異例な措置を講じるに至ったか次のように述べている。

仮想化におけるキーポイントの1つを理解することは重要です。仮想マシンとして動作するオペレーティング システムを使用する場合、このオペレーティング システムは、さまざまな周辺機器に対し直接呼び出しを行わないよう、仮想マシンとして動作していることを認識する必要があります。Microsoftの用語では、これをエンライトメントと呼んでいます。 Windows Server 2008は、エンライトメントを実装するよう設計されました。これにより、仮想マシンとして動作しているケースと物理ハードウェア上で動作しているケースを識別するようになります。

Linuxが、Hyper-V上で同様のエクスペリエンスを有するには、同一のエンライトメントを実装する必要があり、これを行うため、Linux用デバイス ドライバを公開することになりました。

これらのデバイス ドライバは以前、Hyper-Vの最初のバージョンで使用する目的でダウンロード可能であったが、Linuxコミュニティは、Greg Kroah-Hartman氏 (この件に関して初めてMicrosoftと交渉した人物) を通じて、Linux用デバイス ドライバを追加する方法は、そのドライバをコミュニティに提供することであり、これにより、いかなる商用、非商用ディストリビュータもこのドライバを利用でき、改変や配布も自由に行えるようMicrosoftの説得にあたった。

Hank Janssen氏 (MicrosoftのOpen Source Technology Centerのマネージャであり、このドライバの作成チームを率いる人物) は、彼らがこのコードへの取り組みを中止するつもりはないと次のように断言した

われわれは、ドライバ コードのアップデートを継続し、相互運用性を強化しますが、コミュニティの他の開発者がコードの有用性や協調への価値を見出すことを期待します。

Jay Lyman氏 (The 451 Groupのアナリスト) は、この動きの重要性についてコメントしている。 Layman氏は、Microsoftがコードの知的所有権を保持すると考えている。

このコードの著作権は、自社のエンジニアリング リーダであるHank Janssen氏 (MicrosoftのOpen Source Technology Centerのグループ プログラム マネージャ) に対するコントリビュータ クレジット付きで、Microsoftが保持するでしょう。

とはいえ、Layman氏は、Microsoftがいかなる特許権も行使しない、つまり、いかなるコード使用料も課さないことに合意するとみている。

このニュースを受けて浮上する最も可能性の高い陰謀説にわれわれが賭けるなら、それはこれがトロイの木馬で、Microsoftは後に特許権を行使するLinuxにコードを提供しているという内容になるでしょう。それでもこれが理論上可能かどうかは、GPLv2の理解によります。

…最終的に、これは弁護士の問題、つまり弁護士の雄弁が問われるのです (皮肉なように聞こえますが)。一方、GPLv2を使用したコード提供には、追加使用料の請求や、いかなる特許申請もないことが保証されることについて、Microsoftに理解がある とわれわれは判断しています

Lyman氏もまた、Microsoftがこのような動きを見せた理由について自身の意見を次のように述べた。

Red HatおよびNovellのLinuxディストリビューションは、双方ともMicrosoftとのパートナーシップの下で行われた開発作業の結果、すでにenlightenedモードをサポートしています。カーネルへの貢献におけるMicrosoftのメリットの1つは、この貢献により、作業の重複やLinuxの多様な独自機能サポートに対するコストを削減できる点にあります。このコードがカーネルに組み込まれれば、Microsoftは将来の仮想化統合開発の基礎としてカーネル ツリー コードを使用することになるでしょう。

また、これは、コミュニティLinuxディストリビューションがこのコードを使用できるようになることも意味しています。これにより、Microsoftにとってホスティング市場における可能性がさらに開かれますが、この市場で、Ubuntu、Debian、CentOSなど、コミュニティのLinuxディストリビューションを採用することは大きな意味を持ちます。結果、それらコミュニティ オペレーティング システムのRed HatやNovellに対する挑戦はやや厳しくもなります。というのも、この2者は、よりWindowsに直結した市場の挑戦者だからです。

確かに、Microsoftの貢献は自身の利益が原動力になっています。Microsoftは、マルチ オペレーティング システムや混合環境の使用促進を維持する企業顧客に貢献し応じる必要がある一方で、自社のHyper-V仮想化技術と仮想化の先導者であるVMwareとの差別化を図ることによって利益を得ることもできます。われわれは、MicrosoftがWindowsの仮想化をVMwareよりもさらにLinuxフレンドリーにする可能性を見込んでいると考えています。

注意点として、Linuxは、前述のデバイス ドライバがなくてもHyper-V上で動作可能であるが、その際のパフォーマンスは劣化する。MicrosoftがLinuxカーネルにコードを提供するのは今回が初めてであり、GPLv2でのコード リリースも同様である。

この記事に星をつける

おすすめ度
スタイル

BT