日本人カーネル開発者が体験した「失敗」と「成功」|オープンソース|トピックス|Computerworld

CW_Welcomeバナー

header_cwr_head_mid_fl_logo

CW_ADJUST_ウルトラバナー

CW_ウルトラバナー_Topics02

CW_ウルトラバナー_Topics04

CW_ウルトラバナー_Topics05

CW_ウルトラバナー_Topics06

CW_ウルトラバナー_Topics07

CW_ウルトラバナー_Topics08

オープンソース

RSS
【Japan Linux Symposium技術セッション】

日本人カーネル開発者が体験した「失敗」と「成功」

「TOMOYO Linux」メインライン化への“試行錯誤”
(2009年10月30日)

日本発のセキュアOS機能がLinuxカーネルに統合



「Kernel Development: Drawing Lessons from "Mistakes"」(カーネル開発:“数々の失敗”とその教訓)と題して発表を行ったTOMOYO Linuxプロジェクト・マネージャーの原田季栄氏

 今年6月にリリースされたLinuxカーネル2.6.30には、パス名ベースのセキュリティ機能である「TOMOYO Linux」がLinuxセキュリティ・モジュール(LSM)の1つとして組み込まれた。TOMOYO Linuxは当初、NTTデータのわずか3名のプロジェクト・チームによって開発された。このモジュールのソース・コードが最初に送られてから、カーネルの一部として正式採用されるまでには、多くの紆余曲折があった。

 第1回Japan Linux Symposium3日目の10月23日午後、TOMOYO Linuxがカーネルのメインラインに取り込まれるまでの過程を紹介する技術セッションが行われた。発表者を務めたのは、TOMOYO Linuxのプロジェクト・マネージャーであるNTTデータの原田季栄氏(技術開発本部 SIアーキテクチャ開発センタ シニアスペシャリスト)だ。


TOMOYO Linuxプロジェクト・チームの沼口大輔氏(写真左・NTTデータ 技術開発本部 SIアーキテクチャ開発センタ)と、半田哲夫氏(写真右・NTTデータ先端技術 インテグレーション事業部 オープンソースビジネスユニット コンサルタント)。沼口氏は途中からプロジェクトに加わった。このほかにNTTデータの武田健太郎氏が開発に携わっている

 原田氏らが、メインラインへの取り込み(Linuxカーネルでの正式採用)を目指して、カーネル開発者向けメーリングリストの「Linux Kernel Mailing List」(以下、LKML)に、最初にTOMOYO Linuxのソース・コードを送ったのは2007年6月。TOMOYO Linuxを組み込んだカーネル2.6.30がリリースされたのは、それから実に716日後のことだ。約2年にわたる検討・修正の間、原田氏ら開発メンバーはソース・コードのパッチを全部で15回送っている。また、LKMLのTOMOYO Linux関連スレッドでは、合計162件の電子メールが投稿された。なお、LKML上でのこれらのパッチやコメントのやり取りは、TOMOYO Linuxの公式サイトのWebページから閲覧することが可能だ。

 TOMOYO Linuxの正式採用にこれだけの時間を要した背景には、Linuxカーネルがすでに「SELinux」と呼ばれるセキュリティ・モジュール(ただしTOMOYO Linuxとはセキュリティ保護の仕組みが異なる)を採用済みだったという事情がある。しかし、原田氏によれば、それ以前の問題として、自身を含むTOMOYO Linuxの開発メンバー側でカーネル開発に対する知識不足や初歩的なミスがいくつかあったという。原田氏の技術セッションでは、そうしたカーネル開発における「失敗」の実例と、同じ失敗を繰り返さないための対応策が紹介された。


Linuxカーネルの開発プロセス(Linux Foundationのセミナー資料より抜粋)。個々の開発者がLKMLに投稿したソース・コードが、修正後にカーネル・メンテナーのリポジトリに取り込まれ、最終的にメインライン(正式版カーネル)に反映される

記事詳細テキストバナー

ページの先頭へ戻る