nightingale
v0.15.0
ナイチンゲールは、低レベルのプログラミングとオペレーティングシステムの設計について学ぶために7年間開発してきたX86_64のオペレーティングシステムです。
ナイチンゲールは、コンプライアンスは目標ではありませんが、ほとんどがPOSIXのようなユーザーランドを実装しています。 POSIXは、よく理解され、文書化されたインターフェイスとして役立ち、既存のソフトウェアと大量のソフトウェアとの互換性を可能にするインターフェイスとして役立ちます。

より具体的な機能と機能情報については、about.mdを参照してください。
NightingaleはCmakeビルドシステムを使用しており、GitHubアクションワークフローファイルでパッケージ要件を見つけることができます。
makeを実行します。./run.rbを使用してください - そのヘルプテキストに利用可能なオプションが表示されますdoc :ドキュメントinclude :システム全体のヘッダーファイルinterface :syscallsおよびerrno値のインターフェイス定義kernel :オペレーティングシステムの中核libc : printfなどを含む一般的なユーザーランドルーチンlinker :カーネルモジュールローダー、ユーザーランドダイナミックリンカー、およびlibelfscript :ナイチンゲールの構築と開発のためのユーティリティスクリプトtoolchain :cmakeツールチェーンファイルuser :システムに分散したツリーUSERMODEプログラムbt.bash :バックトレースのためのaddr2line周辺の便利なラッパーdump.bash : objdump周辺の便利なラッパーformat.bash : clang-formatの周りの便利なラッパーmake.bash :プロジェクトのコアビルドエンジンrun.rb : qemu-system-x86_64周辺のコンビニエンスラッパーこれらのマニフェストファイルは、ナイチンゲールカーネルのパブリックサイコールインターフェイスを定義します。これらは、カーネルとCライブラリの両方で使用されるc酵素とメタデータにレンダリングされます。
ERRNOS : errnoの値、その名前、およびperror文字列を定義しますSYSCALLS :syscall数、タイプ、および議論を定義します