elf section类型_卓一笔记ELF文件结构介绍

本文介绍了ELF文件的结构,包括ELF Header、Program Header和Section Header。ELF作为一种二进制文件格式,广泛应用于Unix和Linux系统。ELF Header提供文件基本信息,Section Header描述了一系列Section,而Program Header则为加载器提供运行时信息。文章详细阐述了各个部分的组成和作用。
摘要由CSDN通过智能技术生成

87d3f7c5a1967f3c6632cccbdd905553.png

   上图是ELF文件大致的结构。在计算机科学中,ELF是一种用于二进制文件、可执行文件、目标代码、共享库和核心转储格式的文件。是UNIX系统实验室(USL)作为应用程序二进制接口(Application Binary Interface,ABI)开发和发布的,也是Linux的主要可执行文件格式。1999年,被86open项目选为x86架构上的类Unix操作系统的二进制文件标准格式,用来取代COFF。因其可扩展性与灵活性,也可应用在其它处理器、计算机系统架构的操作系统上。

       如下图,ELF文件由4部分组成,分别是ELF头(ELF header)、程序头表(Program header table)、节(Section)和节头表(Section header table)。实际上,一个文件中不一定包含全部内容,而且它们的位置也未必如同所示这样安排,只有ELF头的位置是固定的,其余各部分的位置、大小等信息由ELF头中的各项值来决定。

adc7333396b15fecdbf2d86d6235e89c.png

e89a0f1039a8df3412a2711bceb287b1.png

  ELF文件格式提供了两种不同的视角,在汇编器和链接器看来,ELF文件是由Section Header Table描述的一系列Section的集合,而执行一个ELF文件时,在加载器(Loader)看来它是由Program Header Table描述的一系列Segment的集合。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值