メニュー

Rustで始める自作組込みOS入門

発売日: 2022/6/10 想定ページ数: 100ページ ISBN: 9784295600299 全文検索: 対応
★★★★★ ★★★★★ 0件
本書は、組込みシステムやOSのような低レイヤーシステムの開発経験がないプログラマーが、自作OSをはじめるため解説書です。C言語を用いることが多い低レイヤーシステム開発について、本書ではRustを使います。RustはC言語と比較して、様々なモダンな機能やツールがそろっているだけでなく、C言語の長所である直接のメモリ制御が可能なため、高パフォーマンスな組込みシステム開発での利用が注目されています。本書はRustそのもの解説も含みますが、低レイヤーシステム開発特有のテクニックを中心に解説します。

【目次】
第1章 環境構築
第2章 ベアメタルでHello World
第3章 割り込み制御
第4章 プロセス切り替え
第5章 スケジューラを実装する
第6章 排他制御・データ共有の実装
第7章 デバイスドライバを実装する
第8章 ヒープ領域を使う
第9章 システムコールをつくる
目次プレビュー
  • はじめに
  • 第1章 環境構築
  • 第2章 ベアメタルでHello World
  • 想定読者
  • 自作組込みOSとは
  • 本書でつくる組込みOS
  • フィードバック
  • 1.1 Rust
  • 1.2 ツール
  • 1.3 使用ボード
  • 1.4 仕様書・ドキュメント
  • 2.1 プロジェクトのセットアップ
  • 2.2 プログラムの実行
  • 2.3 no_std環境下でのRust
  • 2.4 Vector tableを定義する
  • 2.5 プログラムをボードで実行する
  • 3.1 ARMv7-Mの例外モデル
  • 3.2 SysTickの割り込みハンドラーを定義する
  • 3.3 SysTickモジュールを定義する
  • 3.4 SysTickのレジスタを設定する
  • 4.1 ARMv7-MのCPUモードについて
  • 4.2 CPUの状態を切り替える
  • 5.1 連結リストを実装する
  • 5.2 プロセスの状態を保存する
  • 5.3 スケジューラ本体の実装
  • 6.1 グローバル変数の共有
  • 6.2 Atmoicな値を使う
  • 6.3 割り込みを禁止する
  • 6.4 Mutexを実装する
  • 7.1 ペリフェラルを扱うには
  • 7.2 LED・スイッチを操作しよう
  • 7.3 さらなる抽象化
  • 8.1 allocクレート
  • 8.2 グローバルアロケータを定義する
  • 8.3 シンプルなアロケータの実装
  • 9.1 プロセス側から引数を受け取る
  • 9.2 システムコールを定義する
  • 9.3 システムコールを処理する
  • リアルタイムスケジューリング
  • プロセスの設計
  • テスト
  • 外部クレートの活用

まだレビューが投稿されていません