为什么程序头可执行文件?
|
我在Linux机器上的几个二进制文件上使用了readelf,在程序头文件中看到了令我惊讶的东西。该示例来自\'ld \'实用程序,但是我使用gcc编译的任何示例也会发生此示例。
PHDR 0x000034 0x08048034 0x08048034 0x00120 0x00120 R E 0x4
该段跨越整个程序头。为什么被标记为可执行文件?它不包含机器代码。但是,为什么还要在标题中显示呢?我真的不想要它在我的程序映像中。
没有找到相关结果
已邀请:
2 个回复
捻盒愧杯
填盖
程序标头存在于此,因为它们描述了ELF可执行文件的可执行部分。 该程序的下一部分是 ELF程序标头。这些 描述程序的各个部分 包含可执行程序代码 映射到程序地址 加载时的空间。
这是从这里拿来的