5

我写了一个非常基本的Hello World程序来了解部分。使用后,objdump我得到了所有部分。我正在使用ubuntu 12.04.

在输出中我发现它是这样的:

  1. .init 节的反汇编

  2. 段 .plt 的拆卸

  3. 部分.text的反汇编

  4. __do_global_dtors_aux

  5. 段.fini的反汇编

我想知道这些部分是什么?他们存储什么数据?特别是.plt.fini。关于.init.text我可以猜到,但其他人呢?

4

3 回答 3

5

你应该谷歌它:这是第一个结果。这是了解更多有关 ELF 格式的良好开端。

关于.initand .fini它就在这里

以下是带有简要说明的 ELF 部分列表。

于 2013-07-04T09:41:48.367 回答
1

从这个方便的页面

我要提到的下一部分是 .plt 部分。这包含我们调用共享库中的函数时使用的跳转表。

从这个页面

.fini

本节包含有助于进程终止代码的可执行指令。即当程序正常退出时,系统会安排执行本节中的代码。

于 2013-07-04T09:43:17.530 回答
0

您可能会发现这个简短的教程很有帮助。它还包含相关文献的链接。

“揭秘链接器,第 1 部分”:http ://www.rtos.be/?p=2166

我希望它有所帮助。

费尔南多

于 2013-07-04T16:12:31.783 回答