1月版 ext3でデータが破損!? メモリ管理で不整合


上川純一
日本ヒューレット・パッカード株式会社
コンサルティング・インテグレーション統括本部
2007/1/31

linux-kernelメーリングリスト(以下LKML)かいわいで起きるイベントを毎月お伝えする、Linux Kernel Watch。2006年12月はどのようなことが起きたのか、見てみましょう。

カーネル2.6.20始動、その開発方針は

 2006年12月は、カーネル2.6.20のリリースサイクルの始まりでした。Linusは、2.6.20をどのようなリリースにする予定なのかを2.6.20-rc1で示しました。

 2.6.20-rc1のリリースメールには、「2.6.20ではコアな変更はあまり行わず、穏やかにやりたい」というLinusの意向が書かれていました。ただ、先月お伝えしたKVM(注)が入ったり、デバイスドライバ周りの変更が相変わらず多数行われていたりすることなどから、ユーザー側から見ると変更点は多数ありそうです。

注:12月版 ついに仮想化がカーネル標準機能に!?を参照。

 この時期はイベントが多く、2.6.20-rc2はクリスマスイブ、-rc3は2007年正月に合わせてリリースされました。Linusによると、-rc3のリリースは「酔っ払ってリリースするのに反対する母たちの会からの苦情が出ないように正月前にリリースしたのだよ」ということだそうです。

仮想化機能KVMとlhype、鋭意開発中

 KVMは、カーネル開発者の間で大きな反響を呼びました。12月は最初のリリースに対する修正点として、MSR(注)アクセスに関するパッチや安定化のためのパッチなどがLKMLに投げられていました。また、Ingo MolnarがKVMの高速化パッチをベンチマーク結果とともに投げていました。カーネルのメインラインにいきなり導入されて、しかも簡単に使えるという点は大きかったようです。

注:model-specific register。Intel x86 CPUの特殊なレジスタ。

 一方、Rusty Russelが開発しているlhype(注)も進んでいるようです。lhypeを開発するためにvirtbenchというベンチマークソフトを作成し、「これで高速化をするのだ」と息巻いていました。

注:9月版 IDEハードディスクが「/dev/hda」ではなくなる日を参照。

 まだlhypeは機能的に十分でないようで、メインラインカーネルにはマージされていません。そのため一般的に利用できる状況ではありませんが、今後どのような展開を見せるのか、気になりますね。

 どんどん仮想化の選択肢が増えています。今後もLinuxの仮想化関連の動向から目が離せません。

ペンギンはバイナリモジュールの夢を見るか?

 Linuxカーネルの開発者たちは、バイナリのみで提供されているドライバについて「ソースがないとデバッグの際に難しい」「そういうものはできるだけない方がよい」と考えているようで、数カ月に1回はLKMLで話題になります。

 Greg KHもそう考える開発者の1人です。彼は、GPL以外のライセンスで提供されているモジュールに、どうにかして制限を設けることができないかと考え、新しいアプローチを提案しました。それは、ペンギンについての詩(poem)を作り、モジュールがカーネルにロードされる際にその詩がキーとなるという仕組みです(注)。「『ソースコードは著作権で保護されるのか』という点については議論になるが、詩が著作物であることについて議論はないだろう。それを複製して利用しないとカーネルのドライバとして機能しないのであれば、ソースを配布しないカーネルモジュールというものの存在が防げるのではないか」というのです。

注:Greg KHは、自身のblogにてそれを「Penguin haiku」と呼んでいる。http://www.kroah.com/log/2006/12/13/

 空を飛べることを夢見るペンギンについての詩を読んで、Linusは「深く、染み入るようだ(でも、それは、もしかすると昨日食べたカレーかもしれない)」とコメントしました。

 ただしLinusは、このパッチの適用に関しては「このように制約を作っても、技術的に回避することは簡単だ。それに法律の観点でも、実際にエンドユーザーには制約を課すことはできないので、難しいよ」とたしなめました。全体として、GPLではないドライバに制限を課すことは利益にならないと判断したようです。

 今回は、「バイナリモジュールが必要な現状に不満を持つ開発者を現実的な観点でたしなめるLinus」という構図になりました。今後もGPL以外のライセンスのドライバは生き延びるようです。

1/2

Index
Linux Kernel Watch 1月版
 ext3でデータが破損!? メモリ管理で不整合
Page 1
 カーネル2.6.20始動、その開発方針は?
 仮想化機能KVMとlhype、鋭意開発中
 ペンギンはバイナリモジュールの夢を見るか?
  Page 2
 ext3でデータが壊れる!?
 -stableに付きまとう機能追加の誘惑

連載 Linux Kernel Watch


 Linux Squareフォーラム Linuxカーネル関連記事
連載:Linux Kernel Watch(連載中)
Linuxカーネル開発の現場ではさまざまな提案や議論が交わされています。その中からいくつかのトピックをピックアップしてお伝えします
連載:Linuxファイルシステム技術解説
ファイルシステムにはそれぞれ特性がある。本連載では、基礎技術から各ファイルシステムの特徴、パフォーマンスを検証する
特集:全貌を現したLinuxカーネル2.6[第1章]
エンタープライズ向けに刷新されたカーネル・コア
ついに全貌が明らかになったカーネル2.6。6月に正式リリースされる予定の次期安定版カーネルの改良点や新機能を詳しく解説する
特集:/procによるLinuxチューニング[前編]
/procで理解するOSの状態

Linuxの状態確認や挙動の変更で重要なのが/procファイルシステムである。/procの概念や/procを利用したOSの状態確認方法を解説する
特集:仮想OS「User Mode Linux」活用法
Linux上で仮想的なLinuxを動かすUMLの仕組みからインストール/管理方法やIPv6などに対応させるカーネル構築までを徹底解説
Linuxのカーネルメンテナは柔軟なシステム
カーネルメンテナが語るコミュニティとIA-64 Linux
IA-64 LinuxのカーネルメンテナであるBjorn Helgaas氏。同氏にLinuxカーネルの開発体制などについて伺った

MONOist組み込み開発フォーラムの中から、Linux関連記事を紹介します


Linux & OSS フォーラム 新着記事
@ITメールマガジン 新着情報やスタッフのコラムがメールで届きます(無料)

注目のテーマ

Linux & OSS 記事ランキング

本日 月間