ELF文件格式定义

本文深入探讨了ELF文件格式,包括整体结构、元素类型定义、ELF Header和Section Header的详细内容,以及32位和64位的区别。重点介绍了Program Header在Linking file中的作用,以及如何通过ELF文件信息生成二进制文件。
摘要由CSDN通过智能技术生成

ELF文件格式有32位及64位的两种,本质上差别不是很大,主要关注ELF 32位的文件处理方式。

整体文件格式

ELF为Executable and Linking Format的缩写,为编译生成的目标文件,编译生成的目标文件有几种格式 relocatable file、executable file 和 shared Object file三种,linking file 及 Execution file的格式如下:

在图示的各个元素中,只有ELF header要求严格固定的位置,其他模块的位置可以变化。在ELF header中可以配置 Program header table及 Section header table的偏移位置,以及相应的个数和占用字节大小等等,目前主要关心Linking file的组成格式。

元素类型定义

由于不同的机器环境对数据表达的空间格式存在差异,ELF文件的数据格式大小做了如下规定:

E

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值