カーネル:10年間を振り返る
今年の基調講演は、ここ数年に渡って担当してOLSの定番講演者となっていたLinux Weekly NewsのJonathan Corbet氏に代わって、Matthew Wilcox氏が担当した。Wilcox氏の自己紹介によると同氏は1998年以来のカーネルハッカーで、Genedata、Linuxcareを経て現在Intelに勤務しているとのことだ。
Wilcox氏は部屋のOHPや音声システムと数分間格闘した後に講演を開始して、Linuxカーネル開発の歴史について簡単な説明をした。Linuxを常用しているユーザであればほとんどの人が知っている通り、2.6カーネルツリーの開発は相当の年数に渡って行われてきた。これは以前とは異なっていて、以前は、2.0.x、2.2.x、2.4.xというように偶数で示されるのが安定リリース、2.1.x、2.3.x、2.5.xというように奇数で示されるのが開発リリースとなっていて、カーネルのマイナーリリースはほぼ毎週、新しい安定リリースは約3年ごとというペースでリリースが行われていた。一方2.6.xカーネルでは、各バージョン自体がそれぞれ安定リリースになっていて、約3ヶ月ごとにリリースされるようになり、各バージョンは以前のメジャーリリースの各バージョンと比べれば劇的な変更は比較的少なめになった。
開発の歴史についての説明の後は、カーネル開発自体が行われる方法についての説明があった。カーネルの各バージョンには短いマージ期間があって、その期間中に何万という数のパッチがgit経由で提出される。gitとはLinus Torvalds氏が特にLinuxカーネルのために作成した大規模でスケーラブルなソースコード管理ユーティリティだ。gitを使用する主な理由は、全員が同じツールを使用するということだとWilcox氏は説明した。類似ツールとしては他にMercurialもあるが、統一性という点でgitの方が好ましく、またCVSはカーネル開発のためにはスケーラビリティが十分でないとのことだ。
