※この商品はタブレットなど大きいディスプレイを備えた端末で読むことに適しています。また、文字だけを拡大することや、文字列のハイライト、検索、辞書の参照、引用などの機能が使用できません。
OS自作をテーマにした書籍は、これまで数多く出版されてきました。ただ、それらの書籍が簡単に読み解けるかというと、必ずしもそうではありません。正攻法でのOS自作には、CPUや周辺機器、プログラミング言語などについての広範な前提知識が必要だからです。
さらに、多くのOS自作本では、CやC++、Rustなどのプログラミング言語を利用します。それによって開発が楽になるのは確かですが、その半面、各プログラミング言語の文法やコンパイラの利用方法、コンパイルによって作成されるオブジェクトファイルの構成などについて理解することが求められます。
本書では、こうした壁をできるだけ低くすることを目的としています。そのために次のような方針を採用しました。まず、筆者が命令セットアーキテクチャから自作したCPUエミュレータを利用することで、複雑なCPUの仕様に煩わされることなく学習を進められます。このCPUエミュレータには、キー入力やテキスト表示の機能があり、デバイスドライバを開発しなくて済みます。OSは基本的にアセンブリ言語のみを利用することで、高級言語やオブジェクトファイルの知識を前提とせず、ハードウエアの動作に直結する形で理解を深められます。そして、現代的なOSの中核となるマルチタスク機能/仮想メモリー機能に焦点を当て、「OSを作り上げる」という体験を確実に味わえるように構成しています。
これらの方針により、学習すべき事柄を大幅に減らすようにしています。本書を読み進めながら開発していくことで、OSの基本的な仕組みを理解できるようになります。
いちばんやさしい! OS自作超入門 マルチタスクと仮想メモリーを実現!(1巻配信中)