商品説明
内容紹介
(概要)
ITシステムやソフトウェアの基盤OSとして幅広く使われているLinux。エンジニアとしてLinuxに関する知識はいまや必須とも言えますが、あなたはそのしくみや動作を具体的にイメージすることができるでしょうか。
本書では、Linux OS における、プロセス管理、プロセススケジューラ、メモリ管理、記憶階層、ファイルシステム、記憶階層、そして仮想化機能、コンテナなど、OS とハードウェアに関するしくみがどのように動くのか、実験とその結果を示す豊富なグラフや図解を用いてわかりやすく解説します。
改訂に際しては全面フルカラー化。グラフや図解がさらにわかりやすくなり、ソースコードはC言語から、Go言語とPythonにアップデートしています。さらに仮想化、コンテナなどの章が加わりました。今どきのLinuxのしくみを本書でしっかり理解しておきましょう。
(こんな方におすすめ)
・Linuxの動作や仕組みに興味があるエンジニア
・OSや仮想マシン、コンテナのしくみを手軽に学びたいと考えているエンジニア
(目次)
序章 はじめに
第1章 Linuxの概要
プログラムとプロセス
カーネル
システムコール
ライブラリ
第2章 プロセス管理(基礎編)
プロセスの生成
プロセスの親子関係
プロセスの状態
プロセスの終了
ゾンビプロセスと孤児プロセス
シグナル
シェルのジョブ管理の実現
デーモン
第3章 プロセススケジューラ
前提知識:経過時間と使用時間
1つの論理CPUだけを使う場合
複数の論理CPUを使う場合
realよりもuser+sysが大きくなるケース
タイムスライス
コンテキストスイッチ
性能について
プログラムの並列実行の重要性
第4章 メモリ管理システム
メモリ関連情報の取得
メモリの回収処理
仮想記憶
プロセスへの新規メモリの割り当て
ページテーブルの階層化
第5章 プロセス管理(応用編)
プロセス作成処理の高速化
プロセス間通信
排他制御
排他制御の堂々巡り
マルチプロセスとマルチスレッド
第6章 デバイスアクセス
デバイスファイル
デバイスドライバ
デバイスファイル名は変わりうる
第7章 ファイルシステム
ファイルへのアクセス方法
メモリマップトファイル
一般的なファイルシステム
容量制限(クォータ)
ファイルシステムの整合性保持
Btrfsが提供するファイルシステムの高度な機能
データ破壊の検知/修復
その他のファイルシステム
第8章 記憶階層
キャッシュメモリ
Simultaneous Multi Threading(SMT)
ページキャッシュ
バッファキャッシュ
書き込みのタイミング
direct I/O
スワップ
統計情報
第9章 ブロック層
HDDの特徴
ブロック層の基本機能
ブロックデバイスの性能指標と測定方法
ブロック層がHDDの性能に与える影響
ブロック層がNVMe SSDの性能に与える影響
第10章 仮想化機能
仮想化機能とは何か
仮想化ソフトウェア
本章で使う仮想化ソフトウェア
仮想化を支援するCPUの機能
仮想マシンは、ホストOSからどう見えているか?
仮想化環境のプロセススケジューリング
仮想マシンとメモリ管理
仮想マシンとストレージデバイス
virtio-blkの仕組み
第11章 コンテナ
仮想マシンとの違い
コンテナの種類
namespace
セキュリティリスク
第12章 cgroup
cgroupが制御できるリソース
使用例:CPU使用時間の制御
応用例
終章 本書で学んだことと今後への生かし方
商品レビュー(12件)
- 総合評価
4.55
楽天Koboのレビュー
まだレビューがありません。 レビューを書く
楽天ブックスランキング情報
-
週間ランキング
ランキング情報がありません。
-
日別ランキング
ランキング情報がありません。