深入浅出系统虚拟化:原理与实践(华为智能计算技术丛书)

深入浅出系统虚拟化:原理与实践(华为智能计算技术丛书)

查阅电子书
手机扫码
  • 微信扫一扫

    关注微信公众号

因版权原因待上架

编辑推荐

从源码到实验,剖析主流系统虚拟化技术,助力计算产业。

内容简介

本书是一本论述系统虚拟化原理与实践的专业图书。全书分为6章,第1章概述系统虚拟化的基本概念、发展历史、趋势展望、主要功能和分类,以及目前典型的虚拟化系统,并介绍openEuler操作系统的虚拟化技术。第2~4章分别介绍系统虚拟化的三大组成部分: CPU虚拟化、内存虚拟化和I/O虚拟化的相关原理,并配备相应实验便于读者理解。第5章介绍基于ARMv8的鲲鹏虚拟化架构,并概述其CPU、中断、内存、I/O和时钟虚拟化的基本原理。第6章结合代码讲解轻量级虚拟化平台StratoVirt的基本原理和技术特点,读者可以跟随本书从零开始打造一个具备基本功能的轻量级虚拟化平台。

为便于读者高效学习、深入掌握系统虚拟化的基本原理,本书的源代码及安装运行说明均保存于GiantVM和 StratoVirt开源社区。后续将通过开源社区进行代码更新和线上交流。

本书可作为相关领域工程技术人员的参考书,也可作为高年级本科生和研究生的学习用书,还可作为对虚拟化技术感兴趣的爱好者的自学用书。


作者简介

