2013-07-04 68 views
5

我寫了一個非常基本的Hello World程序來了解部分。使用objdump後,我得到了所有部分。我正在使用ubuntu 12.04在c程序中拆卸部分

在輸出我發現它類似的:

部的
  1. 拆卸的.init

  2. 部.PLT

  3. 拆卸部分的拆卸的.text

  4. __do_global_dtors_aux

  5. 部分調用.fini

我想知道的那些部分是拆卸?他們存儲什麼數據?特別是.plt.fini。關於.init.text我可以猜到,但其他人呢?

+0

我知道你們是怎麼編譯該文件 –

+0

第一'的gcc -o objectfile programname.c' 然後'objdump的objectfile'。 – someone

回答

0

From this handy page

下一節我想提的是.plt節。這包含我們在共享庫中調用函數時使用的跳轉表。

而且from this page

調用.fini

本節認爲有助於進程終止代碼可執行指令。也就是說,當程序正常退出時,系統會安排執行本節中的代碼。

0

你可能會發現這個簡短的教程很有幫助。它還包含相關文獻的鏈接。

「揭祕鏈接器,第1部分」:http://www.rtos.be/?p=2166

我希望它能幫助。

費爾南多