12ステップで作る組み込みOS自作入門を読み終えた

April 16th, 2021

『12ステップで作る組み込みOS自作入門』を読み終えた。今年1月下旬から低レイヤの勉強を再開して、OSについて知りたくなった。いきなりxv6を読んだりするのは辛いのでOSに関する本を読み進めて仕組みに慣れていこうという方向になり、 2月上旬に手を伸ばしたのがこの本だった。組み込みOSなのでxv6やlinuxとは理念が違う部分もあるが面白かった。

12ステップなので12日前後で終わるかと思いきや自分がC言語に慣れていないせいで完成までには20日以上かかった。

terminal

感想

ブートローダーから書くだけにC言語のみではどうにもならず、リンカスクリプトやELFファイルの知識も必要だったが説明がちゃんとあったので迷うことはほとんどなかった。 仮想メモリは無いが、割り込みもスレッドも優先度スケジューリングもあり、聞いたことある知識を実際にコードに落とし込む体験ができたのは良かったように思う。

ボードが比較的安価なのも嬉しかった。マイコン・ボードのH8/3069F、シリアル・ケーブル、ACアダプター、USBシリアル変換ケーブルの4つが必要だったが、秋月電子で送料込みで買ったところ全て合わせて6000円弱だった。

board

苦難

なんと言っても環境構築が最大の壁だった。特定のバージョンのgccが必要な上、H8/3069FのフラッシュROMに書き込みを行うツールにはバグがあるらしく改良版を探す必要があったため苦労した。 作業に当たっては公式のサポートページに加え、下記のブログのエントリが大変参考になった。