先日、sambaのソースコードを読んだ話をブログに書いた。
その時に、傍に置いて参照したのが『Advanced Programming in the UNIX Environment』、邦題『詳解UNIXプログラミング 第3版』。
手元には10年前に買った原著しかなく、和訳の紙版を買おうとしたら、いつの間にかどこにも売られていなくなってしまっていた......電子書籍版は今でも入手できるけど、この手の定番書籍は紙で持っておきたいんだよなぁ。
内容は、Linux、macos、FreeBSD、Solarisなどのシステムコールや、POSIX仕様と照らし合わせながら各OSの差異などがB5・896ページに渡って解説された凄まじい1冊。
とりあえずプロセス、ファイル入出力、ネットワークなど、POSIX準拠なOSの挙動を理解するために必要な情報がギッシリ入っています。
少々値は張りますが、一家に一冊有ってほしい内容です。
原著が出たのがもう10年前で、そろそろ新しい版が出るといいな。
目次
- 1 UNIX システムの概要
- 1.1 はじめに
- 1.2 UNIX のアーキテクチャ
- 1.3 ログイン
- 1.4 ファイルとディレクトリ
- 1.5 入出力
- 1.6 プログラムとプロセス
- 1.7 エラー処理
- 1.8 ユーザの識別
- 1.9 シグナル
- 1.10 時間
- 1.11 システムコールとライブラリ関数群
- 1.12 まとめ
- 2 UNIX の規格と実装
- 3 ファイル入出力
- 4 ファイルとディレクトリ
- 5 標準入出力ライブラリ
- 6 システムデータファイルと情報
- 7 プロセスの環境
- 8 プロセスの制御
- 9 プロセスの関係
- 10 シグナル
- 11 スレッド
- 12 スレッドの制御
- 13 デーモン
- 14 高度な入出力
- 15 プロセス間通信
- 16 ネットワークIPC: ソケット
- 17 高度なプロセス間通信
- 18 端末入出力
- 19 擬似端末
- 20 データベースライブラリ
- 21 ネットワークプリンタとの通信
ちなみに、最近出た『Linuxのしくみ』を経て、その先の詳細にいろいろなことを知りたい時にもいいですね(分厚いけど…)