2

私は読んでいます:レバイン、リンカー、ローダー。95ページで、彼は次のように述べています。

Module-A 0->600H
Module-B 0->400H
Module-C 0->500H

単一セグメントのストレージ割り当てでは、これは次のようになります。

0-600 601-A01 A02-F03

? 彼はそれが0-F00からだと言いますか??? 基本的に、彼はすべてのモジュールを連結しているだけなので..

誰か適切な本を提案してもらえないだろうかと思っていました。リンカ シンボル テーブル、ローダー、リンカー、GOT/PLT、および言語がこれらすべてにどのように適合するかを理解しようとしています..正確に言うと..関数と変数/Cファイルがたくさんある場合、それらはどうですか.objに保存されている.objファイルには何が含まれていますか(セクション、セグメント)、これはELFとどのように適合し、ELFはページメモリとどのように適合します.. Levineは理解しにくく、非常に冗長です..彼は Pentium/SPARC/IBM/Motorola プロセッサに関するものを持っていますが、それはすべて少し時代遅れで古く、信じられないほど苛立たしいものに思えます..さまざまなウィキペディアのエントリを調べたり、グーグルで検索したりしましたが、それはさらに悪いことです! これまでのところ、私が見つけたまともな「本」は Intel Software Developers Manual Vol 3 だけです。

私は Linux、gcc、g++ を使用しているので.. objdump/nm を実行するときにこれらすべての不思議なことが何を意味するのかを明確に理解したいだけです 現代のレバイン、間違いのないものはいいでしょう..それがあれば最高ですMicrosoft PE フォーマットもカバーしています。

Intel SysV ABI を試してみましたが、これは優れていましたが、初心者には適していません。

4

1 に答える 1

1

間違いのない現代のレヴィーンがいい

Ian Lance Taylor は最近、ELF 専用リンカを実装し、一連のブログ投稿で説明しました。それらは間違いなく Levine よりも焦点が絞られており、冗長ではありません。

于 2012-07-15T06:35:35.210 に答える