Linux の作者 Linus Torvalds 氏は、今週オンラインで開催されている Open Source Summit および Embedded Linux カンファレンスで、オープンソース カーネルの将来のメンテナーを見つけるという課題について語った。
トーバルズ氏は最近は基調講演を行っていないが、VMwareの最高オープンソース責任者であるディルク・ホーンデル氏との対談には応じてくれた。今回は新型コロナウイルス感染症のパンデミックの影響で、リモートでの開催となった。「これはカンファレンスの開催方法としては、少し変わった新しいモデルです」とトーバルズ氏は語った。
私や多くの人にとって、ハードウェアと低レベルでやりとりし、実際に起こっていることすべてを制御することほど興味深いことはありません。カーネルは退屈なものではありません。しかし、ほとんどの人は退屈だと考えるはずです。
ホーンデル氏は、「私の質問について事前に話すことは決してないので、これはまさにリアルタイムの会話です」と述べた。彼は、間もなくリリースされる「非常に大規模な」5.8カーネルについて質問した。「これは、規模が大きいため、最終リリースを延期し、通常よりも1つか2つ多くRC(リリース候補)をリリースする必要があるようなリリースになるかもしれません」とトーバルズ氏は述べ、「しかし、今のところ状況はかなり順調です」と付け加えた。
Linuxカーネルは退屈でありながらも興味深いものだとトーバルズ氏は述べた。「カーネルは退屈だと言いましたが、それは多くの新しい技術がもっと面白くあるべきだという意味です。私だけでなく多くの人にとって、ハードウェアと低レベルでやり取りし、そこで起こっていることすべてを実際に制御すること以上に面白いことはありません。カーネル自体は退屈ではありませんが、ほとんどの人は退屈だと考えるべきです。」
Linux: 次世代
会話はすぐに気まずい質問へと移っていった。「現在の世代のメンテナーが去った後、Linuxはどうなるのか?」トーバルズ氏やリーダーの多くが50代、60代であることを考えると、「ある時点で、コミュニティとして世代交代について考え始める必要があります。どうすればいいでしょうか?」とホーンデル氏は問いかけた。
トーバルズ氏は、Linuxカーネルコミュニティ全体はそれほど古くないと答えた。「50歳にも満たない新しいメンバーがたくさんいます。彼らが実際の作業を担っていることが多いのです」と彼は述べた。「30年来の仲間たちは、確かに年老いてきて白髪になってきています。しかし…長年活動してきたメンバーは、保守と管理の分野に進出しています。」
VMwareのDirk Hohndel氏(左)が、仮想オープンソースサミットでLinus Torvalds氏と対談しています... クレジット: Linux Foundation
しかし、問題はある。「メンテナーを見つけるのは本当に難しいことが分かりました」とトーバルズ氏は言う。数年前、彼は気に入らないカーネル開発者に怒鳴り散らさないと約束しなければならなかったことを我々は指摘する。
「カーネルメンテナーであることのデメリットの一つは、常にそこにいなければならないことです」とトーバルズ氏は続けた。「毎日です。メールを読み、メールに返信し、とにかくそこにいなければなりません。そして、この仕事に就くのは必ずしも容易なことではありません。」
「メンテナーが足りません。コードを書く人はたくさんいますし、メンテナーの数もそれなりにいます。でも…他の人のコードをちゃんと読んで、そのコードを上流、最終的には私のツリーまで導いてくれる人を見つけるのは難しいんです…それが私たちが抱える大きな問題の一つです。」
「昔のようにワイルドでクレイジーなことはできない」
問題は、コミュニティ内で信頼を築くのにかかる時間だ。「他のメンテナーからの信頼だけでなく、コードを書くすべての人々からの信頼も必要です…そして、それにはとにかく時間がかかります」とトーバルズ氏は述べた。「30年前、私たちが始めた頃は、そんなものは必要ありませんでした。出社すれば仕事がもらえる、といった感じでした。今では多くの人がカーネルに依存しているため、かつてのように突飛でクレイジーなことはできません。」
カーネルの大部分がC言語で書かれているが、GoやRustといった言語に取って代わられ、「2030年代のCOBOLプログラマーになってしまう危険性がある」とHohndel氏は問いかけた。Torvalds氏は「C言語は依然としてトップ10言語の一つです」と答えた。しかし、ドライバなど「カーネル自体の中心ではない」ものについては、カーネルチームは「例えばRustでそれらを実行するインターフェースを持つことを検討しています…私はそれが実現すると確信しています。Rustではないかもしれません。しかし、こうしたものを書くための異なるモデルが生まれることは間違いありません。そして、C言語だけが唯一の選択肢ではなくなるでしょう」と述べた。
Arm上のLinuxについてはどうだろうか?「AppleがArmに移行することで、Arm64が真に一流のプラットフォームになるのではないかと考えていました」とHohndel氏は述べた。
「ここ10年ほど、開発者にとって使いやすいArmハードウェアを見つけるのは本当に難しいと不満を言い続けてきました」とトーバルズ氏は答えた。
「AppleがArmに移行していることは、開発の観点からArmエコシステムに役立つと思います。数年後には、実際に開発に使用できる強力なArmデスクトップが登場することを期待しています。」
「クラウドで開発を行うことができます。Amazon は Graviton 2 により、Arm エコシステムをクラウドでこれまでよりもはるかに優れたものにしました。」
「しかし、クラウド開発は、ほとんどのカーネル開発者が望む開発ではありません。目の前にマシンがあるべきなのです。Arm向けの開発だけでなく、デスクトップでArmを日常的に使いたい。それが私の考えです。」
Apple は、Torvalds 氏が待ち望んでいたような Arm ベースのマシンを提供する可能性が高くなっています。®