その他のプロジェクト

  • oreboot
    • 「C のない coreboot」。
    • x86、aarch64、RISC-V をサポートします。
    • 多数のドライバーを自前で持つのではなく、LinuxBoot に依存します。
  • Rust RaspberryPi OS チュートリアル
    • 初期化、UART ドライバー、シンプルなブートローダー、JTAG、例外レベル、 例外処理、ページテーブル。
    • Rust におけるキャッシュメンテナンスと初期化にはいくつか注意点があり、本番コードの 手本としてそのまま真似するには必ずしもよい例ではありません。
  • cargo-call-stack
    • 最大スタック使用量を算出するための静的解析。
  • RaspberryPi OS チュートリアルでは、MMU とキャッシュが 有効になる前に Rust コードを実行します。これによりメモリ(たとえばスタック)が読み書きされます。ただし、これには、このセッションの冒頭で述べた、非整列アクセスとキャッシュコヒーレンシに関する問題があります。