BFD中符号处理的探究.pdfVIP

  1. 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
BFD中符号处理的研究8 夏宏张俊超 华』£电力人学计算桃举}学与技术系,北京102206 捕舞:在对二进制文件进行处理时,其中的符号表所提供的信息是重定位处理,程序定位等的基 File 础,对于文件链接、程序调试等工雕不可或缺。作为二进制支件接口,BFD(BinaryDescriptor)为 GNUBinutils中的各种二进制工具程序提供了有效的符号处理方式。本文首先介绍了不同符号格式的 定义,然后分析了符号的读取,尤其是符号格式的转换,这是BFD能够处理多种文件格式中符号信息 的关键.接若,分析了箍号的生成,霹出过程及相关的后端函数。 关髓词:BFD读取符号生成符号写出符号 1引 言 BFD魁自由软什基金会GNU。1:程的一个开放l源代码二进制r尺包GNUBinutils中的厩要组成部分。 它实际上楚一个痒,其堤诗17豹是为对麻于不弱体系结褥、采_}{;j不圄文镗格式豹二进制文馋提供一套绕一 的接口,使f}{户能够用相同的函数对它们进行操作。 拳l各种内部数据结构,弱时还决定使用群一套最旗|==王及傍时傻瑁该辰端的函数。赢端盼功能是实现曩俸机 器的文件表示年|IBFD内部表示的互相转换。 用高级语言或汇编语言写成的源桴序,在经过编译、汇编变成二进制文仆席,其中的嘲数名、变繁名 等名称都戳符号豹形式存在。这其中,包括当藏投块中薮定义的全局符号,在当薪摸块中被引翊但泰波定 义的全局符号,调试器或崩溃转储分析用到的局部符号等。这些各种不同类型的符号所表看{的信息为重定 位处理、调试程序笛提供重要帮助。 Link BFD作为GNUBinutils的基础部分,为其中豹汇编器GAS(GNU Editor)苍 Assembler).GLD(GNU 中多种I:尽程序处理文雠:中符号信息的基础。 基于对BFD和GNUBinutils中的其它相|芙源代码构分析及对已完成的GAS嗣l GLD移植.】:作的总结, 文件中的格式到BFD内部统一的格式的转换过程.这使BFD能够处理多种文什格式中符号信息。接着, 分析了生成符号乖I|司输出文竹中写符号的过程及BFD中有芙符号处理的后端函数。 2符号的格式 方式的不同.对其中符号格式的定义也雏所不同。 方向为计算帆体系结构、编译技术。 如在8.out文9|:中,榜号豹格式为: structinternal—nlist I n_strx; unsignedlong charn unsignedtype; char n_other; unsigned short n_desc; unsigned n_value; bfd_vma l; value为符号的值e 符号、局部符母等。 n_other通常为空。n_desc为调试信息。n 而在elf文件中,符号的格式则为: stnlctelf intemal_sym .{ 、 st bfd—vmavalue; bfd_vmast_size; longst_name; unsigned

文档评论(0)

gubeiren_001 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档