| 摘要 | 第1-6页 |
| ABSTRACT | 第6-8页 |
| 目录 | 第8-11页 |
| 第一章 引言 | 第11-15页 |
| ·研究背景及意义 | 第11-12页 |
| ·国内外研究现状 | 第12-14页 |
| ·国外研究现状 | 第12-13页 |
| ·国内研究现状 | 第13-14页 |
| ·研究内容 | 第14页 |
| ·论文的层次结构安排 | 第14-15页 |
| 第二章 相关技术介绍 | 第15-32页 |
| ·虚拟机概述 | 第15-16页 |
| ·二进制翻译技术 | 第16-20页 |
| ·高速缓存技术 | 第20-21页 |
| ·动态二进制翻译中常用的代码缓存替换算法 | 第21-25页 |
| ·全清空(Flush) | 第21-22页 |
| ·先进先出(FIFO) | 第22页 |
| ·LRU算法 | 第22-23页 |
| ·基于工作集的全清空 | 第23页 |
| ·粗粒度先进先出(Coarse-Grained-FIFO) | 第23-25页 |
| ·QEMU平台架构介绍 | 第25-31页 |
| ·QEMU的系统简介 | 第25-26页 |
| ·QEMU的运行级别 | 第26-27页 |
| ·QEMU的翻译单位 | 第27-29页 |
| ·QEMU的执行流程 | 第29-31页 |
| ·本章小结 | 第31-32页 |
| 第三章 代码缓存替换算法分析与优化 | 第32-40页 |
| ·代码缓存查找替换机制 | 第32-33页 |
| ·QEMU平台现有算法分析 | 第33-34页 |
| ·优化算法 | 第34-39页 |
| ·粗粒度先进先出算法 | 第34-37页 |
| ·粗粒度LRU算法 | 第37-39页 |
| ·本章小结 | 第39-40页 |
| 第四章 动态二进制翻译器的代码缓存设计 | 第40-50页 |
| ·设计目标 | 第40-41页 |
| ·代码缓存性能影响因素 | 第41-46页 |
| ·命中时间 | 第42页 |
| ·缺失代价 | 第42-43页 |
| ·缺失率 | 第43-44页 |
| ·代码缓存的容量 | 第44页 |
| ·代码块映射的数据结构 | 第44-45页 |
| ·翻译速度 | 第45页 |
| ·替换算法 | 第45-46页 |
| ·代码缓存设计 | 第46-49页 |
| ·代码缓存存储空间分配 | 第46页 |
| ·缓存中代码块映射表的数据结构 | 第46-47页 |
| ·代码缓存的替换算法 | 第47-49页 |
| ·本章小结 | 第49-50页 |
| 第五章 QEMU平台下的代码缓存管理策略的实现 | 第50-63页 |
| ·粗粒度先进先出算法 | 第50-60页 |
| ·关键数据结构 | 第50-53页 |
| ·算法实现细节 | 第53-60页 |
| ·粗粒度LRU算法 | 第60-62页 |
| ·关键数据结构 | 第60-61页 |
| ·关键函数 | 第61-62页 |
| ·本章小结 | 第62-63页 |
| 第六章 QEMU的代码缓存性能评测 | 第63-70页 |
| ·测试范畴及测试环境 | 第63页 |
| ·性能测试 | 第63-68页 |
| ·缓存容量与系统的运行时间对比 | 第64-65页 |
| ·不同缓存容量下的缓存缺失率对比 | 第65页 |
| ·不同替换算法时的缓存缺失率对比 | 第65-66页 |
| ·不同算法下缓存的运行性能 | 第66-68页 |
| ·性能分析 | 第68页 |
| ·本章小结 | 第68-70页 |
| 第七章 结束语 | 第70-72页 |
| ·全文总结 | 第70页 |
| ·不足与下一步工作 | 第70-72页 |
| 致谢 | 第72-73页 |
| 参考文献 | 第73-75页 |
| 攻读硕士研究生期间的研究成果 | 第75-76页 |