声明
摘要
图目录
表目录
第一章 绪论
1.1 研究背景
1.1.1 二进制翻译的产生背景
1.1.2 二进制翻译的基本概念
1.1.3 二进制翻译的应用
1.2 二进制翻译系统的分类
1.2.1 解释型二进制翻译系统
1.2.2 静态二进制翻译系统
1.2.3 动态二进制翻译系统
1.2.4 混合型二进制翻译系统
1.2.5 进程级二进制翻译系统
1.2.6 系统级二进制翻译系统
1.3 主流二进制翻译系统介绍
1.3.1 QEMU系统
1.3.2 FX!32系统
1.3.3 UQBT和UQDBT系统
1.3.4 Aries系统
1.3.5 Daisy系统
1.3.6 DigitalBridge和Bitran系统
1.3.7 同源虚拟机系统
1.3.8 龙芯动态二进制翻译系统
1.3.9 主流二进制翻译系统列表
1.4 动态二进制翻译的研究方向和热点
1.5 本文研究内容与成果
1.6 论文组织结构
第二章 动态二进制翻译系统结构与技术要点
2.1 动态二进制翻译系统结构
2.1.1 动态二进制翻译系统执行流程
2.1.2 运行时环境模拟器
2.1.3 前端指令解析器
2.1.4 指令翻译器
2.1.5 后端指令管理器
2.1.6 后端指令执行器
2.1.7 外设模拟器
2.2 动态二进制翻译面临的主要技术问题
2.2.1 基本块索引
2.2.2 分支指令跳转
2.2.3 寄存器分配
2.2.4 内核驻留模块的翻译
2.2.5 实时性问题
2.3 小结
第三章 KBT二进制翻译系统设计与实现
3.1 研究背景
3.1.1 KBT系统的产生背景
3.1.3 KBT系统的定位
3.2 KBT系统的整体结构设计
3.3 KBT各模块设计与实现
3.3.1 用户态监视器
3.3.2 内核态监视器
3.3.3 CPU模拟器
3.3.4 指令翻译器
3.3.5 外设模拟器
3.4 KBT性能测试与分析
3.4.1 实验环境与数据
3.4.2 KBT各模块执行时间分成
3.4.3 KBT性能与同类系统比较
3.5 小结
第四章 KBT后端指令管理系统性能优化
4.1 研究背景
4.2 LIIS设计与实现
4.2.1 LIIS设计思想
4.2.2 LIIS系统结构
4.3 LIIS指令替换算法
4.3.1 后端指令局部性分析
4.3.2 L3替换算法
4.3.3 L2替换算法
4.3.4 L1替换算法
4.4 LIIS性能分析与实验结果
4.4.1 替换算法性能及测试
4.4.2 LIIS性能测试
4.4.3 LIIS进一步优化实验
4.5 小结
第五章 KBT的内核模块翻译系统性能优化
5.1 研究背景
5.2 UKCF设计与实现
5.2.1 UKCF执行流程
5.2.2 UKCF系统结构
5.3 外部函数直接执行机制
5.4 UKCF性能分析与实验结果
5.4.1 UKCF性能分析
5.4.2 UKCF性能测试结果
5.5 小结
第六章 面向龙芯平台的KBT性能优化策略研究
6.1 研究背景
6.2 后端指令执行频率分析与翻译规则优化
6.2.1 KBT后端指令执行时间测试与分析
6.2.2 面向龙芯3A的翻译规则优化策略
6.2.3 翻译规则优化性能分析与测试
6.3 硬件模拟方式优化
6.3.1 研究背景
6.3.2 基于KBT的管道式硬件模拟
6.3.3 管道式硬件模拟实验结果
6.5 小结
第七章 总结与展望
7.1 本文主要工作总结
7.3 进一步工作展望
参考文献
致谢
攻读学位期间参加的科研项目
在读期间发表的学术论文
中国科学技术大学;