1

所以,我有这个想法,我四处寻找它是否属实,但还没有找到任何东西来证实它。
我正在开发一个精灵解析器,我想从这些部分构建程序的数据。
我的想法是数据段由 .data、.data1、.bss、.ctors 和 .dtors(用于 c++ 程序的 .ctors 和 .dtors)部分中的信息组成;那是对的吗?
请提供文档链接

4

1 回答 1

1

将段加载到内存时,必须查看程序头表,而不是段头表。程序头是加载器的输入,而节头用于调试信息。

例如,.data.bss可以集中到同一个程序头中,也可以分散在两个程序头中。将分配一或两段内存。拥有一个代码段和一个内存段只是强制性的。这取决于二进制文件的链接方式。

于 2012-06-13T13:43:04.787 回答