BFD库

阅读数:216 评论数:0

跳转到新版页面

分类

Linux

正文

一、概述 

   BFD(Binary File Descriptor library)。BFD库是一个GNU项目,它的目标是希望通过一个统一的接口来处理不同的目标文件BFD项目本身是binutils项目的一个子项目。BFD把目标文件抽象成一个统一模型,比如在这个抽象模型中,最开始有一个描述整个目标文件总体信息的“文件头”,就跟我们实际的ELF文件一样,文件头后面是一系列的一段,每个段都有名字、属性和段的内容,同时还抽象了符号表、定位表、字符串表等类似的概念,使得BFD库的程序只要通过这个抽象的目标文件模型就可以实现操作所有BFD支持目标文件格式。

    gcc(更具体是GAS, GNU Assembler)、连接器ld、调试器GDB及binutils的其他工具都通过BFD库来处目标文件,而不是直接操作目标文件。这样做的最大好处就是将编译器和连接器同具体的文件格式隔离开来。

 




相关推荐

gcc gnu collect compiler,是一组编译工具的总称,它主要完成的工作任务是“预处理”和“编译”,以及提供了与

一、概述 GDB(GNU Debugger)是一个强大的Unix/Linux下的程序调试工具。它允许你对程序执行进行实时跟踪,检查发生在运行时的错误,如段错误、内存泄漏等。 二、GDB的基本使用 1、

一、基础知识     从源代码到程序的执行,一般要经历几个过程: 源代码编辑-》编译-》链接-》装载-》执行   二、两种处理器架构 1、冯诺依曼结构     是指程序和数据存储空间并不分开,而是在一

    GNU Binutils,是GNU Binary Utilities的简写,BinUtils中比较重要的工具是ld和as。 1、ld

gcc编译一个.c文件 (1)第一步,预处理 gcc -E hello.c -o hello.i 或者

先安装gcc gcc-c++ yum install gcc -y yum install gcc-c++ -y</

一、通用参数 CONNECT_TIMEOUT_MILLIS 连接超时毫秒数,默认值30000ms,即30s. MAX_MESSAGES_PER_READ 一次Loop读取的最大消息数,对于S

一、概述 自从Linux内核代码迁移到Git以来,Linux内核配置/构建系统(也称为Kconfig / kbuild)已存在很长时间了。 二、Kconfig (Kernel config) menu

一、概述 makefile文件包含一些规则,告诉make工具编译哪些文件以及怎样编译这些文件。 配置文件.config 是在进行内核配置后生成的中间产物。 是通过make menuconfi

这个宏定义,可以在内核源码的script目录查看Makefile.lib文件。 # These flags are