ゼロからの OS 自作入門(ゼロカラノオーエスジサクニュウモン)
ハードウェア- 著者:
- 内田公太(ウチダコウタ)
- 出版社:
- マイナビ出版
- 出版日:
- 2021年03月22日頃
- ISBN:
- 9784839975869
- 在庫:
- 在庫あり
なぜ注目されているか
書籍紹介
[OS を手づくりするワクワクを体験!]
"知識ゼロ"からはじめて、本書オリジナル OS 「 MikanOS 」を手づくりする本です。
パソコンの電源を入れ OS 本体を呼び出すところから様々なアプリを動かせるようになるまで、 OS づくりを一通り体験します。読み進めるにつれ、いままでブラックボックスだと思っていたパソコンの中身「 OS 」の仕組みが分かってくることでしょう。
MikanOS は UEFI BIOS により起動して Intel 64 モードで動作、ページングを用いてメモリ管理を行い、 USB3.0 ドライバを搭載。ウィンドウシステム、プリエンプティブマルチタスク、ファイルシステムを持つ OS です。これらの専門用語の意味も OS を作りながら解説します。 MikanOS は C++ で記述します。数百行程度のプログラミング経験があれば無理なく読み進められるはずです。
本書は『 30 日でできる!OS 自作入門』の流れを汲み「小さく作ってすぐ動かす」ステップバイステップ方式をとっていますので、無理なくマスター可能です!エンジニアなら誰もが一度は夢見る「 OS づくり」を本書で学ぼう。
第 0 章 OS って個人で作れるの?
第 1 章 PC の仕組みとハローワールド
第 2 章 EDK II 入門とメモリマップ
第 3 章 画面表示の練習とブートローダ
第 4 章 ピクセル描画と make 入門
第 5 章 文字表示とコンソールクラス
第 6 章 マウス入力と PCI
第 7 章 割り込みと FIFO
第 8 章 メモリ管理
第 9 章 重ね合わせ処理
第 10 章 ウィンドウ
第 11 章 タイマと ACPI
第 12 章 キー入力
第 13 章 マルチタスク (1)
第 14 章 マルチタスク (2)
第 15 章 ターミナル
第 16 章 コマンド
第 17 章 ファイルシステム
第 18 章 アプリケーション
第 19 章 ページング
第 20 章 システムコール
第 21 章 アプリからウィンドウ
第 22 章 グラフィックとイベント (1)
第 23 章 グラフィックとイベント (2)
第 24 章 複数のターミナル
第 25 章 アプリでファイル読み込み
第 26 章 アプリでファイル書き込み
第 27 章 アプリのメモリ管理
第 28 章 日本語表示とリダイレクト
第 29 章 アプリ間通信
第 30 章 おまけアプリ
第 31 章 これからの道
付録:開発環境のインストール / MikanOS の入手 / EDK II のファイル説明 / C++のテンプレート / iPXE / ASCII コード表
技書の森解説
コンピュータの仕組みを根底から理解したい人にとって、 OS を自分で書くことほど効果の大きい学習はありません。『ゼロからの OS 自作入門』は、その体験を知識ゼロから積み上げられるように設計された一冊で、内田公太氏の著によりマイナビ出版から 2021 年 3 月に刊行されました。読者が作るのは本書オリジナルの OS 「 MikanOS 」。版元の紹介によれば、 UEFI により起動して Intel 64 モードで動作し、ページングによるメモリ管理、 USB3.0 ドライバ、ウィンドウシステム、プリエンプティブマルチタスク、ファイルシステムを備えた OS を、 C++ で記述していきます。
第 0 章から第 31 章まで、小さく作ってすぐ動かす
構成は「 OS って個人で作れるの?」と問う第 0 章に始まり、ハローワールド、ブートローダ、ピクセル描画、マウス入力と PCI 、割り込み、メモリ管理、ウィンドウ、マルチタスク、ファイルシステム、ページング、システムコール、アプリ間通信、日本語表示と積み上がり、第 31 章「これからの道」で締めくくられます。版元自身が、先行書『 30 日でできる!OS 自作入門』の流れを汲む「小さく作ってすぐ動かす」ステップバイステップ方式と説明しており、画面に文字が出る、マウスが動くといった目に見える成功体験が章ごとに置かれています。この設計が、巨大なテーマを完走可能にしている仕掛けです。
ブラックボックスが配線図に変わる読書
アプリケーション層で仕事をしていると、 OS は「そういうもの」として素通りするブラックボックスになりがちです。本書の価値は、電源投入から OS 本体の呼び出し、メモリレイアウト の管理、ウィンドウの重ね合わせ、システムコールまでを自分の書いたコードで通すことで、その箱の中身が配線図として見えるようになることです。専門用語の意味を「作りながら」解説する方針も版元が明記しており、割り込みやページングのような概念が、定義の暗記ではなく必要に迫られた実装として身につきます。
前提知識と、完走のための心構え
版元の目安は「数百行程度のプログラミング経験があれば無理なく読み進められる」です。 C++ の高度な知識は前提でなく、付録には開発環境のインストールや C++ のテンプレート解説まで用意されています。ただし分量は大著の部類で、腰を据えた並走が要ります。実装しながら読む本の攻略法は 分厚い技術書を読み切る方法 が参考になります。低レイヤの学び直しをしたいエンジニア、ハードウェアとソフトウェアの境界を体験したい学生、いつか OS を作ってみたかったすべての人へ。 2021 年刊ですが、 UEFI と 64 ビット環境という土台は長く通用する選択で、この種の体験型教材として日本語で読める貴重な一冊です。
言及 Qiita 記事 (56 件)
【最新技術に振り回されない】 低レイヤーに強くなるための鉄板コンテンツ集
♡ 1076CPU, コンパイラ, OS, システムプログラミング, 低レイヤMac で始める「ゼロからのOS自作入門」
♡ 196OS自作入門, ゼロからのOS自作入門プログラミング初心者の学生が2年間で読んだ本の中でオススメを紹介する
♡ 151プログラミング, 本, 技術書, 勉強, 勉強法自作OSを始める時に役立つ資料
♡ 74Linux, ハードウェア, xv6, 自作OS, 低レイヤ新人エンジニアのためのブックリスト
♡ 20本, 初心者, 技術書, 応用情報技術者試験, 新人エンジニアCで書いたOS、Rustで書き直したくなった Part5
♡ 17C, Rust, OS, 自作OS, アドベントカレンダー202530日目のはりぼてOSが動作するx86エミュレータを実装してみた。(感想)
♡ 15x86, OS, 30日でできる!OS自作入門, emulatorMikanOS に NIC ドライバを実装する - 準備編
♡ 13ドライバ, NIC, 自作OS, mikanos, ゼロからのOS自作入門自作OSでシャットダウン実装してみた
♡ 12Rust, 自作OS, シャットダウン, ACPI, AMLM1 Mac miniのUTM上で「ゼロからのOS自作入門」の環境を構築する
♡ 7OS, OS自作入門, mikanos, ゼロからのOS自作入門
言及 Zenn 記事 (12 件)
「ゼロからのOS自作入門」の副読本的記事
♡ 204linux, mac, osDocker ではじめる "ゼロからのOS自作入門"
♡ 195docker, mikanos, devcontainerゼロからのOS自作入門 メモ (Day1-1)
♡ 3linux, windows, wsl, os「ゼロからのOS自作入門」の リベンジ Part3 🍊
♡ 3自作os「ゼロからのOS自作入門」の リベンジ Part1🍊
♡ 3c言語, 自作os「ゼロからのOS自作入門」3日目にてKernelが起動しない原因をちゃんと理解する
♡ 2os「ゼロからのOS自作入門」の リベンジ Part4 🍊
♡ 2clang, 自作os, vtableゼロからのOS自作入門 4章 osbook_day04d
♡ 2ゼロからのos自作入門ゼロからのOS自作入門の個人的ハマりどころ
♡ 1os「ゼロからのOS自作入門」の リベンジ Part5 🍊
♡ 1自作os
この本に興味がある方におすすめ
この本に関連
関連記事
技術書の読む順番戦略 - 複数冊を組み合わせて理解を加速させる
技術書を 1 冊ずつ読むのではなく、複数冊を戦略的に組み合わせることで、1 冊では届かない理解の深さと広さに達する方法を解説します。
Linux 本ガイド - コマンドライン / しくみ / 性能の 3 層で選ぶ技術書
Linux を学ぶ技術書の選び方を 3 層 (コマンドラインの操作 → カーネルのしくみ → 性能と運用) で整理。新しい Linux の教科書や [試して理解] Linux のしくみなどの定番書の使い分けと、学ぶ順番を解説します。
JavaScript / TypeScript 本ガイド - 入門から型で守る実務コードまで
JavaScript と TypeScript を 1 本の学習ルートとして捉えた技術書の選び方。JavaScript の入門書、言語の背骨を通す体系書、TypeScript の型システムを設計の武器にする本、React/Next.js の実践書まで 2026 年 8 月時点の定番で案内します。