• 発売日:2025/12/05
  • 出版社:日経BP
  • ISBN:9784296209491

読み込み中…

いちばんやさしい! OS自作超入門

いちばんやさしい! OS自作超入門

通常価格 3,080 円(税込)
通常価格 セール価格 3,080 円(税込)
SALE 売り切れ
  • 発売日:2025/12/05
  • 出版社:日経BP
  • ISBN:9784296209491
ネットストア在庫 詳細
    読み込み中...
My店舗在庫
    My店舗登録で在庫確認と店舗お受け取りのご利用が可能になります。(要ログイン)
  • 在庫表示のサンプル
商品説明
 OS自作をテーマにした書籍は、これまで数多く出版されてきました。いずれの書籍も独自の魅力を持ち、コンピューターやOSの仕組みを深く理解するための貴重な学習素材となっています。
 ただ、それらの書籍が簡単に読み解けるかというと、必ずしもそうではありません。正攻法でのOS自作には、CPUや周辺機器、プログラミング言語などについての広範な前提知識が必要だからです。
 例えば、一般的なPCで自作OSを起動するには、「UEFI」(Unified Extensible Firmware Interface)というファームウエアや、「ブートローダー」と呼ばれるソフトウエア、x86系CPUの動作モードなどについての知識が必要です。また、自作OSで、キーボードからの入力や、テキストの表示、ファイルからのプログラム読み込みなどを可能にするには、各種のハードウエアの知識や、それらを制御する方法を知っておかねばなりません。
 さらに、多くのOS自作本では、CやC++、Rustなどのプログラミング言語を利用します。それによって開発が楽になるのは確かですが、その半面、各プログラミング言語の文法やコンパイラの利用方法、コンパイルによって作成されるオブジェクトファイルの構成などについて理解することが求められます。
 OS自作の書籍は、そうした広範な前提知識を、できるだけ分かりやすく伝えてくれます。しかし、必要な前提知識の多さがハードルになり、なかなか最初の一歩を踏み出すことが難しいのが現状です。
 
 本書では、こうした壁をできるだけ低くすることを目的としています。そのために次のような方針を採用しました。
 
・シンプルな命令セットアーキテクチャを持つCPUエミュレータを利用:
筆者が命令セットアーキテクチャから自作したCPUエミュレータを利用することで、複雑なCPUの仕様に煩わされることなく学習を進められます。このCPUエミュレータには、キー入力やテキスト表示の機能があり、デバイスドライバを開発しなくて済みます。CPUエミュレータはPythonで作成しています。

・OSは基本的にアセンブリ言語のみで作成:
アセンブリ言語のみを利用することで、高級言語やオブジェクトファイルの知識を前提とせず、ハードウエアの動作に直結する形で理解を深められます。

・限定的ながらマルチタスク機能/仮想メモリー機能を備えたOSを完成させる:
現代的なOSの中核となるマルチタスク機能/仮想メモリー機能に焦点を当て、「OSを作り上げる」という体験を確実に味わえるように構成しています。

 これらの方針により、学習すべき事柄を大幅に減らすようにしています。本書を読み進めながら開発していくことで、OSの基本的な仕組みを理解できるようになります。
目次
はじめに
第1章  開発環境を用意する
 1-1 本書でのOS 自作の進め方
 1-2 開発環境に必要なもの
 1-3 開発環境の構築手順
 1-4 ソースコードの入手とサンプルコードの実行
第2章  CPUの仕組みと実行できる命令
 2-1 CPU の役割とその動作
 2-2 仮想CPU の特徴
 2-3 仮想CPU のレジスタ
 2-4 仮想CPU のメモリー管理
 2-5 仮想CPU の命令
第3章  アセンブリ言語の書式とサンプルプログラムの作成
 3-1 アセンブリ言語の基本的な書式
 3-2 アセンブリ言語で利用可能な疑似命令
 3-3 アセンブリ言語でプログラムを作成してみよう
第4章  シングルタスクOSを開発
 4-1 開発するシングルタスクOSの概要
 4-2 CPU エミュレータを変更
 4-3 コマンドの入力と実行を可能にする
 4-4 プログラムを実行するコマンドを追加
 4-5 現在時刻を表示できるようにする
第5章  マルチタスク化を見据えたsleepシステム関数の実装
 5-1 シンプルな仕組みのsleepシステム関数を実装
 5-2 タスクステータスに基づいてsleepシステム関数を実装
第6章  マルチタスクを実現する
 6-1 OS 自身を含めて4 つのタスクを動かす
 6-2 スリープ処理もマルチタスク対応にする
 6-3 キー入力処理を改良する
第7章  仮想メモリーを実現する
 7-1 仮想メモリー機能を有効にする
 7-2 タスクを論理アドレス空間で稼働させる
 7-3 タスクを終了させるシステム関数を追加
 7-4 デマンドページングを実現する
Appendix
 完成したOSの全アセンブリコード
終わりに
索引
詳細を表示する

カスタマーレビュー

honto本の通販ストアのレビュー(0件)

並び順:
1/1ページ

最近チェックした商品