fbpx
维基百科

二进制文件描述库

BFD库二进制文件描述库)是GNU项目用于解决不同格式的目标文件的可移植性的主要机制。到2003年为止,它支持25种不同CPU体系结构上的大约50种文件格式

Binary File Descriptor library
原作者Cygnus Solutions
源代码库
  • sourceware.org/git/?p=binutils-gdb.git%3Ba%3Dtree%3Bf%3Dbfd
编程语言C语言
类型
许可协议GNU通用公共许可证

历史 编辑

最初,当Cygnus Solutions公司的David Henkel-Wallace提议开发这样一个库来为公司创造新的商业机遇时,Richard Stallman说这会是一件困难的事情;而David的回复是" it wasn't such a 'Big F*cking Deal'(没什么大不了的)"。这句话的英文缩写BFD便成为了这个库的名称[1],而“Binary File Descriptor(二进制文件描述)”则是在BFD缩写的基础上发明的。

设计 编辑

BFD通过对目标文件提供公共抽象视图来达成工作。一个目标文件有带有描述信息的一个“头”;可变数目的“段”,每个段都有一个名字、一些属性和一块数据;一个符号表;一组重定位入口项;诸如此类。

在内部,BFD将数据从抽象视图转换到目标处理器和文件格式所要求的位/字节布局的细节。它的关键服务包括处理字节序差异,比如在小端序主机和大端序目标之间,在32-bit64-bit数据之间的正确转换,和重定位入口项所指定的寻址算术的细节。

尽管BFD最初设计成为可以被各种工具使用的通用库,频繁需要修补API来容纳新系统的功能,倾向于限制了它的使用[2][3][4];BFD的主要使用者是GNU汇编器(GAS),GNU连接器(GLD),和其他GNU二进制实用程序("binutils")工具,和GNU调试器(GDB)。因此,BFD不单独发行,总是包括在binutils和GDB发行之中。不论如何,BFD是将GNU工具用于嵌入式系统开发的关键部件。

BFD库可以用来读取核心转储的结构化数据。

参考文献 编辑

  1. ^ Open Sources: Voices from the Open Source Revolution. O'Reilly. January 1999 [2011-11-11]. (原始内容于2014-08-27). Gumby began designing the library and discussing the design with Stallman. Stallman said that the job was too difficult—it would require a complete rewrite of all the tools, and it would be too difficult to maintain. Gumby told him it wasn't such a "Big F*cking Deal" and hence named this new creation the BFD library.(We explained to our customers that BFD stood for the binary file descriptor library.)  (页面存档备份,存于互联网档案馆
  2. ^ Langasek, Steve. . debian-devel (邮件列表). 2005-05-22 [2011-04-03]. (原始内容存档于2012-03-19) (英语). 
  3. ^ Kuratomi, Toshio. . Fedora-packaging (邮件列表). 2010-06-04 [2011-04-03]. (原始内容存档于2012-03-22) (英语). 
  4. ^ Taylor, Ian. . binutils (邮件列表). 2003-09-12 [2011-04-03]. (原始内容存档于2011-12-25) (英语). 

外部链接 编辑

  • Binutils page, with access to current BFD sources(页面存档备份,存于互联网档案馆

参见 编辑

二进制文件描述库, bfd库, 是gnu项目用于解决不同格式的目标文件的可移植性的主要机制, 到2003年为止, 它支持25种不同cpu体系结构上的大约50种文件格式, binary, file, descriptor, library原作者cygnus, solutions源代码库sourceware, binutils, 3dtree, 3dbfd编程语言c语言类型库许可协议gnu通用公共许可证, 目录, 历史, 设计, 参考文献, 外部链接, 参见历史, 编辑最初, 当cygnus, solutions公司的. BFD库 二进制文件描述库 是GNU项目用于解决不同格式的目标文件的可移植性的主要机制 到2003年为止 它支持25种不同CPU体系结构上的大约50种文件格式 Binary File Descriptor library原作者Cygnus Solutions源代码库sourceware wbr org wbr git wbr p binutils gdb wbr git 3Ba 3Dtree 3Bf 3Dbfd编程语言C语言类型库许可协议GNU通用公共许可证 目录 1 历史 2 设计 3 参考文献 4 外部链接 5 参见历史 编辑最初 当Cygnus Solutions公司的David Henkel Wallace提议开发这样一个库来为公司创造新的商业机遇时 Richard Stallman说这会是一件困难的事情 而David的回复是 it wasn t such a Big F cking Deal 没什么大不了的 这句话的英文缩写BFD便成为了这个库的名称 1 而 Binary File Descriptor 二进制文件描述 则是在BFD缩写的基础上发明的 设计 编辑BFD通过对目标文件提供公共抽象视图来达成工作 一个目标文件有带有描述信息的一个 头 可变数目的 段 每个段都有一个名字 一些属性和一块数据 一个符号表 一组重定位入口项 诸如此类 在内部 BFD将数据从抽象视图转换到目标处理器和文件格式所要求的位 字节布局的细节 它的关键服务包括处理字节序差异 比如在小端序主机和大端序目标之间 在32 bit和64 bit数据之间的正确转换 和重定位入口项所指定的寻址算术的细节 尽管BFD最初设计成为可以被各种工具使用的通用库 频繁需要修补API来容纳新系统的功能 倾向于限制了它的使用 2 3 4 BFD的主要使用者是GNU汇编器 GAS GNU连接器 GLD 和其他GNU二进制实用程序 binutils 工具 和GNU调试器 GDB 因此 BFD不单独发行 总是包括在binutils和GDB发行之中 不论如何 BFD是将GNU工具用于嵌入式系统开发的关键部件 BFD库可以用来读取核心转储的结构化数据 参考文献 编辑 Open Sources Voices from the Open Source Revolution O Reilly January 1999 2011 11 11 原始内容存档于2014 08 27 Gumby began designing the library and discussing the design with Stallman Stallman said that the job was too difficult it would require a complete rewrite of all the tools and it would be too difficult to maintain Gumby told him it wasn t such a Big F cking Deal and hence named this new creation the BFD library We explained to our customers that BFD stood for the binary file descriptor library 页面存档备份 存于互联网档案馆 Langasek Steve Re depending on shared libbfd from binutils dev debian devel 邮件列表 2005 05 22 2011 04 03 原始内容存档于2012 03 19 英语 Kuratomi Toshio binutils once more Fedora packaging 邮件列表 2010 06 04 2011 04 03 原始内容存档于2012 03 22 英语 Taylor Ian Re FreeBSD 4 6 binutils 2 14 installs useless libbfd binutils 邮件列表 2003 09 12 2011 04 03 原始内容存档于2011 12 25 英语 外部链接 编辑Binutils page with access to current BFD sources 页面存档备份 存于互联网档案馆 参见 编辑 nbsp 自由软件主题 ELF COFF a out 取自 https zh wikipedia org w index php title 二进制文件描述库 amp oldid 73641293, 维基百科,wiki,书籍,书籍,图书馆,

文章

,阅读,下载,免费,免费下载,mp3,视频,mp4,3gp, jpg,jpeg,gif,png,图片,音乐,歌曲,电影,书籍,游戏,游戏。