ELF是什么?

 我来答
温屿17
2022-07-12 · TA获得超过1.2万个赞
知道小有建树答主
回答量:827
采纳率:0%
帮助的人:93.5万
展开全部
[kiosk@foundation0 Desktop]$ file /bin/passwd

/bin/passwd:

setuid ELF 64-bit LSB shared object, x86-64, version 1 (SYSV),

dynamically linked (uses shared libs), for GNU/Linux 2.6.32,

BuildID[sha1]=0x91a7160a019b7f5f754264d920e257522c5bce67, stripped

[kiosk@foundation0 Desktop]$

这里的 ELF是什么,我们可以参考一下网上的文档:

ELF, Executable and Linking Format, 是一种用于可执行文件、目标文件、共享库和核心转储的标准文件格式。 ELF格式是是UNIX系统实验室作为ABI(Application Binary Interface)而开发和发布的。

这里简单介绍一下相关历史:

- UNIX: 最初采用的格式为a.out,之后被System V中的COFF取代,最后则被SVR4中的ELF格式所取代。

- Windows: 采用的则是COFF格式的变种PE格式

- MAC OS X: 采用的是Mach-O格式

ELF有四种不同的类型:

1. 可重定位文件(Relocatable): 编译器和汇编器产生的.o文件,需要被Linker进一步处理

2. 可执行文件(Executable): Have all relocation done and all symbol resolved

except perhaps shared library symbols that must be resolved at run time

3. 共享对象文件(Shared Object): 即动态库文件(.so)

4. 核心转储文件(Core File):
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式