書店員向け情報 HELP
動かしながらゼロから学ぶ Linuxカーネルの教科書
- 書店発売日
- 2020年9月11日
- 登録日
- 2020年9月9日
- 最終更新日
- 2020年9月12日
紹介
Linuxの心臓部であるカーネルの動作を
実験用プログラムで自ら試し、体感することで
仕組みを基礎から理解できる入門書の決定版
サーバーOSとしてデファクトのLinux。
その中核となるカーネルの仕組みを分かりやすく丁寧に解説します。
OSとしてのLinuxがどのように動いているのかが分かります。
1章と2章ではカーネルの全体像をつかめるよう
基礎となる部分を大きくページを割いて紹介。
3章ではLinuxカーネルのソースコードから
実際に動く状態に組み立てる「ビルド」と呼ばれる操作を、
手順を追って紹介します。
4章以降では、3章までに学んだ知識や手法に基づき、
Linuxカーネルの仕組みを章ごとに解説していきます。
機能解説の章には、実験用のプログラムを用意し、
それを実際に動かすことで理解を深められるよう工夫しました。
第1章 Linuxカーネルの基礎
第2章 Linuxカーネルのモジュール管理
第3章 Linuxカーネルのビルド方法
第4章 タスクスケジューラの仕組み
第5章 仮想メモリーを実現する仕組み
第6章 コンテキストスイッチの仕組み
第7章 物理メモリー管理の仕組み
第8章 ファイルシステムの仕組み
目次
動かしながらゼロから学ぶ Linuxカーネルの教科書
第1章 Linuxカーネルの基礎
1-1 Linux カーネルとは何か
1-2 Linux カーネルを学習する意義
1-3 カーネルはイベント駆動型
1-4 タスク管理の仕組み
1-5 メモリー管理の仕組み
1-6 デバイス管理の仕組み
1-7 ファイルシステムの概要
1-8 ネットワーク機能の概要
1-9 カーネルの読み込みから稼働まで
第2章 Linuxカーネルのモジュール管理
2-1 モジュールとは何か
2-2 モジュールファイルの格納先
2-3 コマンドでモジュールを管理する
2-4 モジュールへのオプション指定
2-5 別名を利用した自動組み込み
2-6 デバイスとモジュールの関連付け
第3章 Linuxカーネルのビルド方法
3-1 Linux カーネルをビルドする利点
3-2 ビルドに必要なソフトウエアを導入
3-3 ソースアーカイブの入手と展開
3-4 ソースツリー解説
3-5 カーネルのビルド設定
3-6 カーネルのビルドとインストールの手順
3-7 パッケージをビルドしてそれを使ってカーネルをインストールする方法
第4章 タスクスケジューラの仕組み
4-1 タスクスケジューラとは何か
4-2 Linux カーネルのタスクスケジューラの変遷
4-3 CFS(Completely Fair Scheduler)
4-4 スケジューリングクラスと複数のタスクスケジューラ
第5章 仮想メモリーを実現する仕組み
5-1 64 ビットのx86 プロセッサのメモリーアドレス
5-2 Linux におけるプロセスのメモリーマップ
5-3 ページテーブルをたどって物理アドレスを算出
第6章 コンテキストスイッチの仕組み
6-1 コンテキストスイッチとは何か
6-2 Linux カーネルのコンテキストスイッチ処理
6-3 コンテキストスイッチ処理でのレジスタ値の変化を確認
6-4 カーネルモードとユーザーモード
6-5 PTI(Page Table Isolation)
第7章 物理メモリー管理の仕組み
7-1 物理メモリー管理の必要性
7-2 断片化(フラグメンテーション)を極力避ける
7-3 バディーシステムの仕組み
7-4 三つのスラブアロケーターの仕組みの違い
第8章 ファイルシステムの仕組み
8-1 Linux におけるファイルの構造
8-2 ファイルの種類
8-3 VFS が処理を共通化する仕組み
8-4 ext4 が安全性を保つ仕組み
8-5 Btrfs が安全性を保つ仕組み
上記内容は本書刊行時のものです。