批量上传,套装书可能不全,下单前咨询在线客服! 正版书 !!!
¥ 47.42 4.8折 ¥ 99 全新
库存9件
作者戚正伟、管海兵
出版社清华大学出版社
ISBN9787302589419
出版时间2021-10
装帧平装
开本16开
定价99元
货号29322348
上书时间2024-10-20
序一
面对新一轮全球科技产业竞争,更高效能的新一代系统的软硬件已成为各国政府高度重视并优先布局的方向。新应用、新技术、新计算架构、百亿级连接、爆炸式数据增长将重塑ICT(信息和通信技术)产业新格局,催生新的计算产业链条。如同在物理世界中电力是生产力一般,在数字经济时代,算力是生产力,驱动数字经济高质量发展。2019年,华为公司首次发布计算产业战略,以鲲鹏和昇腾为根基,围绕五大根技术CPU、NPU、OS、DB和AI框架,持续构建开放生态,联合产业伙伴共同推进计算产业发展。
由《鲲鹏计算产业发展白皮书》可知,“到2023年,全球基础软件市场空间将达1524.7亿美元,5年复合增长率为5.3%,中国基础软件市场拥有更大的活力和增长潜力。在操作系统、虚拟化等软件市场,新计算平台的出现,为厂商带来了更大的发展空间”。因此,虚拟化是计算全栈的重要技术之一,是基础软件生态的重要组成部分。
虚拟化技术当前主要应用于从云数据中心到边缘智能设备等 “云网边端”全场景。历史上,虚拟化技术和计算机的发展密切相关,相辅相成。从1959年开始,虚拟化技术就一直备受重视,在主机、服务器和云计算时代,虚拟化技术一直是计算的底层推动力之一。在早期的主机虚拟化和x86虚拟化阶段,我们的虚拟化技术整体受制于人。但随着新型硬件和新型计算架构的出现,我们在系统虚拟化方面取得了部分突破,并建立了基于多样化算力的虚拟化基础软件生态。我相信随着计算产业的持续战略投入,必将迎来一个以系统虚拟化等技术为代表的基础软件黄金时代。
计算产业的繁荣离不开生态的支持,华为公司将通过“硬件开放、软件开源、使能伙伴、发展人才”的方式构建计算产业生态,并为此建立了openEuler等一系列开源社区,持续投入开源社区建设,同时推出“华为智能计算技术丛书”。作为该丛书的重要组成部分,本书基于主流虚拟化架构,结合鲲鹏和openEuler操作系统的虚拟化技术,系统介绍了CPU、内存和I/O 虚拟化的基本原理,通过重要的虚拟化相关文献和静态源码解读深入理解原理,设计实验进行动态技术验证。通过“理论 实践”的有机结合,动手构建一个基于开源StratoVirt的轻量级虚拟化平台,希望帮助读者更好地理解系统虚拟化技术的来龙去脉。希望读者通过本书,将虚拟化技术更深入地应用到计算产业中,共同构建繁荣的可持续发展的基础软件新生态,共创数字经济新未来!
华为技术有限公司副总裁/计算产品线总裁
2021年9月
序二
互联网、物联网、5G移动通信、大数据、云计算、人工智能、虚拟现实、区块链等新一代信息技术将加速创新和应用步伐。随着算法、算力和数据的进一步发展,众多的新兴计算模式正在创造万物互联的新时代,数字化、网络化、智能化的基础设施将发挥更大的作用。云计算作为信息社会的重要基础设施,承载了物联网、大数据、人工智能等各种各样的应用,我国“十三五”规划将云计算列为国家的重大战略性新兴产业予以大力扶持和发展。在数字化基建的推动下,新技术、新模式不断发展,我国云计算迎来快速发展期,延伸出创新的应用场景和市场需求。我国拥有数量较多的网民和IT从业者,拥有较好的移动通信基础设施,拥有较多的超级应用需求,云计算基础设施具有超级应用驱动、系统深度集成和优化、平台高度可扩展的特点。因此,我国主要的云服务提供商倾向于构建自己的基础设施,并为其超级应用量身定制了大量优化,并且正朝着软硬件共同设计的方向发展,以提高效率和灵活性。由此可见,云计算规模的增长使效率成为首要的优化目标,基于深度集成和优化才能提供具有竞争力的云计算产品和服务。
系统虚拟化技术是云计算的核心支撑技术之一,我国在这方面长期落后。近年来,随着国内学术界和工业界的不断努力,系统虚拟化技术与国外的差距正在缩小,但国内这方面的人才比较缺乏。只有解决了人才问题,我们才能在国际竞争中不落下风。目前,鲲鹏计算产业生态正在蓬勃发展,从产业生态和人才培养的角度来看,《深入浅出系统虚拟化: 原理与实践》的出版有助于推广虚拟化技术,有利于构建软硬件协同、深度集成和优化的可扩展的自主云计算基础设施。本书系统地介绍了当前系统虚拟化技术的发展历史、基本原理和应用实践,包括CPU、内存和I/O等主要硬件资源的虚拟化方法和技术,以及华为公司的鲲鹏虚拟化架构和基于Rust的轻量级虚拟化平台。同时结合虚拟化技术领域的前沿研究,本书还介绍了通用“多虚一”架构的关键技术路线。通过本书的源码分析,读者能较为深入地了解系统虚拟化的基本原理,并通过相应的实验动手实践。本书适合用作高年级本科生或研究生学习虚拟化和云计算的教材,对于希望在虚拟化和云计算领域进行深入探索的研发人员,本书也是一部很好的参考书。
金海
华中科技大学教授/IEEE Fellow2021年9月
本书是一本论述系统虚拟化原理与实践的专业图书。全书分为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)。
第1章系统虚拟化概述00
1.1系统虚拟化基本概念00
1.2系统虚拟化的发展历史和趋势展望00
1.2.1发展历史00
1.2.2趋势展望0
1.3系统虚拟化的主要功能和分类0
1.3.1虚拟化基本功能0
1.3.2虚拟化分类0
1.3.3系统虚拟化实现方式0
1.4典型虚拟化系统0
1.4.1典型虚拟化系统简介0
1.4.2openEuler的虚拟化技术0
本章小结0
第2章CPU虚拟化0
2.1CPU虚拟化概述0
2.1.1敏感非特权指令的处理0
2.1.2虚拟机上下文切换0
2.1.3中断虚拟化0
2.2Intel VTx硬件辅助虚拟化概述0
2.2.1VMX操作模式0
2.2.2VMCS0
2.2.3PIC & APIC0
2.2.4Intel VTx中断虚拟化0
2.3QEMU/KVM CPU虚拟化实现0
2.3.1KVM模块初始化0
2.3.2虚拟机创建0
2.3.3vCPU创建0
2.3.4vCPU运行0
2.3.5实验:CPU虚拟化实例0
2.4QEMU/KVM中断虚拟化实现0
2.4.1PIC & IOAPIC模拟0
2.4.2PCI设备中断0
2.4.3QEMU/KVM中断路由0
2.4.4虚拟中断注入0
2.4.5实验:e1000网卡中断虚拟化0
2.5GiantVM CPU虚拟化0
2.5.1分布式vCPU0
2.5.2跨节点中断转发0
本章小结0
第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缩略语
本书是一本论述系统虚拟化原理与实践的专业图书。全书分为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)。
江大勇 华为鲲鹏计算领域副总裁
虚拟化技术已经存在超过60年,预计还将继续存在下去。《深入浅出系统虚拟化:原理与实践》理论联系实践,将CPU、内存、I/O等虚拟化原理作了系统梳理,结合ARM系的鲲鹏处理器与openEuler新兴的开源项目StratoVirt作了深入浅出的论述。本书对于广大开发者及高校学生读者都会有很大帮助。
胡欣蔚 openEuler技术委员会主席
从大型机时代开始,虚拟化就一直是系统软件栈的重要组成部分。近十年来,随着云计算的普及,虚拟化更成为应用上云的基础底座,对应用的性能、安全性有决定性影响,重要性愈发凸显。《深入浅出系统虚拟化:原理与实践》理论与实现并重,结合QEMU,从经典系统虚拟化原理入手;硬件上,覆盖了 x86 与 ARMv8 两个广泛使用的体系结构;软件上,融合了openEuler 开源社区中的虚拟化项目 StratoVirt。本书有助于读者从零开始学习并动手编写虚拟化平台,适合作为虚拟化技术爱好者及云计算行业从业者的入门参考书。
陈海波 上海交通大学软件学院教授,国家杰出青年科学基金获得者
系统虚拟化是现代云计算的核心支撑技术。5G、AI和IoT等构建的万物互联智能世界,将会为虚拟化技术提供更为广阔的应用场景。KVM/QEMU是目前主流的开源虚拟化项目,经过多年的发展,已经形成较为成熟和稳定的虚拟化框架。很高兴看到《深入浅出系统虚拟化:原理与实践》系统性地介绍了基于KVM/QEMU的虚拟化基础知识和配套实验案例,还介绍了华为鲲鹏虚拟化架构和轻量虚拟化平台。本书理论联系实际,对系统虚拟化技术的推广具有重要意义。
董耀祖 英特尔亚太研发有限公司资深首席工程师
系统虚拟化技术已经成为系统软件中广泛存在的一层,也是云计算领域的基础核心技术之一,极大地推动了今天的云计算产业。《深入浅出系统虚拟化:原理与实践》不仅系统地介绍了当今主流架构的基本虚拟化原理和方法,还深入介绍了CPU、内存和I/O虚拟化的工程实践与学术研究成果,对虚拟化初学者和专业人士,都是一部优秀的参考图书。此外,本书还基于Rust语言实现了一个轻量级的虚拟机平台,有助于读者理解和开启自己的虚拟化编程实践,把握虚拟化技术的基本脉络。
— 没有更多了 —
以下为对购买帮助不大的评价