- Plan9 の 「everything is a file」哲学を厳格に踏襲した実験的オペレーティングシステム
- 教育的・実験的目的のOS開発のために Cとアセンブリで完全にゼロから記述
- EEVDFスケジューラベースの完全プリエンプティブ・ティックレスカーネル構造。SMPとマルチスレッド、および細粒度のロック制御をサポート
- ファイルベースのIPCシステムを提供: パイプ、共有メモリ、ソケット、および Plan9 の
signals スタイルの notes システムを含む
- ファイルベースのデバイス抽象化レイヤーにより、フレームバッファ・入力デバイスなどを統合管理
- 同期プリミティブとして mutex、rwlock、futex などをサポート
- モジュラーなカーネル設計で、ランタイム時にモジュールのロード/アンロードが可能
- ファイルシステムは Unix スタイルの VFS 構造。マウントポイント、ハードリンク、プロセスごとの名前空間をサポート
- ユーザー空間は独自の C 標準ライブラリとシステムライブラリで構成
- 共有メモリベースの モジュラーなデスクトップ環境を提供
- POSIX との主な違い
fork(), exec() の代わりに spawn() を使用
- ユーザー概念を廃止し、非POSIX標準ライブラリを採用
- ファイルモードの代わりに ファイルフラグでアクセス制御
- 現在の制約事項
- 今後の計画
- LUA の移植および動的システム設定
- 非同期 I/O とシステムコール(io_uring を検討)
- USB サポートを追加予定
- Shell ユーティリティはファイルフラグシステムに合わせて再設計
touch, cat, echo, ls, rm など、POSIX ユーティリティに近いインターフェースを提供
- ビルド環境: Linux、GCC、NASM、mtools、QEMU が必要
- Doxygen ベースのドキュメントを提供。コードコメントと参考文献を含む
- xv6 と Linux の間に位置する 教育向け中間段階OSとして設計
まだコメントはありません。