Magnolia Tech

いつもコードのことばかり考えている人のために。

『Linuxのしくみ』は、アプリケーションの向こう側を知るために読むべき

2022年も良い技術書がたくさん出版されましたが、その中でも『Linuxのしくみ』はぜひ手元に置いておきたい1冊ですね。

特に、主にアプリケーションレイヤーを主戦場としている人たちにとって、OSは各種ミドルウェアと比較すると「よく分からないもの」という存在になりがちです。しかし、OSがなければアプリケーションも動かないわけで、基本的な知識としてこの本に書かれているようなレベルのことを押さえておくと性能が出ない時に無闇に資源を増やす前に考えるべきことの気づきが得られます(無闇に資源を増やす、という選択肢が取れる時代になったのは、それはそれで良いことですが)

特に、前半のプロセス周りは、「sar」「taskset」など自分も今までちゃんと使ったことがないコマンドがどんどん出てきて、非常に学びがありました。

やっぱり「推測するな、計測せよ」ですね(これも本書に出てきます)!

HWで直接実行されているOS上のアプリケーションでも、仮想マシン上のアプリケーションでも、コンテナ上のアプリケーションでも、メモリ上に乗ったコードがCPUで実行されている、という面ではなにも変わらないので、少なくとも1章〜5章、10章〜12章くらいはざっと目を通しておくと良いでしょう。

とにかく買いに行きましょう、読みましょう、書かれているコードを動かしてみましょう、カーネルの気持ちになってみましょう、という1冊です。


ちなみにKindle版でもいいのですが、この手の技術的にかなり突っ込んだ内容の本がフルカラーで出版されるのは珍しいのでぜひ紙の本で買っておくと、ふとした時に読み返しやすくて良いと思いました。