Loadersカーネル輪講に参加した後、IS4年生と一緒にアキバへ。今回は決して怪しい目的ではなく、書籍を購入するためである。Loadersを購入。様々なオブジェクトコードおよび実行可能ファイルのフォーマットや、リンカとローダの動作について解説した本である。本書の冒頭に書かれているとおり、リンカってそれなりに複雑な仕事してるはずなのに、コンパイラに比べると全く取り上げられていない。CPU実験では実に単純なモデルを仮定していたのでリンクはそもそもなかったし、ロードもアドレス0に持ってくればいいだけだったしな。一応気分的にはtextセクションとdataセクションにあたる部分を分けた感じだが、明示的にセクションに分かれていたわけではなかったし、そもももアドレス決定はコンパイラではなくアセンブラの仕事だったから俺の仕事ではなかったわけだ。ところで、リンカはオブジェクトコード中のバイナリコードを解釈してアドレスにあたる数値の部分を書き換える、と書いてあったけが、そうするとリンカは対象アーキテクチャのオペコードを全て知っていないといけないということ?となると何のために一旦オブジェクトコードにアセンブルするのかわからんな。アセンブリコードの集合を最後にアセンブルしつつ同時にリンクを行う方が効率がよい気がしたが、何か別の理由があるのだろうか。2371-GDJを購入。価格はさらに下がって137,800円だった。