计算机
类型
可以朗读
语音朗读
367千字
字数
2021-09-01
发行日期
展开全部
主编推荐语
从源码到实验,剖析主流系统虚拟化技术,助力计算产业。
内容简介
本书分为6章:
第1章概述系统虚拟化的基本概念、发展历史、趋势展望、主要功能和分类,以及目前典型的虚拟化系统,并介绍openEuler操作系统的虚拟化技术。
第2~4章分别介绍系统虚拟化的三大组成部分:CPU虚拟化、内存虚拟化和I/O虚拟化的相关原理,并配备相应实验便于读者理解。
第5章介绍基于ARMv8的鲲鹏虚拟化架构,并概述其CPU、中断、内存、I/O和时钟虚拟化的基本原理。
第6章结合代码讲解轻量级虚拟化平台StratoVirt的基本原理和技术特点,读者可以跟随本书从零开始打造一个具备基本功能的轻量级虚拟化平台。
本书可作为相关领域工程技术人员的参考书,也可作为高年级本科生和研究生的学习用书,还可作为对虚拟化技术感兴趣的爱好者的自学用书。
目录
- 版权信息
- 内容简介
- 作者简介
- 华为技术有限公司
- 序一 FOREWORD
- 序二 FOREWORD
- 前言 PREFACE
- 第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.2 openEuler的虚拟化技术
- 本章小结
- 第2章 CPU虚拟化
- 2.1 CPU虚拟化概述
- 2.1.1 敏感非特权指令的处理
- 2.1.2 虚拟机上下文切换
- 2.1.3 中断虚拟化
- 2.2 Intel VT-x硬件辅助虚拟化概述
- 2.2.1 VMX操作模式
- 2.2.2 VMCS
- 2.2.3 PIC&APIC
- 2.2.4 Intel VT-x中断虚拟化
- 2.3 QEMU/KVM CPU虚拟化实现
- 2.3.1 KVM模块初始化
- 2.3.2 虚拟机创建
- 2.3.3 vCPU创建
- 2.3.4 vCPU运行
- 2.3.5 实验:CPU虚拟化实例
- 2.4 QEMU/KVM中断虚拟化实现
- 2.4.1 PIC & IOAPIC模拟
- 2.4.2 PCI设备中断
- 2.4.3 QEMU/KVM中断路由
- 2.4.4 虚拟中断注入
- 2.4.5 实验:e1000网卡中断虚拟化
- 2.5 GiantVM 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.3 QEMU/KVM内存虚拟化源码
- 3.3.1 QEMU内存数据结构
- 3.3.2 实验:打印MemoryRegion树
- 3.3.3 KVM内存数据结构
- 3.3.4 实验:将GVA翻译为HPA
- 3.4 GiantVM内存虚拟化
- 3.4.1 分布式共享内存
- 3.4.2 GiantVM中的DSM架构
- 3.4.3 GiantVM中DSM的实现
- 本章小结
- 第4章 I/O虚拟化
- 4.1 I/O虚拟化概述
- 4.1.1 I/O过程
- 4.1.2 I/O虚拟化的基本任务
- 4.1.3 软件实现的I/O虚拟化
- 4.1.4 硬件辅助的I/O虚拟化
- 4.2 I/O虚拟化的实现方式
- 4.2.1 PCI设备简介
- 4.2.2 设备模拟
- 4.2.3 I/O半虚拟化
- 4.2.4 设备直通访问
- 4.2.5 VFIO
- 4.2.6 SR-IOV
- 4.3 QEMU/KVM虚拟设备的实现
- 4.3.1 QEMU对象模型
- 4.3.2 主板芯片组与总线模拟
- 4.3.3 QEMU/KVM设备访问的模拟
- 4.3.4 实验:为edu设备添加设备驱动
- 4.4 GiantVM中的I/O处理
- 4.4.1 PIO转发
- 4.4.2 MMIO转发
- 4.4.3 DMA的处理
- 本章小结
- 第5章 鲲鹏虚拟化
- 5.1 鲲鹏虚拟化框架
- 5.1.1 鲲鹏虚拟化简介
- 5.1.2 EL2虚拟化框架
- 5.2 鲲鹏CPU虚拟化
- 5.2.1 CPU虚拟化
- 5.2.2 EL2异常级
- 5.2.3 VHE
- 5.3 鲲鹏中断虚拟化
- 5.3.1 GICv1
- 5.3.2 GICv2
- 5.3.3 GICv3/GICv4
- 5.3.4 GICv3/GICv4中断虚拟化
- 5.4 鲲鹏内存虚拟化
- 5.4.1 VMSAv8-64架构概述
- 5.4.2 地址空间与页表
- 5.4.3 内存属性、访问权限与缺页异常
- 5.4.4 MPAM
- 5.5 鲲鹏I/O虚拟化
- 5.5.1 MMIO的模拟
- 5.5.2 DMA重映射——SMMUv3
- 5.5.3 SMMUv3中的缓存机制
- 5.6 鲲鹏时钟虚拟化
- 本章小结
- 第6章 轻量级虚拟化平台StratoVirt
- 6.1 StratoVirt概述
- 6.2 发展背景
- 6.3 StratoVirt架构设计
- 6.3.1 CPU子系统
- 6.3.2 内存子系统
- 6.3.3 I/O子系统
- 6.4 从零开始构建StratoVirt
- 6.4.1 总体介绍
- 6.4.2 KVM模型
- 6.4.3 内存模型
- 6.4.4 CPU模型
- 6.4.5 BootLoader实现
- 6.4.6 串口实现
- 6.4.7 Epoll实现
- 6.4.8 鲲鹏平台支持
- 本章小结
- 附录A 缩略语
展开全部
出版方
清华大学出版社
清华大学出版社成立于1980年6月,是由教育部主管、清华大学主办的综合出版单位。植根于“清华”这座久负盛名的高等学府,秉承清华人“自强不息,厚德载物”的人文精神,清华大学出版社在短短二十多年的时间里,迅速成长起来。清华大学出版社始终坚持弘扬科技文化产业、服务科教兴国战略的出版方向,把出版高等学校教学用书和科技图书作为主要任务,并为促进学术交流、繁荣出版事业设立了多项出版基金,逐渐形成了以出版高水平的教材和学术专著为主的鲜明特色,在教育出版领域树立了强势品牌。