【程序员的自我修养】目标文件里有什么--第三章学习笔记

本文介绍了目标文件的不同格式,包括可执行文件、可重定位文件和共享目标文件等,并详细解释了每种文件类型的用途和应用场景。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

3.1 目标文件的格式

windows
linux
COFF
ELF
PE-COFF
  • 目标文件就是编译后生成的.o文件,它的格式和可执行文件的格式是非常相似的。
  • 不光可执行文件按照可执行文件的格式存储,动态链接库静态链接库也是按照可执行文件的格式存储的。
  • ELF文件可以划分为以下几种格式:
ELF文件类型说明实例
可执行文件即可以直接运行的文件linux的可执行文件,windows的exe文件
可重定位文件这类文件包含了代码和数据,可以被用来链接成可执行文件或共享目标文件linux的.o文件,windows的.obj文件
共享目标文件这类文件可在以下两种情况下使用:1、链接器将其和其他可重定位文件或共享目标文件链接,生成可执行文件或者共享目标文件。2、动态链接器可以将几个这种共享目标文件结合,形成进程映像的一部分来运行。linux的.so 文件,windows的.dll文件
核心转储文件进程意外终止时,存储进程信息的文件linux的core dump
  • 可以在linux下使用file命令查看文件格式。
%file /bin/bash 
/bin/bash: Mach-O 64-bit executable x86_64
# file /lib32/ld-2.27.so 
/lib32/ld-2.27.so: ELF 32-bit LSB shared object, Intel 80386, version 1 (SYSV), dynamically linked, BuildID[sha1]=2a8a8730694acd1dcc1bfd2c97af7e6c1650236d, stripped
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Mr成文

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值