Loading AI tools
来自维基百科,自由的百科全书
可执行与可链接格式(英語:Executable and Linkable Format,缩写 ELF,此前的写法是Extensible Linking Format),常被称为ELF格式,在计算中,是一种用于可执行文件、目标代码、共享库和核心转储(core dump)的标准文件格式。首次发布于一个名为System V Release 4(SVR4)的Unix操作系统版本中关于应用二进制接口(ABI)的规范中,并且此后不久发布于工具接口标准(Tool Interface Standard)[1],随后很快被不同Unix发行商所接受。1999年,这种格式被86open项目选为x86架构处理器上的Unix和类 Unix系统的标准二进制文件格式。
按照设计,ELF格式灵活性高、可扩展,并且跨平台。比如它支持不同的字节序和地址范围,所以它不会不兼容某一特别的CPU或指令架构。这也使得ELF格式能够被运行于众多不同平台的各种操作系统所广泛采纳。
每个 ELF 文件都由一个 ELF 首部和紧跟其后的文件数据部分组成。数据部分可以包含:
内存段中包含了用于某个 ELF 文件运行时执行所需的信息,而片段中包含了用于链接和重定位的重要数据。整个文件中的任何一个字节至多只能属于一个片段,也就是说可能存在不属于任何片段的孤立字节。
00000000 7f 45 4c 46 02 01 01 00 00 00 00 00 00 00 00 00 |.ELF............|
00000010 02 00 3e 00 01 00 00 00 c5 48 40 00 00 00 00 00 |..>......H@.....|
Linux标准规范(LSB)增修了上述一些规格中所指定的架构中相关的部分。[21]例如关于System V ABI、AMD64 Supplement的案例。[22][23]
readelf
显示elf文件objdump
显示elf和object格式文件,解码elf文件中高级语言语句所对应的机器语言语句段落,汇编语言语句段落。nm
显示elf文件中变量名和地址Seamless Wikipedia browsing. On steroids.
Every time you click a link to Wikipedia, Wiktionary or Wikiquote in your browser's search results, it will show the modern Wikiwand interface.
Wikiwand extension is a five stars, simple, with minimum permission required to keep your browsing private, safe and transparent.