摘要 | 第5-7页 |
ABSTRACT | 第7-8页 |
第一章 绪论 | 第12-20页 |
1.1 二进制翻译技术简介 | 第12-15页 |
1.1.1 二进制翻译结构与分类 | 第13-14页 |
1.1.2 动态二进制翻译系统框架简介 | 第14-15页 |
1.2 动态优化技术简介 | 第15-16页 |
1.3 常见二进制翻译及优化系统介绍 | 第16-18页 |
1.4 二进制翻译技术面临的挑战 | 第18-19页 |
1.5 本文要研究的问题 | 第19-20页 |
1.5.1 研究目标 | 第19页 |
1.5.2 全文结构 | 第19-20页 |
第二章 动态二进制翻译系统 | 第20-29页 |
2.1 引言 | 第20页 |
2.2 VALGRIND简介 | 第20-21页 |
2.3 VALGRIND的翻译单元 | 第21-22页 |
2.4 VALGRIND的模块及工作流程 | 第22-24页 |
2.5 VALGRIND基本块的翻译过程 | 第24-27页 |
2.6 VALGRIND中的优化 | 第27-28页 |
2.7 本章小结 | 第28-29页 |
第三章 PROFILE 和热路径优化 | 第29-44页 |
3.1 引言 | 第29-30页 |
3.2 动态二进制翻译中的 PROFILE | 第30-31页 |
3.3 动态二进制翻译中的热路径识别 | 第31-35页 |
3.3.1 基于基本块(basic block)profile 的热路径识别 | 第31-32页 |
3.3.2 基于跳转边(edge)profile 的热路径识别 | 第32页 |
3.3.3 基于路径(path)profile 的热路径识别 | 第32页 |
3.3.4 基于跳转边的profile 与基于路径的profile 的对比 | 第32-34页 |
3.3.5 NET 动态热路径预测策略 | 第34-35页 |
3.4 改进的热路径识别和优化算法 | 第35-41页 |
3.4.1 热路径的编码表示方法 | 第35页 |
3.4.2 基于路径的热路径算法的分析 | 第35-36页 |
3.4.3 基于编码的路径的形式化定义 | 第36-37页 |
3.4.4 算法实现 | 第37-39页 |
3.4.5 实验结果与分析 | 第39-41页 |
3.5 相关研究 | 第41-42页 |
3.5.1 静态profiling | 第41页 |
3.5.2 基于硬件采样的动态优化 | 第41-42页 |
3.6 本章小结 | 第42-44页 |
第四章 基于 PROFILE 的代码 CACHE 管理 | 第44-52页 |
4.1 引言 | 第44-46页 |
4.2 常用替换算法 | 第46-48页 |
4.2.1 LRU 策略 | 第46-47页 |
4.2.2 FIFO 策略 | 第47页 |
4.2.3 粗粒度的 FIFO 替换算法 | 第47页 |
4.2.4 全清空算法 | 第47-48页 |
4.2.5 分阶段清空算法 | 第48页 |
4.2.6 最佳大小匹配替换算法 | 第48页 |
4.3 基于 PROFILE 信息的替换算法 | 第48-49页 |
4.4 实验分析与评价 | 第49-51页 |
4.5 本章小结 | 第51-52页 |
第五章 结论 | 第52-54页 |
参考文献 | 第54-58页 |
致谢 | 第58-59页 |
攻读硕士期间的科研及学术论文 | 第59页 |