| 摘要 | 第1-5页 |
| ABSTRACT | 第5-10页 |
| 第1章 绪论 | 第10-15页 |
| ·引言 | 第10-11页 |
| ·虚拟机的分类 | 第11-12页 |
| ·虚拟机的应用领域 | 第12-13页 |
| ·x86 虚拟机的研究现状及本文主要工作 | 第13-15页 |
| 第2章 虚拟机设计思路与 Bochs 项目 | 第15-21页 |
| ·虚拟机设计思路 | 第15-17页 |
| ·开源项目Bochs 介绍 | 第17页 |
| ·Bochs 项目组织与原理概述 | 第17-21页 |
| ·Bochs 工程的组织结构 | 第17-19页 |
| ·Bochs 的工作原理概述 | 第19-21页 |
| 第3章 Bochs 工作原理分析 | 第21-44页 |
| ·虚拟CPU 概述 | 第21-22页 |
| ·虚拟CPU 的实现 | 第22-35页 |
| ·寄存器 | 第22-24页 |
| ·MMU 单元 | 第24-27页 |
| ·取指与执行 | 第27-34页 |
| ·处理异步事件 | 第34-35页 |
| ·存储器系统 | 第35-37页 |
| ·PC 主机板的模拟 | 第37-39页 |
| ·主机板概述 | 第37-38页 |
| ·定时器 | 第38-39页 |
| ·虚拟外设 | 第39-41页 |
| ·外设的组织结构 | 第39页 |
| ·外设工作方式 | 第39-40页 |
| ·外设的初始化 | 第40-41页 |
| ·PCI 子系统 | 第41-44页 |
| ·PC 系统中的PCI 互连结构 | 第41-42页 |
| ·PCI 总线空间 | 第42-43页 |
| ·Bochs 对PCI 总线的模拟 | 第43-44页 |
| 第4章 问题讨论与实验 | 第44-56页 |
| ·虚拟机的时钟系统 | 第44-46页 |
| ·PC 系统中的时钟类型 | 第44页 |
| ·时钟模拟 | 第44-46页 |
| ·高速缓存与 TLB 模拟 | 第46-47页 |
| ·高速缓存模拟 | 第46-47页 |
| ·TLB 模拟 | 第47页 |
| ·虚拟机的用户接口(UI) | 第47-50页 |
| ·输入与显示 | 第47-48页 |
| ·虚拟磁盘 | 第48页 |
| ·与外部通讯接口 | 第48-50页 |
| ·用户接口小节 | 第50页 |
| ·基于虚拟机的实验 | 第50-56页 |
| ·指令统计实验 | 第50-53页 |
| ·高速缓存性能实验 | 第53-55页 |
| ·虚拟机实验小结 | 第55-56页 |
| 第5章. IA-32 Debugger 的设计与实现 | 第56-67页 |
| ·调试器概述 | 第56-57页 |
| ·IA-32 Debugger 调试器的设计与概述 | 第57-60页 |
| ·设计思路 | 第57-58页 |
| ·利用MFC 辅助图形化编程 | 第58-59页 |
| ·IA-32 Debugger 的工程组织 | 第59-60页 |
| ·IA-32 Debugger 调试器的具体实现 | 第60-67页 |
| ·虚拟机的加载过程 | 第60页 |
| ·CPU 控制 | 第60-61页 |
| ·断点设置功能 | 第61页 |
| ·状态查看 | 第61-62页 |
| ·反汇编输出 | 第62-65页 |
| ·小结 | 第65-67页 |
| 第6章 虚拟机技术展望 | 第67-71页 |
| ·虚拟机的执行效率问题 | 第67-68页 |
| ·虚拟机的效率现状 | 第67页 |
| ·Qemu 的设计思路 | 第67-68页 |
| ·虚拟化技术与Xen | 第68-70页 |
| ·Xen 及其设计思想 | 第69页 |
| ·Xen 的工作方式 | 第69-70页 |
| ·Xen 处理页表问题 | 第70页 |
| ·虚拟机技术展望 | 第70-71页 |
| 参考文献 | 第71-74页 |
| 附录 | 第74-78页 |
| 致谢 | 第78页 |