OSにおいて、カーネルとはその名のとおり「核となるコンポーネント」であり、記憶領域やファイルシステムの管理、プロセス制御、スケジューリング、ネットワーキングなど、ハードウェア制御に関わる幅広い機能を担っています。
Webやエンタープライズ、組み込みに至るまで、世界中のあらゆるところで、Linuxを基本OSとするシステムが稼働しています。Linuxはオープンソースソフトウェアであり、誰でも広くアクセスできることがその発展を支える特徴の1つといえるでしょう。しかし、その土台となるカーネルに限ってみても、ソースコードを読み込んで理解するにはあまりにも大規模かつ複雑な存在です。そのため、Linuxカーネルの役割や仕組みを理解している人が少ないのもまた事実なのです。
ソフトウェアの開発・利用において、カーネルのような根幹部分について理解せずにすむのがOSの役割ではあるものの、エンジニアとしてはこうしたシステムの根本的な仕組みを知り、具体的にイメージできることが大きな強みになります。本書では、長くLinuxカーネルを扱ってきた著者陣が、スケジューリングやメモリ管理など古典的なOS機能はもちろん、VMやコンテナ、セキュリティ機能など、より新しい内容も幅広く、多くのイラストを交えて解説します。これまで専門的な知識がなければなかなかアプローチできなかったLinuxカーネルの構造や仕組み、働きについて、さまざまな視点から解説する1冊といえるでしょう。
◆◆◆◆目次◆◆◆◆
第1章 Linuxカーネルの基本
第2章 プロセススケジューラ
第3章 メモリ管理
第4章 ファイルシステム
第5章 ブロックI/O
第6章 デバイスマッパ
第7章 LVM
第8章 ネットワーク
第9章 セキュリティ
第10章 ハイパーバイザと仮想化
第11章 コンテナ型仮想化
第12章 トラブルシューティング/デバッグ概要
第1章 Linuxカーネルの基本
第2章 プロセススケジューラ
第3章 メモリ管理
第4章 ファイルシステム
第5章 ブロックI/O
第6章 デバイスマッパ
第7章 LVM
第8章 ネットワーク
第9章 セキュリティ
第10章 ハイパーバイザと仮想化
第11章 コンテナ型仮想化
第12章 トラブルシューティング/デバッグ概要