链接:使虚拟地址对应于文件偏移量

时间:2013-03-09 14:03:13

标签: c windows assembly linker exe

我的系统正常工作时出现小问题,所以我决定询问是否可以制作与文件偏移相对应的虚拟地址。因此,如果我的.text部分的虚拟地址是0x1000,我希望链接器填充“填充”空间以使用零来定位。有可能吗?

1 个答案:

答案 0 :(得分:3)

你提到你的系统,所以我认为它与爱好操作系统开发有关,而且你知道你想要做什么以及为什么。

如果图像是PE文件,则可以使文件对齐等于部分对齐。在GNU ld中,您可以通过传递--file-alignment 4096(因为默认的部分对齐为4096并且根据PE规范,不能少于链接器)来实现。

如果您不关心制作有效的PE,--section-alignment 512(Microsoft链接器的/ALIGN:512)也可以正常工作。