2

假设有多个共享库链接到一个可执行文件。假设 libaaa.so 引用了一个全局变量aaa,而 libbbb.so 引用了一个全局变量bbb

我的理解是代码通过 GOT 使用偏移量间接访问这些变量。我无法理解 libaaa.so 中的偏移量aaa和 libbbb.so 中的偏移量如何bbb设法避免相互冲突。

共享库的代码是如何生成的,以使所有库中的所有引用都以 GOT 中的不同偏移量结束?

我确定我错过了一些愚蠢的东西。

4

0 回答 0