ZHCADC4A September 2011 – March 2014
ABI 通过若干相关机制解决这些问题:
通用 ELF 动态链接 机制定义目标文件表示,以支持加载时符号解析和重定位。其中大部分与目标无关,由 GABI 指定。节 14.3说明了特定于目标的方面。
过程链接表 (PLT) 条目 是链接器生成的存根,用于解析对导入函数的调用。
全局偏移表 (GOT) 是引用导入对象的寻址方法,它支持位置无关性和私有性,将地址常量置于数据段的表中,而不是将其编码到代码中。这些好处的代价是,基于 GOT 的引用需要额外的间接寻址,表也需要额外的数据空间。
数据段基表 (DSBT) 模型 是一种软件约定,允许每个组件拥有自己的专用数据段,因此可以静态解析对其自身数据的引用,而无需考虑其他组件。DSBT 机制无需虚拟存储器即可实现与位置无关的代码,从而使共享代码的单个实例能够寻址动态绑定私有数据的多个副本。