第1章 虛擬化技術的現狀
1.1 什么是虛擬化技術
1.1.1 CPU的虛擬化
1.1.2 110的虛擬化
1.2 為什么要虛擬化
1.3 歷史上第一臺虛擬機
1.4 x86架構虛擬化的問題
1.5 一些解決x86架構虛擬化問題的方案
1.5.1 二進制翻譯
1.5.2 泛虛擬化
1.5.3 硬件輔助虛擬化
1.6 Xen的理念
1.6.1 方案和機制的分離
1.6.2 做得越少越好
1.7 Xen的系統(tǒng)結構
1.7.1 Hypervisor,操作系統(tǒng),應用程序之間的關系
1.7.2 DomainO的角色
1.7.3 非特權級的Domain
1.7.4 HVM的Domain
1.7.5 Xen的結構配置
第2章 探索Xen虛擬體系結構
2.1 作為泛虛擬化客戶端啟動
2.2 利用特權級限制操作
2.3 用超級調用取代特權指令
2.4 探索Xen事件模型
2.5 與共享內存進行通信
2.6 拆分設備驅動模型
2.7 VM生命周期
2.8 練習:最簡單的Xen內核
2.8.1 客戶機入口點
2.8.2 把所有內容放在一起
第3章 理解SharedInfoPages
3.1 獲取啟動時鐘信息
3.2 SharedInfoPage
3.3 Xen中的時間管理
3.4 練習:實現函數gettimeofday()
第4章 使用授權表(GrantTable)
4.1 內存共享
4.1.1 映射(Mapping)-個頁面
4.1.2 domain間的數據傳遞(Transferring)
4.2 設備I/O環(huán)
4.3 授權以及撤銷授權
4.4 練習:映射授權頁面(grantedpage)
4.5 練習:在VM之間共享內存
第5章 Xen的內存管理
5.1 x86環(huán)境下的內存管理
5.2 偽物理地址模型(Pseudo-PhysicalMemoryModel)
5.3 32位x86系統(tǒng)中的分段模式
5.4 使用XenMemoryAssist
5.5 使用BallonDriver控制內存使用
5.6 其他內存操作
5.7 更新頁表
5.7.1 創(chuàng)建新的虛擬機(VM)實例
5.7.2 處理頁故障
5.7.3 暫停(suspend)、恢復和遷移
5.8 練習:映射SharedInfoPage
第6章 理解設備驅動
6.1 分離設備模型
……
第7章 使用事件通道
第8章 深入學習XenStore
第9章 支持核心設備
第10章 其他Xen設備
第11章 XenAPI
第12章 虛擬機調度
第13章 HVM
第14章 未來的發(fā)展方向
附錄泛虛擬化客戶操作系統(tǒng)移植概述