摘要 | 第1-6页 |
ABSTRACT | 第6-15页 |
第一章 引言 | 第15-29页 |
·解决处理器兼容问题的二进制翻译技术 | 第15-16页 |
·二进制翻译与传统编译技术 | 第16-17页 |
·前端解码器 | 第16-17页 |
·中端分析优化器 | 第17页 |
·后端优化编码器 | 第17页 |
·二进制翻译方法分类及比较 | 第17-18页 |
·解释执行 | 第17-18页 |
·静态翻译 | 第18页 |
·动态翻译 | 第18页 |
·三种翻译方法的比较 | 第18页 |
·应用级和系统级二进制翻译系统 | 第18-20页 |
·应用程序级二进制翻译系统 | 第19页 |
·系统级二进制翻译系统 | 第19-20页 |
·二进制翻译技术研究的意义 | 第20-23页 |
·有助于解决遗产代码问题,从而促进处理器设计创新 | 第20-21页 |
·二进制翻译可以降低软件移植和维护费用 | 第21页 |
·降低硬件复杂度,从而减少功耗,提高主频 | 第21-22页 |
·有助于提高程序性能 | 第22页 |
·网络应用的需要 | 第22页 |
·有助于保障系统安全,检测系统漏洞 | 第22-23页 |
·适应国内自主设计CPU 芯片的开发需求 | 第23页 |
·二进制翻译技术的研究热点 | 第23-26页 |
·存储器相关问题 | 第23页 |
·体系结构相关问题 | 第23-24页 |
·代码挖掘问题 | 第24页 |
·效率问题 | 第24-25页 |
·实时性问题 | 第25页 |
·运行环境仿真 | 第25页 |
·动态优化技术 | 第25-26页 |
·本文的贡献 | 第26-27页 |
·文章的组织 | 第27-29页 |
第二章 二进制翻译技术研究现状 | 第29-39页 |
·二进制翻译技术发展概述 | 第29-32页 |
·固定源和目标的二进制翻译系统 | 第31页 |
·可变源和目标的二进制翻译系统 | 第31-32页 |
·静态和动态二进制翻译在上述两类系统中的应用 | 第32页 |
·固定源和目标的二进制翻译系统 | 第32-35页 |
·FX!32 系统 | 第32-33页 |
·Aries 系统 | 第33页 |
·Daisy 系统 | 第33-34页 |
·BOA 系统 | 第34页 |
·Code Morphing 软件 | 第34页 |
·IA32 EL 软件 | 第34-35页 |
·可变源和目标的二进制翻译系统 | 第35-37页 |
·UQBT 和UQDBT 系统 | 第35-36页 |
·Bintran 系统 | 第36页 |
·Dynamite 软件 | 第36-37页 |
·动态优化系统 | 第37-38页 |
·Dynamo 系统 | 第37页 |
·Java 虚拟机 | 第37-38页 |
·本章小结 | 第38-39页 |
第三章 BITRAN 静态翻译器设计实现和性能分析 | 第39-49页 |
·引言 | 第39页 |
·Bitran 静态二进制翻译器简介 | 第39页 |
·Bitran 系统设计目标和方案的选择 | 第39-40页 |
·Bitran 系统设计框架 | 第40-42页 |
·二进制文件解码器 | 第40-41页 |
·X86 指令解码器 | 第41页 |
·地址分析器 | 第41页 |
·语义和结构分析器 | 第41页 |
·中间语言转换器unparser | 第41-42页 |
·Bitran 系统的实现 | 第42-44页 |
·文件解码器的实现 | 第42-43页 |
·语义结构分析器的实现 | 第43-44页 |
·目标二进制文件的内部结构 | 第44页 |
·实验结果及分析 | 第44-48页 |
·代码膨胀率 | 第45-47页 |
·代码执行时间 | 第47-48页 |
·Bitran 翻译效率说明 | 第48页 |
·Bitran 系统小结 | 第48-49页 |
第四章 DIGITALBRIDGE 动态翻译器设计实现和性能分析 | 第49-59页 |
·引言 | 第49页 |
·DigitalBridge 二进制翻译系统简介 | 第49页 |
·DigitalBridge 系统设计框架 | 第49-52页 |
·BT 控制器 | 第50-51页 |
·文件加载模块 | 第51页 |
·解释器 | 第51页 |
·库函数调用处理 | 第51页 |
·动态信息管理 | 第51页 |
·翻译优化器 | 第51-52页 |
·Cache 优化管理器 | 第52页 |
·本地码装载执行 | 第52页 |
·MIPS 代码库信息管理 | 第52页 |
·DigitalBridge 系统的实现 | 第52-56页 |
·BT 控制器的实现 | 第52-53页 |
·文件加载模块的实现 | 第53-54页 |
·库函数调用处理的实现 | 第54页 |
·动态信息管理的实现 | 第54-55页 |
·翻译优化器的实现 | 第55-56页 |
·实验结果及分析 | 第56-58页 |
·系统正确性和性能测试 | 第56-58页 |
·DigitalBridge 系统性能与其它动态翻译系统性能的比较 | 第58页 |
·DigitalBridge 系统小结 | 第58-59页 |
第五章 DIGITALBRIDGE 动态翻译系统的关键优化技术 | 第59-67页 |
·动态翻译系统效率的关键问题 | 第59-60页 |
·动态翻译系统中的信息传递优化 | 第60-63页 |
·动态翻译中的寄存器映射优化 | 第60-61页 |
·堆栈数据的一致性ABI 处理技术 | 第61-62页 |
·静态数据的一致性空间处理技术 | 第62-63页 |
·信息传递优化小结 | 第63页 |
·上下文切换技术 | 第63-64页 |
·上下文切换内容分析 | 第63-64页 |
·上下文切换的实现 | 第64页 |
·上下文切换的开销分析 | 第64页 |
·代码连接技术 | 第64-65页 |
·代码连接设计及实现 | 第64-65页 |
·代码连接开销分析 | 第65页 |
·本地码Cache 管理优化技术 | 第65页 |
·本地代码优化技术 | 第65-66页 |
·系统开销实验与分析 | 第66页 |
·本章小节 | 第66-67页 |
第六章 动态二进制翻译中的标志位优化技术 | 第67-79页 |
·引言 | 第67-68页 |
·标志位处理及优化的重要性 | 第68-69页 |
·标志位优化算法设计 | 第69-75页 |
·解释执行中的ICDC 标志位优化算法 | 第70-72页 |
·动态翻译的DFADC 标志位优化算法 | 第72-74页 |
·标志位信息的传递 | 第74-75页 |
·算法验证和实验结果 | 第75-76页 |
·相关工作 | 第76-77页 |
·总结及改进 | 第77-79页 |
第七章 动态二进制翻译中基于 DAG 图的寄存器分配优化 | 第79-95页 |
·引言 | 第79-80页 |
·DigitalBridge 系统中的寄存器分配 | 第80-81页 |
·二进制翻译中的寄存器分配 | 第80页 |
·X86 处理器和MIPS 处理器的寄存器特点分析 | 第80页 |
·DigitalBridge 系统现有的分配策略 | 第80-81页 |
·现有分配策略的不足 | 第81页 |
·基于DAG 图的寄存器分配优化原理 | 第81-86页 |
·基于汇编指令的DAG 图 | 第82-84页 |
·优化冗余访存指令 | 第84-86页 |
·DAG 图的生成及寄存器分配算法 | 第86-91页 |
·确定待分寄存器的变量 | 第86页 |
·构造基本块的汇编级DAG 图 | 第86-89页 |
·收集寄存器信息 | 第89页 |
·根据MIPS 指令格式,生成指令 | 第89-90页 |
·物理寄存器分配 | 第90-91页 |
·算法复杂度及有效性分析 | 第91页 |
·初步实验及分析 | 第91-93页 |
·相关工作 | 第93-94页 |
·总结及改进 | 第94-95页 |
第八章 动静结合的二进制翻译框架探索 | 第95-113页 |
·引言 | 第95页 |
·Bitran 静态翻译系统和DigitalBridge 动态翻译系统性能的进一步分析 | 第95-99页 |
·Bitran 系统和DigitalBridge 系统速度比较 | 第95-96页 |
·DigitalBridge 动态翻译系统运行时间分析 | 第96-97页 |
·DigitalBridge 和Bitran 翻译生成的代码对比 | 第97-98页 |
·结论 | 第98-99页 |
·动静结合的二进制翻译研究的必要性 | 第99页 |
·典型二进制翻译系统模式分析 | 第99-100页 |
·静态翻译器结合运行时支持 | 第99-100页 |
·纯动态翻译方式 | 第100页 |
·动态翻译加解释执行 | 第100页 |
·二进制翻译系统效率模型 | 第100-103页 |
·分析假设 | 第101页 |
·动态翻译和解释执行的效率分析模型 | 第101页 |
·动态优化和动态翻译的效率分析模型 | 第101-102页 |
·静态翻译与动态翻译的效率分析模型 | 第102页 |
·翻译系统设计时翻译方法的选择 | 第102-103页 |
·动静结合的二进制翻译框架设计 | 第103-112页 |
·静态翻译加速的动态执行系统框架 | 第103-108页 |
·动态支持的静态翻译器框架 | 第108-112页 |
·设计框架分析 | 第112页 |
·总结 | 第112-113页 |
第九章 总结和进一步的工作 | 第113-117页 |
·本文工作的总结 | 第113-114页 |
·进一步的工作 | 第114-117页 |
参考文献 | 第117-123页 |
致谢 | 第123-125页 |
作者简介 | 第125页 |