摘要 | 第5-7页 |
ABSTRACT | 第7-8页 |
第一章 绪论 | 第15-19页 |
1.1 引言 | 第15页 |
1.2 系统虚拟化的优势 | 第15-16页 |
1.3 现有虚拟化平台上存在的问题 | 第16-18页 |
1.4 本文的主要贡献 | 第18页 |
1.5 本文结构安排 | 第18-19页 |
第二章 背景介绍 | 第19-29页 |
2.1 x86系统虚拟化技术的演化 | 第19-22页 |
2.2 硬件辅助虚拟化技术 | 第22-28页 |
2.2.1 概述 | 第22-23页 |
2.2.2 CPU虚拟化 | 第23-26页 |
2.2.3 内存虚拟化 | 第26-28页 |
2.2.4 中断虚拟化 | 第28页 |
2.3 本章小结 | 第28-29页 |
第三章 Secure KVM:安全嵌套式虚拟化系统 | 第29-71页 |
3.1 引言 | 第29-30页 |
3.2 背景介绍及问题分析 | 第30-32页 |
3.2.1 虚拟化本质论 | 第30-31页 |
3.2.2 客户虚拟机的内存安全 | 第31页 |
3.2.3 客户虚拟机的磁盘安全 | 第31-32页 |
3.3 Secure KVM系统的设计 | 第32-35页 |
3.3.1 嵌套式虚拟化 | 第32-34页 |
3.3.2 系统整体架构 | 第34-35页 |
3.4 对客户虚拟机内存数据的安全保护 | 第35-42页 |
3.4.1 基本原理 | 第35-37页 |
3.4.2 磁盘读写部分的特殊处理 | 第37-38页 |
3.4.3 指令模拟部分的特殊处理 | 第38-41页 |
3.4.4 内存隔离与越界访问检测 | 第41-42页 |
3.5 对客户虚拟机磁盘数据的安全保护 | 第42-59页 |
3.5.1 基本原理 | 第42-43页 |
3.5.2 PIO读部分的处理 | 第43-46页 |
3.5.3 DMA读部分的处理 | 第46-50页 |
3.5.4 DMA写部分的处理 | 第50-51页 |
3.5.5 多层内存地址转换的处理 | 第51-55页 |
3.5.6 缺失内存地址转换的处理 | 第55-57页 |
3.5.7 加解密方案与数据完整性保护 | 第57-59页 |
3.6 实验与性能测试 | 第59-68页 |
3.6.1 实现与配置 | 第59-60页 |
3.6.2 内存攻击与防御 | 第60-65页 |
3.6.3 静态磁盘攻击与防御 | 第65-66页 |
3.6.4 动态磁盘攻击与防御 | 第66-68页 |
3.6.5 性能测试 | 第68页 |
3.7 相关研究工作分析 | 第68-69页 |
3.8 本章小结 | 第69-71页 |
第四章 Flex Core:采用v CPU-Bal的虚拟机动态调度系统 | 第71-89页 |
4.1 引言 | 第71-72页 |
4.2 背景介绍及问题分析 | 第72-77页 |
4.2.1 常见SMP虚拟机的调度方案 | 第72-73页 |
4.2.2 客户虚拟机CPU时间耗费情况分析 | 第73-74页 |
4.2.3 函数调用IPI延迟 | 第74-75页 |
4.2.4 自旋锁持有者抢占 | 第75-76页 |
4.2.5 v CPU-Bal方法 | 第76-77页 |
4.3 Flex Core系统的设计与实现 | 第77-83页 |
4.3.1 系统总体架构 | 第78页 |
4.3.2 v CPU-Bal控制中心 | 第78-80页 |
4.3.3 v CPU-Bal内核代理 | 第80-82页 |
4.3.4 介于控制中心和内核代理间的通信模块 | 第82-83页 |
4.4 实验与性能测试 | 第83-86页 |
4.4.1 实验环境 | 第83-84页 |
4.4.2 总运行时间比较 | 第84页 |
4.4.3 运行时间占比比较 | 第84-85页 |
4.4.4 PLE次数比较 | 第85-86页 |
4.4.5 实验总结 | 第86页 |
4.5 相关研究工作分析 | 第86-87页 |
4.6 本章小结 | 第87-89页 |
全文总结 | 第89-91页 |
参考文献 | 第91-97页 |
致谢 | 第97-99页 |
攻读学位期间发表的学术论文目录 | 第99-101页 |
攻读学位期间参与的项目 | 第101-102页 |
附件 | 第102页 |