4

Windows DLL は位置に依存しないコードを使用せず、代わりにリンク時に定義された優先ベース アドレスを持っていることは、(主にWikipedia の Portable Executable 形式に関する記事から) 私の理解です。ただし、2 つのライブラリのベース アドレスが競合する場合は、一方を再配置テーブルを介して再配置する必要があります。

この PE 再配置は、ELF の GOT および PLT (各絶対アドレスが間接的に通過する必要がある .data セクション内のプロセス ローカル テーブル) に似ていますか、それとも動的再配置 (読み込み時にすべての絶対アドレスが変換される) に似ていますか? )? 後者の場合、これは x64 で問題がありますか?

4

1 に答える 1