内容简介
《处理器虚拟化技术》针对在Intel处理器端的虚拟化技术(Intel Virtualization Technology for x86,即Intel VT-x)进行全面讲解。在Intel VT-x技术下实现了VMX(Virtual-Machine Extensions,虚拟机扩展)架构平台来支持对处理器的虚拟化管理。因此,VMX架构是Intel VT-x技术的核心。《处理器虚拟化技术》内容围绕VMX架构实现细节展开全面讲解。但Intel VT-d(Virtualization Technology for Directed I/O)和Intel VT-c(Virtualization Technology for Connectivity)技术并不在本书的描述范围。同时,也不针对AMD-v技术进行讨论。
《处理器虚拟化技术》共分为7章,书的整体结构也较为规整,可读性比较强。《处理器虚拟化技术》共提供14个例子,对VMX架构的一些功能进行辅助讲解。
读者阅读《处理器虚拟化技术》,可以学习Intel VT-x技术的VMX架构知识,并且对整个x86/x64体系有更深入的了解!可以说,不了解VMX架构,根本算不上对x86/x64体系熟悉,因为,在处理器的虚拟化技术里需要使用的体系知识,对处理器在细节的地方进行虚拟化处理。
因此,《处理器虚拟化技术》适合有一定x86/x64体系知识基础或者想更深入学习x86/x64体系知识的读者。
目录
第1 章 系统平台 ............................................................................................. 1
1.1 环境及工具 .................................................................................................................. 1
1.1.1 使用VMware ........................................................................................................ 2
1.1.2 使用Bochs ............................................................................................................ 4
1.1.3 在真实机器上运行 ................................................................................................ 4
1.1.4 Build 工具............................................................................................................. 4
1.2 64 位与32 位代码的混合编译 ................................................................................... 7
1.2.1 使用符号__X64 ..................................................................................................... 7
1.2.2 指令操作数 ........................................................................................................... 8
1.2.3 64-bit 模式下其他指令处理 .................................................................................. 11
1.2.4 函数重定义表 ..................................................................................................... 15
1.3 地址空间 .................................................................................................................... 17
1.4 数据结构 .................................................................................................................... 23
1.4.1 PCB 结构 ............................................................................................................ 23
1.4.2 LSB 结构 ....................................................................................... 37
1.4.3 初始化PCB ........................................................................................................ 38
1.4.4 SDA 结构 ............................................................................................. 42
1.4.5 初始化SDA ........................................................................................................ 56
1.4.6 DRS 结构 ........................................................................................................... 57
1.5 系统启动 .................................................................................................................... 59
1.5.1 Boot 阶段 ........................................................................................................... 59
1.5.2 stage1 阶段 ......................................................................................................... 62
1.5.2.1 stage1 阶段的多处理器初始化 ................................................................. 66
1.5.2.2 BSP 的收尾工作 ..........................