本站支持尊重有效期内的版权/著作权,所有的资源均来自于互联网网友分享或网盘资源,一旦发现资源涉及侵权,将立即删除。希望所有用户一同监督并反馈问题,如有侵权请联系站长或发送邮件到ebook666@outlook.com,本站将立马改正
基本信息 |
|||
书 名 |
深入浅出系统虚拟化 原理与实践 |
||
外文书名 |
|
出版社 |
清华大学出版社 |
作 者 |
戚正伟 管海兵 |
定 价 |
9900元 |
出版时间 |
2021-10-01 |
I S B N |
9787302589419 |
套装书 |
否 |
重 量 |
KG |
装 帧 |
平装 |
版 次 |
1 |
字 数 |
|
配套资源 | |
页 数 |
704 |
开 本 |
16开 |
|
内容简介 |
|||
本书是一本论述系统虚拟化原理与实践的专业图书。全书分为6章,第1章概述系统虚拟化的基本概念、发展历史、趋势展望、主要功能和分类,以及目前典型的虚拟化系统,并介绍openEuler操作系统的虚拟化技术。第2~4章分别介绍系统虚拟化的三大组成部分: CPU虚拟化、内存虚拟化和I/O虚拟化的相关原理,并配备相应实验便于读者理解。第5章介绍基于ARMv8的鲲鹏虚拟化架构,并概述其CPU、中断、内存、I/O和时钟虚拟化的基本原理。第6章结合代码讲解轻量级虚拟化平台StratoVirt的基本原理和技术特点,读者可以跟随本书从零开始打造一个具备基本功能的轻量级虚拟化平台。 为便于读者高效学习、深入掌握系统虚拟化的基本原理,本书的源代码及安装运行说明均保存于GiantVM和 StratoVirt开源社区。后续将通过开源社区进行代码更新和线上交流。
本书可作为相关领域工程技术人员的参考书,也可作为高年级本科生和研究生的学习用书,还可作为对虚拟化技术感兴趣的爱好者的自学用书。
|
目 录 |
|||
第1章系统虚拟化概述 1.1系统虚拟化基本概念 1.2系统虚拟化的发展历史和趋势展望 1.2.1发展历史 1.2.2趋势展望 1.3系统虚拟化的主要功能和分类 1.3.1虚拟化基本功能 1.3.2虚拟化分类 1.3.3系统虚拟化实现方式 1.4典型虚拟化系统 1.4.1典型虚拟化系统简介 1.4.2openEuler的虚拟化技术 本章小结 第2章CPU虚拟化 2.1CPU虚拟化概述 2.1.1敏感非特权指令的处理 2.1.2虚拟机上下文切换 2.1.3中断虚拟化 2.2Intel VTx硬件辅助虚拟化概述 2.2.1VMX操作模式 2.2.2VMCS 2.2.3PIC & APIC 2.2.4Intel VTx中断虚拟化 2.3QEMU/KVM CPU虚拟化实现 2.3.1KVM模块初始化 2.3.2虚拟机创建 2.3.3vCPU创建 2.3.4vCPU运行 2.3.5实验:CPU虚拟化实例 2.4QEMU/KVM中断虚拟化实现 2.4.1PIC & IOAPIC模拟 2.4.2PCI设备中断 2.4.3QEMU/KVM中断路由 2.4.4虚拟中断注入 2.4.5实验:e1000网卡中断虚拟化 2.5GiantVM CPU虚拟化 2.5.1分布式vCPU 2.5.2跨节点中断转发 本章小结 第3章内存虚拟化 3.1内存虚拟化概述 3.2内存虚拟化的实现 3.2.1虚拟内存的实现:页表 3.2.2内存虚拟化的软件实现:影子页表 3.2.3内存虚拟化的硬件支持:扩展页表 3.2.4扩展页表与影子页表的结合:敏捷页表 3.2.5内存的半虚拟化:直接页表映射与内存气球 3.3QEMU/KVM内存虚拟化源码 3.3.1QEMU内存数据结构 3.3.2实验:打印MemoryRegion树 3.3.3KVM内存数据结构 3.3.4实验:将GVA翻译为HPA 3.4GiantVM内存虚拟化 3.4.1分布式共享内存 3.4.2GiantVM中的DSM架构 3.4.3GiantVM中DSM的实现 本章小结 第4章I/O虚拟化 4.1I/O虚拟化概述 4.1.1I/O过程 4.1.2I/O虚拟化的基本任务 4.1.3软件实现的I/O虚拟化 4.1.4硬件辅助的I/O虚拟化 4.2I/O虚拟化的实现方式 4.2.1PCI设备简介 4.2.2设备模拟 4.2.3I/O半虚拟化 4.2.4设备直通访问 4.2.5VFIO 4.2.6SRIOV 4.3QEMU/KVM虚拟设备的实现 4.3.1QEMU对象模型 4.3.2主板芯片组与总线模拟 4.3.3QEMU/KVM设备访问的模拟 4.3.4实验:为edu设备添加设备驱动 4.4GiantVM中的I/O处理 4.4.1PIO 转发 4.4.2MMIO 转发 4.4.3DMA 的处理 本章小结 第5章鲲鹏虚拟化 5.1鲲鹏虚拟化框架 5.1.1鲲鹏虚拟化简介 5.1.2EL2虚拟化框架 5.2鲲鹏CPU虚拟化 5.2.1CPU虚拟化 5.2.2EL2异常级 5.2.3VHE 5.3鲲鹏中断虚拟化 5.3.1GICv1 5.3.2GICv2 5.3.3GICv3/GICv4 5.3.4GICv3/GICv4中断虚拟化 5.4鲲鹏内存虚拟化 5.4.1VMSAv864架构概述 5.4.2地址空间与页表 5.4.3内存属性、访问权限与缺页异常 5.4.4MPAM 5.5鲲鹏I/O虚拟化 5.5.1MMIO的模拟 5.5.2DMA重映射——SMMUv3 5.5.3SMMUv3中的缓存机制 5.6鲲鹏时钟虚拟化 本章小结 第6章轻量级虚拟化平台StratoVirt 6.1StratoVirt概述 6.2发展背景 6.3StratoVirt架构设计 6.3.1CPU子系统 6.3.2内存子系统 6.3.3I/O子系统 6.4从零开始构建StratoVirt 6.4.1总体介绍 6.4.2KVM模型 6.4.3内存模型 6.4.4CPU模型 6.4.5BootLoader实现 6.4.6串口实现 6.4.7Epoll实现 6.4.8鲲鹏平台支持 本章小结 参考文献 附录A缩略语 |