第三章 编译器基础知识之ELF文件格式简介

因为接下来要介绍llvm相关知识,作为一个通用编译器,除了要了解编译原理、汇编等专业知识之外,还需要了解像PE文件结构,ELF文件结构等。上述知识我会在后续的章节之中简单介绍,同时在文章最后给大家分享一些相关书籍。

本章我主要介绍ELF文件格式的相关知识,不过本文不是要将所有知识全部讲清楚,更多的一些学习方法和心得,以帮助那些对编译、操作系统等知识感兴趣的同学学习。

一 什么是ELF文件

ELF文件是一种二进制文件,类似于windows下的exe文件,是unix系统家族中的可执行文件,符合ELF文件结构的文件,可以被操作系统中的程序加载器根据文件格式加载。包括用于执行的二进制代码、数据的存储。

可以说ELF文件是UNIX操作系统家族中的应用程序的接口文件,只要符合接口格式,就可以被操作系统加载。

二 ELF文件格式

前面有提到,编译(链接)就是生成ELF文件格式,ELF文件格式被操作系统加载,在ELF文件格式的标准定义中,为了更好理解LEF文件格式,在程序链接和程序执行的过程中,ELF文件格式被分为两种不同的定义。

第三章 编译器基础知识之ELF文件格式简介

ELF文件格式

ELF文件头在ELF文件最开始的位置,是对后续文件信息的描述;程序头列表是用于构建进程映像的相关信息;程序节(section)是程序的代码、数据、重定位信息、符号信息等;程序节头列表则是对程序节的描述信息。这些信

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值