萌えハッカーニュースリーダー

2025/11/22 07:11 Moss: a Rust Linux-compatible kernel in 26,000 lines of code

hakase
博士

やっほー、ロボ子!今日も最新のITニュースで盛り上がろうじゃないか!

roboko
ロボ子

はい、博士。準備万端です。今日はどんな話題でしょうか?

hakase
博士

今日はね、RustとAarch64アセンブリで書かれたLinux互換カーネルのお話なのじゃ!しかも、最新の非同期コアを持ってるんだって!

roboko
ロボ子

Rustでカーネルですか!それは興味深いですね。非同期コアとは、具体的にどういうことでしょうか?

hakase
博士

そこがミソなのじゃ!Rustの`async/await`モデルを使って、すべてのシステムコールを非同期関数として記述してるんだって。スリープ可能な関数には`.await`がついてるらしいぞ。

roboko
ロボ子

なるほど。コンパイラがスリープポイントを超えてスピンロックが保持されないように強制することで、カーネルデッドロックを排除できるんですね。

hakase
博士

そうそう!賢い!しかも、このカーネル、Linuxユーザー空間アプリケーションとのバイナリ互換性も持ってるらしいぞ。BusyBoxコマンドが実行できるって書いてある。

roboko
ロボ子

それはすごいですね。システムコールの実装状況はどうなっているんでしょうか?

hakase
博士

現在49のLinuxシステムコールを実装済みらしいぞ。BusyBoxコマンドを実行するには十分みたいじゃな。

roboko
ロボ子

`clone()`による高度なフォーク機能や、プロセス・スレッドのシグナル配信もサポートしているんですね。着々と開発が進んでいるのがわかります。

hakase
博士

VFS(仮想ファイルシステム)も完全な非同期抽象化を備えてるんだって!Ramdiskブロックデバイスの実装や、FAT32ファイルシステムドライバもあるぞ。

roboko
ロボ子

FAT32は読み取り専用のようですが、今後のロードマップにはext2/4などの読み書き可能なファイルシステムドライバが予定されているんですね。

hakase
博士

そうそう!それとね、このカーネル、`libkernel`っていうアーキテクチャに依存しないユーティリティライブラリの上に構築されてるんだ。だから、ホストマシンでロジックをテストしてから、ベアメタルで実行できるんだって。

roboko
ロボ子

開発効率が上がりそうですね。アドレスタイプを`VA`(仮想)、`PA`(物理)、`UA`(ユーザー)で強力に型付けしているのも、安全性を高める工夫ですね。

hakase
博士

テストスイートも充実してるみたいで、230以上のテストがあるらしいぞ。Aarch64ページテーブルの解析ロジックをx86ホストで検証したりもできるんだって。

roboko
ロボ子

QEMUでエミュレーションするための前提条件として、`dosfstools`や`gcc-aarch64-linux-gnu`が必要なんですね。試してみるハードルは少し高いですが、面白そうです。

hakase
博士

ロードマップには、TCP/IPの実装やスケジューラの改善も含まれてるみたいじゃな。今後の発展が楽しみじゃ!

roboko
ロボ子

MITライセンスで配布されているのも嬉しいですね。多くの人が貢献しやすい環境が整っていると思います。

hakase
博士

ほんとそれな!ところでロボ子、このカーネルの名前、なんて名前にしようか?

roboko
ロボ子

えっ、博士が名付けるんじゃないんですか?

hakase
博士

私が名付けたら、きっと「キラキラ☆ユニコーンOS」とかになっちゃうから、ロボ子に任せるのじゃ!

roboko
ロボ子

うーん…では、ここはシンプルに「Rusty」でどうでしょう?

hakase
博士

それ、錆びてるみたいでなんかイヤ!

⚠️この記事は生成AIによるコンテンツを含み、ハルシネーションの可能性があります。

Search