安全で高速、汎用的なOSカーネル。Rustで書かれ、Linuxと互換性があります
Asterinasは、安全で高速、汎用的なOSカーネルです。 Linux互換のABIを提供し、Linuxの代替としてシームレスに動作します。 また、メモリの安全性と開発者の利便性を向上させます。
-
Asterinasは、Rustを唯一のプログラミング言語として使用し、 unsafe Rust の使用を明確に定義された最小限の信頼できるコンピューティングベース(TCB)に制限することで、 メモリの安全性を最優先します。 この革新的なアプローチは、フレームカーネルアーキテクチャとして知られ、 Asterinasをより安全で信頼性の高いカーネルオプションとして確立します。
-
Asterinasは、開発者の利便性においてもLinuxを上回ります。 カーネル開発者は、より生産性の高いRustプログラミング言語を利用し、 専用のツールキットであるOSDKを活用してワークフローを簡素化し、 MPLの柔軟性を活かして、カーネルモジュールをオープンソースとして公開するか、 プロプライエタリとして保持するかを選択できます。
本番レベルのOSカーネルを目指す道のりは困難ですが、私たちはこの目標に向けて着実に前進しています。
2024年を通じて、年末レポートに詳述されているように、Asterinasの成熟度を大幅に向上させました。
そして2025年には、Asterinasをx86-64仮想マシン環境で本番運用可能なレベルに引き上げ、実際のユーザーを獲得することを主な目標としています。
Dockerがインストールされたx86-64 Linuxマシンを用意してください。 以下の3つの簡単なステップに従って、Asterinasを起動します。
- 最新のソースコードをダウンロードします。
git clone https://github.com/asterinas/asterinas
- 開発環境としてDockerコンテナを実行します。
docker run -it --privileged --network=host --device=/dev/kvm -v $(pwd)/asterinas:/root/asterinas asterinas/asterinas:0.9.4
- コンテナ内でプロジェクトフォルダに移動し、Asterinasをビルドして実行します。
make build
make run
すべてが順調に進めば、Asterinasは仮想マシン内で実行されます。
プロジェクトの詳細については、The Asterinas Bookをご覧ください。
Asterinasのソースコードとドキュメントは主に Mozilla Public License (MPL), Version 2.0を使用しています。 一部のコンポーネントは、より寛容なライセンスの下で提供されています。 詳細はこちらをご覧ください。 MPLを選択した理由については、こちらをご覧ください。