システムプログラミング言語「Rust」の開発者らは、この言語がLinuxカーネルの開発で利用されるようになる道を模索している。
元Intelのエンジニアで、Rust言語プロジェクトのリードを務めるJosh Triplett氏は、慎重に取り組む限り、そしてLinuxカーネルの生みの親であるLinus Torvalds氏の機嫌を損ねない限り、「カーネル開発にRustを取り入れていく道を探りたい」と考えていると述べた。
Triplett氏は、「Linux Plumbers Conference 2020」でLinuxカーネルツリー内でのRustサポートに関するセッションの開催を提案するという、Linuxカーネルメーリングリストのスレッドの中で、「カーネル内にRustインターフェースを構築する上で何らかの言語機能を追加する必要がある場合、そうした要求を最善の形で満足できる言語拡張を考えていくことになる」と述べた。
同氏は「LinuxとCコンパイラーが互いに発展を助け合い、双方にメリットをもたらしてきたという意見をしばしば目にしている。同じことがLinuxとRustコンパイラーにも言えると私は考えている」と付け加えた。
Rustに関するこのセッションを提案したのは、Googleのエンジニアとして働きつつ、「Clang」や「LLVM」を用いたLinuxカーネルのコンパイルに取り組んでいるNick Desaulniers氏だ。
Triplett氏はRustを、システムレベルのプログラミングに、そしてCの代替として用いることを提唱している。なおCはMicrosoftで「Windows」の開発に、またLinuxカーネル内で広く用いられている。さらにMicrosoftは、CやC++で記述されたWindowsのコンポーネントからメモリー関連のセキュリティ脆弱性を一掃するという取り組みの一環でRustに目を向けている。
The Registerの6月の報道によると、Torvalds氏はLinuxカーネルチームがドライバーなど、カーネルの中核ではない部分でのRustインターフェースの利用を検討していると述べたという。
「これは実を結ぶと確信している。ただ、Rustではないかもしれない。しかし、この種のものを開発するための新たなモデルを手にすることになるのは確かだ。Cが唯一の選択肢ではなくなるのだ」(Torvalds氏)
ただTorvalds氏は10日、Triplett氏とのやりとりの中で、Linuxカーネル向けの初のRustドライバーが利用可能になり、カーネルチームがそれをテストする時間ができるまで、同言語を検討対象にとどめておきたいと考えていることを明らかにした。