学位论文 > 优秀研究生学位论文题录展示

多源二进制代码一体化翻译关键技术研究

作 者: 白莉莉
导 师: 庞建民
学 校: 解放军信息工程大学
专 业: 计算机软件与理论
关键词: 二进制翻译 指令语义描述 语义等价转换 语义树融合 跳转表恢复 间接跳转 关键语义子树
分类号: TP391.2
类 型: 硕士论文
年 份: 2010年
下 载: 30次
引 用: 0次
阅 读: 论文下载
 

内容摘要


二进制翻译作为软件移植的重要手段,在维护遗产代码、推动硬件创新及保障计算机安全等方面发挥着重要的作用,因而对民族计算机产业的繁荣有着至关重要的意义。由于二进制翻译实现复杂,研发两平台间的二进制翻译系统将耗费大量人力与时间。因此,越来越多的研究人员致力于剥离平台相关性,寻求统一的方法实现多种平台间的二进制翻译,以缩短研发周期、降低研发代价。正是为了实现多种平台软件到某国产CPU的快速移植,本文从系统架构的设计、指令语义描述以及指令语义等价转换等方面,对多源二进制代码一体化翻译中的若干关键问题进行了深入研究。首先,为实现二进制翻译系统的平台无关性和可扩展性,构建了一种基于虚拟框架设计思想的多源二进制代码的一体化翻译架构,同时深入研究了不同指令集在指令基本构成元素上的相似性,设计了指令原子语义描述语言用于构建统一且平台无关的中间表示;之后,为实现完整正确简单的指令语义转换,结合指令语义分层结构,提出并实现了一种基于分层迭代的指令语义等价转换算法,并针对源与目标平台在专用寄存器上的差异性,研究并实现了标志位的模拟方法,同时提出了基于语义树融合的相关指令优化翻译方法以提高生成代码质量;最后,鉴于间接跳转影响翻译完整性且现有处理方法存在局限性,提出并实现了一种基于关键语义子树的跳转表恢复方法,通过提取跳转表语义形式上的特征,以平台及编译器均无关的形式解决了间接跳转典型形式的目标解析问题。本文来源于国家某重大专项子课题,所提出的策略和算法已在项目研发的多源二进制代码一体化翻译系统MBT(Multi-source Binary Translator)中实现。通过对MBT系统整体及相关模块的测试,文中所提出的策略和算法的正确性、有效性和平台无关性都得到了良好的验证。

全文目录


摘要  8-9
ABSTRACT  9-10
第一章 绪论  10-19
  1.1 二进制翻译技术  10-15
    1.1.1 研究意义  11-12
    1.1.2 研究现状  12-14
    1.1.3 研究热点  14-15
  1.2 本文研究内容  15-17
  1.3 主要完成工作及创新  17-18
  1.4 论文结构安排  18-19
第二章 系统架构及指令语义描述语言的设计与实现  19-30
  2.1 系统设计目标及原则  19-20
  2.2 MBT系统基本架构  20-23
    2.2.1 文件装载模块  21
    2.2.2 指令解码模块  21-22
    2.2.3 语义映射模块  22
    2.2.4 语义等价转换模块  22-23
  2.3 指令原子语义描述语言ASDL  23-29
    2.3.1 指令的基本组成元素  23-27
    2.3.2 指令语义的描述  27-28
    2.3.3 基于ASDL的中间表示  28-29
  2.4 本章小结  29-30
第三章 指令语义等价转换技术的研究与实现  30-46
  3.1 语义树的分层结构  30-31
  3.2 基于分层迭代的指令原子语义转换  31-37
    3.2.1 TO层语义转换策略  32-34
    3.2.2 NTO层语义转换策略  34-36
    3.2.3 Terminal层语义转换策略  36-37
  3.3 标志位的模拟及优化翻译  37-45
    3.3.1 标志位处理的必要性  37-38
    3.3.2 标志位的模拟  38-39
    3.3.3 标志位优化翻译  39-45
  3.4 本章小结  45-46
第四章 基于关键语义子树的间接跳转目标解析及翻译  46-67
  4.1 问题的提出及设计要求  46-47
  4.2 相关工作  47-49
  4.3 跳转表的语义特征  49-51
  4.4 基于关键语义子树的间接跳转目标解析及翻译  51-66
    4.4.1 关键语义子树的提取  51-58
    4.4.2 间接跳转目标的预取  58-62
    4.4.3 同目标跳转分支的聚合  62-64
    4.4.4 多分支跳转指令的翻译  64-66
  4.5 本章小结  66-67
第五章 测试及分析  67-72
  5.1 系统整体测试  67-68
  5.2 针对标志位优化翻译的测试  68-69
  5.3 针对跳转表恢复的测试  69-71
    5.3.1 平台无关性测试  69-71
    5.3.2 有效性测试  71
  5.4 测试结论  71-72
结束语  72-74
参考文献  74-78
附录 Ctypical部分例子及测试情况  78-82
作者简历 攻读硕士学位期间完成的主要工作  82-83
致谢  83

相似论文

  1. 软硬协同动态二进制翻译系统设计与实现,TP391.2
  2. CPU/GPU异构多核虚拟执行环境框架的设计与实现,TP332
  3. 动态二进制翻译中的热路径优化,TP391.2
  4. 基于动态二进制探测工具的程序执行行为分析与研究1,TP311.11
  5. 动态二进制翻译中基于中间代码的优化研究,TP391.2
  6. 虚拟机的软硬件协同设计方法研究,TP391.9
  7. 改进QEMU的多模式指令解码研究,TP391.2
  8. 缓冲区溢出攻击检测工具的设计与实现,TP309
  9. 动态优化技术及其在天目中的应用研究,TP391.2
  10. 动态二进制翻译后端代码热路径的重组优化,TP391.2
  11. 基于动态二进制翻译技术的反编译研究,TP314
  12. 基于动态二进制翻译的龙芯虚拟机中数据预取优化研究,TP391.2
  13. 二进制翻译中自修改代码的缓存策略研究,TP391.2
  14. 一种改进QEMU精确异常处理机制的研究,TP314
  15. 目标机仿真器集成与指令仿真缓存管理策略,TP337
  16. 动态二进制翻译器中Code Cache管理策略的研究与分析,TP314
  17. 动态二进制翻译系统中浮点运算单元研究,TP391.2
  18. 可重定向动态二进制翻译器的动态库支持方法研究,TP391.2
  19. 基于动态二进制翻译的硬件支持Profiling方法研究,TP391.2
  20. 基于多核平台的多线程动态二进制翻译系统优化框架,TP391.2

中图分类: > 工业技术 > 自动化技术、计算机技术 > 计算技术、计算机技术 > 计算机的应用 > 信息处理(信息加工) > 翻译机
© 2012 www.xueweilunwen.com