戚正伟,博士,上海交通大学电信学院/软件学院教授/博导,CCF杰出会员, CCF系统软件和理论计算机专委会委员,微软亚洲研究院访问教师、美国CMU大学访问学者(美方教授为Edmund Clarke,计算机图灵奖得主) 。2011年入选教育部新世纪优秀人才计划,获得上海市技术发明一等奖、教育部科技进步一等奖、教育部技术发明一等奖、国家科技进步奖二等奖各一项,出版译著《UNIX环境高级编程(第2版)》,为2008、2009年度畅销榜TOP50(China-Pub)。出版专著《BlewBluePill:深入理解硬件虚拟机》((获得IBM出版计划资助)和译著《UNIX高级环境编程(第3版)》(京东计算机与互联网图书2014/2015年度销售榜Top 100)。

章节目录

版权信息

内容简介

作者简介

华为技术有限公司

序一 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 缩略语

深入浅出系统虚拟化:原理与实践(华为智能计算技术丛书)是2021年由清华大学出版社出版,作者戚正伟,管海兵。

得书感谢您对《深入浅出系统虚拟化:原理与实践(华为智能计算技术丛书)》关注和支持,如本书内容有不良信息或侵权等情形的,请联系本网站。

购买这本书

你可能喜欢
深度学习原理与实践 电子书
(1)大量图例,简单易懂。作者亲自绘制了大量插图,力求还原深度学习的算法思想,分解和剖析晦涩的算法,用图例来表示复杂的问题。生动的图例也能给读者带来阅读乐趣,快乐地学习算法知识,体会深度学习的算法本质。 (2)简化公式,生动比喻。深度学习和机器学习类的书中通常会有大量复杂冗长的算法公式,为了避免出现读者读不懂的情况,本书尽可能地统一了公式和符号,简化相关公式,并加以生动的比喻进行解析。在启发读者的同时,锻炼读者分析问题和解决问题的能力。 (3)算法原理,代码实现。在介绍深度学习及相关算法的原理时,不仅给出了对应的公式,还给出了实现和求解公式的代码,让读者明确该算法的作用、输入和输出。原理与代码相结合,使得读者对深度学习的算法实现更加具有亲切感。 (4)深入浅出,精心剖析。理解深度学习需要一定的机器学习知识,本书在D1章介绍了深度学习与机器学习的关系,并简要介绍了机器学习的内容。在内容安排上,每章依次介绍模型框架的应用场景、结构和使用方式,最后通过真实的案例去全面分析该模型结构。目的是让读者可以抓住深度学习的本质。 (5)入门实践,案例重现。每一章最后的真实案例不是直接堆砌代码,而是讲解使用该算法模型的原因和好处。从简单的背景知识出发,使用前文讲解过的深度学习知识实现一个实际的工程项目。实践可以用于及时检验读者对所学知识的掌握程度,为读者奠定深度学习的实践基础。 将一本技术书籍写得通俗易懂谈何容易,但《深度学习原理与实践》这本书确实做到了。书中对近年来火热的深度学习理论知识进行简单剖析,化繁为简,没有局限于坐而论道,而是将实例和数学理论相结合,让读者能够快速理解各种模型并上手实践,值得细读。 --唐春明 广州大学数学与信息学科学院副院长 本书从原理、方法、实践这 3 个维度系统地介绍了深度学习的方方面面,内容详实,解读清晰,细节与全貌兼顾,既适合初学者阅读,也可以作为深入研究的参考用书。 --杨刚 西安电子科技大学教授 近年来出版的深度学习相关图书中,本书是我见过非常有指导意义的中文书籍之一。本书对 ANN、CNN、RNN 等模型进行深入浅出的介绍,引入大量图例和简化后的公式,让算法浅显易懂。每一章的实践内容都给人惊喜,强烈推荐! --吴健之 腾讯音乐高级工程师 作为产品经理,我能看懂的深度学习书籍实在太少了。本书恰到好处,插图丰富直观,数学公式简练,很喜欢此类风格的图书,易懂好学。即使你不是程序员或算法专家,该书也值得一看! --张瑞 中软国际高级产品经理
边缘计算原理与实践 电子书
本书对边缘计算的发展历史与趋势、几种典型的边缘计算技术的基本架构与原理进行了阐述,并对边缘计算涉及的关键技术与最新进展、部署方案、应用场景与实践进行了详细讲解。本书涉及的内容广泛、技术思想凝炼,突出核心原理和关键技术的阐述,同时力图深入讲解边缘计算开源平台的使用过程。本书对从事边缘计算技术研发的专业人士、网络运营管理人员、相关专业高校学生以及对边缘计算技术感兴趣的读者,都具有一定的参考价值。
云计算原理与实践 电子书
本书系统地讲解了云计算的知识框架,包括云计算的三大认识角度(商业模式、计算范式、实现方式)、四个关键技术(计算、存储、网络、安全)、四种开发运维维度(云原生应用、云操作系统、云端软件、云运维),以及三大应用场景(云桌面、开发云、大数据与人工智能)。本书在大部分的章中安排了一个或多个基于开源软件的实训内容,以帮助读者更有效地动手实践,包括GitHub、Hadoop、OpenStack、KVM、Doc
深度学习原理与 TensorFlow实践 电子书
本书介绍了深度学习原理与TensorFlow实践。着重讲述了当前学术界和工业界的深度学习核心知识:机器学习概论、神经网络、深度学习。着重讲述了深度学习的实现以及深度学习框架TensorFlow:Python编程基础、TensorFlow编程基础、TensorFlow模型、TensorFlow编程实践、TensorFlowLite和TensorFlow.js、TensorFlow案例--医学应用和S
云计算技术与应用基础 电子书
本书从云计算技术与应用的8个维度对云计算技术基础进行了全面介绍,内容包括云概述、云标准、云存储、云服务、云桌面、云安全、云技术和云应用。编者搜集、整理、制作了大量的典型案例,帮助读者揭开云计算的神秘面纱,为后续云计算相关技术的深入学习和应用实践奠定基础。书中合理设置了认知(知识学习)、体验(案例剖析)、提升(课外拓展)环节,为读者学习提供便利。本书适合作为计算机类相关专业云计算技术的入门教材,也可