胸が躍る,とはこのことだろうか。先ごろ出版された「BINARY HACKS―ハッカー秘伝のテクニック100選」(高林哲,鵜飼文敏,佐藤祐介,浜地慎一郎,首藤一幸著,オライリー・ジャパン刊)を読んだ感想だ。この本は,多くのプログラマが通常さわることの少ない「バイナリ(=機械語,アセンブラ,コンパイラ)」など低レイヤー・プログラミングを“いじる”テクニック(バイナリ・ハック)を紹介する本だ。 バッファ・オーバーフローを検出する,スレッド・セーフなプログラムを書く,メモリー・リークを検出する,プログラムやシステムコールのトレース方法,プログラム起動の高速化や高速化のためのプロファイル取得方法,CとC++のプログラムをリンクする時の注意点といった実用上重要なテクニックが多数解説されている。しかし「glibcを使わないで Hello worldを書く」,「自己書き換えでプログラムの動作を変える」,「