【ゼロからのOS自作入門】MikanOSをRustに移植する 5章

前回の続きです。

ymzkmtfm.hatenablog.com

https://www.amazon.co.jp/%E3%82%BC%E3%83%AD%E3%81%8B%E3%82%89%E3%81%AEOS%E8%87%AA%E4%BD%9C%E5%85%A5%E9%96%80-%E5%86%85%E7%94%B0-%E5%85%AC%E5%A4%AA/dp/4839975868/ref=sr_1_1?__mk_ja_JP=%E3%82%AB%E3%82%BF%E3%82%AB%E3%83%8A&dchild=1&keywords=%E3%82%BC%E3%83%AD%E3%81%8B%E3%82%89%E3%81%AE&qid=1619090804&sr=8-1

↑の5章をrustに移植しました。
今回はちょっと流し気味になっちゃいました。

成果物

github.com

本物と違うところ

printk未実装

ピュア Rust のグローバル変数は色んな意味で使えません。
今のところ困ってないので後回しにしました。
グローバル変数を使いやすくする crate には lazy_static や once_cell などがあるらしいです。
頃合いを見て実装したいと思います。

github.com

github.com

ハードコーディングしたフォント

なんかごめん

感想

・インクリメンタルなのに破綻しない構成になってるのすごい
・文字が表示できると結構感動する