今日読んだものたち

プログラムはどう動くのか? 〜 ELFの黒魔術をかいまみる

shell 上でelfバイナリで保存されているプログラムが実行されるまで。ローダが /etc/ld-xxx.so という形で共有ライブラリになっていたのがとても驚き&知ることができてうれしかった点。何度か読んで、暗記してしまってもよいな。この実行フローは覚えておいて損がない。


Using as (Gnu Assembler のマニュアル)の1-4章まで。

.org命令の仕様を読みたかっただけなのだけれど、せっかくなので頭から読んでみた。結構おもろい。nask の .org は、アセンブラ(assembler)にロード先を教えてあげるためのものらしいんだけれど、asだとロケーションカウンタを進めるためのもので、意味が違うようだ。となると、自作OS本をGASで行う場合、IPLの.org命令を使っている部分はどうすれば良いのだろう。もうちょいじっくり考えてみる。


elfまとめサイト
elfフォーマットに関するリンク集。Grubってelfバイナリをサポートしていたのか(@w@;
それでBitvisorもelfでコンパイルをしていた、と。なるほど。


GASリンク集
これは素敵なリンク集。


全然関係ないが、 Output は Outputz みたいなソフトで入力時にフックすればカウントできるけど、 Input はカウントするのが難しいよなぁ。いや、Javascriptにブラウザへの読み込み量をカウントさせるという意味では Outputz と同程度の難しさなんだろうけれど、その質をちゃんとブラウザに理解させるのが難しそう。ページ開いただけでは読んだとはとても言えないし、流し読みと精読だとそもそも目的が違う訳で、そこら辺の判断を自動的にさせるのはなかなか難しいだろうなぁ。