2017-09-27 34 views
0

我正在研究elf阅读器,我无法理解elf doc中“sh_addralign”的用途。它表示如下如何使用sh_addralign?

某些部分有地址对齐限制。例如,对于 示例,如果某部分保存双字,则系统必须确保整个部分的双字对齐为 。也就是说, sh_addr的值必须与0相等,以sh_addralign的值为模。 目前,只允许两个0和正整数幂。 值0和1表示该部分没有对齐限制。 “

可有人请一些calcualation解释我?而且为什么它是重要的?

+1

如果你不了解校准的有用性(一般),那么可能首先在那里开始你的研究?那么它在ELF文件中的使用应该变得非常明显。 –

回答

0

我的小精灵读者工作,我无法理解的目的‘sh_addralign’

对于ELF 读者sh_addralign也是没有用处的。

它唯一的目的就是告诉链接(其写入 ELF)它必须安排段内容在内存中正确对齐。

+0

我想操纵.plt.got的reloc内容。这部分有sh_addralign = 3和sh_entsize = 0,所以我想了解sh_addralign如何工作来检测节内容数据..谢谢你的回复。 – vigneshbalu