RustがLinuxを救う:グレッグ・クロー・ハートマンが実験の終了を確認

キーポイント:
  • グレッグ・クロー・ハートマンは、Rust Week 2026において、LinuxカーネルにおけるRustの使用はもはや実験段階ではなく、正式な標準になりつつあると発表した。
  • Linuxチームは毎日約13件の脆弱性報告を受けており、そのほとんどはC言語における人為的なミスが原因となっている。
  • Rustのコンパイラはメモリエラーやクラッシュを自動的に検出するため、システム障害を最大80%削減できる可能性がある。
  • ハードウェアデータを「信頼できない」とラベル付けするシステムが導入され、開発者は使用前にそのデータを検証することを義務付けられる。
  • 既存のC言語コード(36万行)は書き換えません。Rustは、新しいコントローラとサブシステムの開発にのみ使用します。

ラストウィーク2026

最近開催されたRust Week 2026カンファレンスでは、 ユトレヒトで開催、 グレッグ・クロア-ハートマン、 Linuxカーネルの保守を担当する主要人物の一人である 彼は非常に明確なメッセージを携えてステージに上がった。「Rustこそがこのプロジェクトに必要な救世主だ」と。.

驚くべきことに、13件近いセキュリティ警告が発生しました。 (CVE) 公開 毎日開発チームは、ほとんど手に負えないほどのバグの数に直面している。 クロア=ハートマンによれば、 2005年からこれらの脆弱性に対処してきた人物、 原因は、メモリとエラーの処理に関してC言語が抱える典型的な欠点にある。Rustは、この問題を劇的に軽減することを約束している。

そのメッセージは直接的で分かりやすかった。 満員の開発者たちを前に、ベテランプログラマーは 彼は、チームがこの現代語のコミュニティを全面的に信頼していると告白した。 現代のコンピューティングの基盤を守るため。彼らにとって、 テスト段階は既に過去のものとなり、 コア部分でのRustの使用はもはや避けられない現実であるため、彼らは今後も最重要コンポーネントへのRustの統合を全速力で進めていくでしょう。

C言語コードの悪夢とRustの自動ソリューション

彼らが日々直面している本当の問題を説明するために開発者は、15年間気づかれずにいたBluetoothコードの欠陥を思い出した。メモリポインタのチェックを怠ったことが原因彼はまた、Xenのコードに、誰かがロックを解除し忘れたというバグがあることにも言及した。こうした些細な人為的ミスが積み重なると、最終的にはシステム障害を引き起こしたり、サイバー攻撃の温床となったりする。 Rustの大きな利点は、コードのコンパイル中にこれらのエラーを検出できることです。レビュー段階に入る前に、プログラムがエラーチェックやリソース解放を忘れると、コンパイルは失敗します。

この自動検証のおかげでコードのレビューを担当する人々 彼らはもはや細かい点を探すのに時間を費やす必要がなくなり、プログラムの実際のロジックに集中できるようになる。 クロア=ハートマン氏は、これらの特性だけでも現在のカーネルバグの60%を解消できると推定している。さらに、この新しい開発手法はすでにC言語のコードにも影響を与えており、プログラマーはインターフェースを整理し、より安全な手法を採用せざるを得なくなっている。これは、Rustの存在そのものがLinuxを改善していることを示している。

メモリブロックを超えて、 講演では、生命の安全に関する哲学について取り上げられた。 マイクロソフトの古い格言に基づいています。 システムに入力されるデータはすべて悪意のあるものだと想定するクロア=ハートマン氏は、同じ型システム内でデータを「信頼できない」と明示的にラベル付けするための方法をRust内で開発中であると説明した。

このように、 コンパイラは、プログラマがその情報を使用したりアクセスしたりする前に、その情報を検証することを強制します。これは今日特に重要です。なぜなら、開発者はユーザーソフトウェアだけでなく、製造上の欠陥があったり、悪意を持って設計されている可能性のあるハードウェア自体にも警戒しているからです。すべての検証を一元化することで、セキュリティチェックははるかに迅速かつ正確になります。

ゼロから書き直すことなく進化する

彼の熱意にもかかわらず、専門家は 彼は、Rustは魔法ではないことを明確にした。例えば、彼はこの言語で書かれた、システム障害時にQRコードを表示する小さなコードについて言及した。しかし、データバッファのサイズを確認することを誰も考えなかったため、結果的にメモリの問題を引き起こしてしまったという。 錆は、注意深く常識的に使用しないと、故障の原因となることもあります。 そのため、組織内でLinuxが既に保有している36万行のC言語コードを書き直すことを検討している人は誰もいない。このルールは絶対的なものだ。 既存のコードはそのまま残され、新しいツールは最新のコントローラーを作成するためだけに使用されます。

現在、eカーネルのRustコードはわずか約11万3000行しかない。主に2つの言語間のギャップを埋めるための一時的な適応策である。しかし、 Androidの内部通信システムのような巨大プロジェクト (バインダー) 彼らは既に移行プロセスの真っ只中にいるつまり、間もなく数十億台のスマートフォンが毎日このコードを実行するようになるということだ。

このプロジェクトは、この変化を自然な進化と捉えており、新しいハードウェアが最新のセキュリティ保証を備えたゼロから作成されたプログラムを要求するにつれて、古いC言語ドライバは年月を経て自然と使われなくなるだろうと考えている。


Googleで優先ソースとして追加する