2011-04-21 15 views

回答

1

你不要引用ELF規範的部分,當我搜索我沒有找到「BSS」明確指出,所以我就會開出BSS的Wikipedia項:

在計算機編程,名稱的.bss 或BSS被許多編譯器和 接頭包含僅表示靜態分配 變量的數據段 的一部分通過 零值比特開始(即,當 開始執行)。它通常被稱爲「bss部分」或 「bss部分」,被稱爲 。

答案很簡單:如果您知道所有值都將初始化爲零,則不需要在可執行文件中明確指定這些值。

+0

好的。我做了一個分析,並找到使用readelf文件大小爲130字節和標題大小爲134字節。 4個字節的差異似乎與進入BSS的變量匹配。看起來,標題大小和文件大小的差異等於BSS大小(應該是BSS一部分的變量)。那麼,這是否意味着BSS的內容不是文件的一部分,而是頭的一部分?請澄清。 – 2011-04-22 08:16:19

+0

@ S.Man - 它可能有助於將頭文件視爲對可執行文件在內存中的外觀的描述,並將文件的其餘部分作爲內容進行相應存儲。除此之外,我很抱歉,但你的問題沒有多大意義。 – Anon 2011-04-22 10:57:57

相關問題