什么是_GLOBAL_OFFSET_TABLE?

23

在Linux中使用nm命令查看程序中的符号表,我看到一个名为_GLOBAL_OFFSET_TABLE_的符号,如下所示。有人可以解释一下_GLOBAL_OFFSET_TABLE_是用来做什么的吗?

0000000000614018 d _GLOBAL_OFFSET_TABLE_

从一个仅包含链接的答案中:https://www.bottomupcs.com/ch09s03.html有一章关于全局偏移表及其用途/如何使用它(附带IA-64 Itanium示例,哈哈)。 - Peter Cordes
1个回答

21

_GLOBAL_OFFSET_TABLE_ 用于定位 PIC(位置无关代码) 的全局变量(函数、变量等)的实际地址,它通常被称为GOT,在此处可以阅读有关它的信息here ,以及一个更加深入的详细介绍here


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接