我有几个问题:
- 为什么
a.out
被ELF
替代了? a.out
格式的主要缺陷是什么导致了ELF
文件格式的崛起?- 早期的核心转储基于
a.out
,但现在它们基于ELF
。ELF
提供了哪些各种优势?
我有几个问题:
a.out
被ELF
替代了?a.out
格式的主要缺陷是什么导致了ELF
文件格式的崛起?a.out
,但现在它们基于ELF
。ELF
提供了哪些各种优势?据我回忆,a.out格式最初的一个问题是它只支持三个部分:文本、数据和bss。ELF允许任意数量(或至少更多)。a.out头文件格式非常简单,类似于:
word <magic>
word <text size>
word <data size>
word <bss size>
相比之下,ELF格式具有带有名称、大小等的节头。
拥有更多的节允许我们使用标准节,但也可以为我们提供常量节、构造器节,甚至每个函数一个节,如果我们需要的话。
a.out
,但格式仍为ELF。 - hlovdal