摘要 | 第5-6页 |
ABSTRACT | 第6-7页 |
第一章 绪论 | 第13-21页 |
1.1 研究背景与意义 | 第13-15页 |
1.1.1 动态二进制翻译 | 第13-14页 |
1.1.2 动态优化技术 | 第14页 |
1.1.3 并行化计算 | 第14-15页 |
1.1.4 研究意义 | 第15页 |
1.2 国内外研究现状 | 第15-19页 |
1.2.1 多核多线程技术 | 第15-16页 |
1.2.2 动态二进制翻译系统 | 第16-18页 |
1.2.3 动态二进制翻译技术结合多线程技术的应用实例 | 第18-19页 |
1.3 本论文的主要贡献 | 第19页 |
1.4 本文的组织结构 | 第19-21页 |
第二章 CrossBit 系统架构和引入多线程优化的挑战 | 第21-33页 |
2.1 进程级虚拟机概念 | 第21-22页 |
2.2 动态二进制翻译器模型 | 第22-24页 |
2.3 CrossBit | 第24-30页 |
2.3.1 可执行映像的加载(Image Loader) | 第25页 |
2.3.2 哈希函数(Hash)结合软件缓存(Cache)的翻译代码管理方式 | 第25-26页 |
2.3.3 CrossBit 的中间语言(Intermediate Language) | 第26-28页 |
2.3.4 超级块生成算法(SuperBlock Building) | 第28-29页 |
2.3.5 代码块的链接(Code Block Linking) | 第29-30页 |
2.4 CrossBit 引入多线程优化的挑战 | 第30-32页 |
2.4.1 多线程优化算法的选取依据 | 第31页 |
2.4.2 使用多线程生成超级块的挑战 | 第31-32页 |
2.5 本章小节 | 第32-33页 |
第三章 多核多线程编程技术和MTCrossBit 框架 | 第33-43页 |
3.1 多核多线程编程技术概述 | 第33-38页 |
3.1.1 线程与进程 | 第33-34页 |
3.1.2 多核处理器体系结构 | 第34页 |
3.1.3 多核多线程编程技术的关键点 | 第34-36页 |
3.1.4 加解锁算法 | 第36-38页 |
3.2 MTCrossBit 系统架构 | 第38-41页 |
3.3 MTCrossBit 的优点和缺点分析 | 第41-42页 |
3.4 本章小结 | 第42-43页 |
第四章 MTCrossBit 的具体实现方法 | 第43-53页 |
4.1 多线程初始化 | 第43-45页 |
4.2 MTCrossBit 相关内存分配操作 | 第45-46页 |
4.3 ASLC(Assemly Language Communication) | 第46-50页 |
4.4 超级块的生成 | 第50-52页 |
4.5 本章小节 | 第52-53页 |
第五章 性能评测 | 第53-62页 |
5.1 多线程动态优化的性能分析 | 第53-57页 |
5.2 MTCrossBit 性能评测 | 第57-59页 |
5.3 MTCrossBit 与Trident 的比较 | 第59-61页 |
5.4 本章小节 | 第61-62页 |
第六章 结论 | 第62-65页 |
6.1 全文总结 | 第62-63页 |
6.2 未来工作 | 第63-64页 |
6.3 本章小节 | 第64-65页 |
参考文献 | 第65-70页 |
致谢 | 第70-71页 |
攻读硕士学位期间已申请和公开的专利 | 第71-72页 |
攻读硕士学位期间已发表或录用的学术论文 | 第72-74页 |