Unix考古学 Truth of the Legend (藤田 昭人)
例の本。Unixの歴史と対立による停滞と…をなぞっていく。
読む人によってポイントが違うんだろうけど、mbufが出てきたところでぐっとこう、懐かしさがね。あったねmbuf。Linuxだとskbuffか。私はそのへんの世界はFreeBSDから入ったクチだけど、今はもうLinuxとMac以外に触ることは珍しい。もう基本ユーザランドだしね。Windowsにはほとんど触らないで生きてけるんだ。
以前に読んだPaul Allenの自伝を思い出したりもした。あとUSENIX FASTでKirk McKusickの受賞演説を聞いたことあるんだぜおれ、ということも思い出したり。いろいろあったんだな。
最近はもうマイクロな部分はどうでも良くなってるよね。大きい方はざっくり何台、ガーッと、みたいな話になっているし、小さいほうはVMとかコンテナで切り分けて、って感じで、1台1台に向き合うということはほとんどないんだよ。それもこれもTCPとLinuxがここまで広まって安定した計算機環境が手軽に使えるようになったおかげだが。あと自動デプロイが進歩してきたというのも大きい。
で、私が好きなのは元のUnixではなくて、GNUなんだよね。シンプル一辺倒ではなくて、シンプルと富豪的なものがうまい感じに同居してるっていうか。そのへんのセンスが自分に合っていたわけだ。最近で言うとsystemdだ。あれは確かに最初はどうかと思ったものだけど、飼いならされてもう「これはこれでよく出来てると認めざるをえないよね」と思っている。前時代的なinitスクリプトはゴミ箱に捨てたい気持ちが長らくあって、まあ僕はUpstartをだいぶ気に入っていた時期もあったんだが、UpstartはUpstartでうまく書けない設定がいくつもあって、それをsystemdはスッキリかけたりするんだよ。Upstartなんて最初の頃はuid/gidの設定もできなかったんで、sudoだのsuだのを起動コマンドの中に書いてたんだから(今はできますよ当然ですが)。systemdはちゃんとプロセス追跡できるし、ulimitだのrestart on failureだの、pacemakerのresourceに設定するのも簡単だし。ただtimerだの何だのって何でも詰め込むのはどうかとは思うけどね。cronはcronでいいじゃねーか。