1 / 58
文档名称:

虚拟化技术与云计算2_CPU虚拟化.pdf

格式:pdf   页数:58页
下载后只包含 1 个 PDF 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

虚拟化技术与云计算2_CPU虚拟化.pdf

上传人:tswng35 2016/1/18 文件大小:0 KB

下载得到文件列表

虚拟化技术与云计算2_CPU虚拟化.pdf

文档介绍

文档介绍:虚拟化技术与云计算虚拟化技术与云计算商彦磊商彦磊******@?绪论算体系架构与虚拟化技术?计算体系架构与虚拟化技术?虚拟化概述虚拟化概述?CPU的虚拟化内存虚拟化?内存虚拟化?I/O虚拟化?虚拟化实施与应用?虚拟化的现状与未来虚拟化的现状与未来CPU虚拟化?处理器虚拟化概述?可虚拟化条件?指令模拟?指令模拟?CPU软件虚拟化方案?CPU硬件虚拟化方案虚拟环境与可虚拟化条件?虚拟环境由三部分组成:硬件、虚拟机监视器(VMM)及虚拟机)及虚拟机?虚拟机可以视为物理机的一种高效隔离的复制:同质、高效、资源受控、高效、资源受控?虚拟机的三个特点决定了不是所有体系结构都可以虚拟化虚拟机虚拟机监视器硬件特权指令与敏感指令?多数计算机体系结构都有2个或以上的特权级,用来分隔系统软件和应用软件隔系统软件和应用软件。?系统中有一些操作和管理关键系统资源的指令会被定为特权指令令?特权指令只有在最高特权级上能够正确执行?如果在非最高特权级上运行,特权指令会引发异常,处理器会陷入到最高特权级器会陷入到最高特权级?在虚拟化后,有一类指令称为敏感指令,即操作特权资源的指令资源的指令?所有特权指令都是敏感指令;并不是所有敏感指令都是特权指令陷入再模拟?为使VMM完全控制系统资源,不允许直接执行虚拟机操作系统(客户OS)的敏感指令虚拟机操作系统(客户OS)的敏感指令?陷入再模拟?系统的所有敏感指令都是特权指令(前提)?将VMM运行在最高特权级,客户OS运行在非最高特权权级?陷入再模拟:当客户OS因执行敏感指令(此时也是特权指令)而陷入到VMM时VMM模拟执行引起异特权指令)而陷入到VMM时,VMM模拟执行引起异常的敏感指令虚拟化漏洞?一个系统是否可虚拟化:关键在该系统对敏感指令的支持上?所有指令都是特权指令:可虚拟化的结构?所有指令都是特权指令:可虚拟化的结构?无法支持在所有敏感指令上触发异常:不是可虚拟化的结构即存在“虚拟化漏洞”虚拟化的结构,即存在虚拟化漏洞?一个结构存在虚拟化漏洞:存在敏感指令不属于特权指令存在虚拟化漏洞系统的虚拟化方案?可采用一些方法弥补或避免虚拟化漏洞模拟的方法最直接?模拟的方法:最直接?解释执行:取一条指令,模拟出这条指令执行的效果再取下一条指令,再取下条指令?不存在陷入问题,避免了虚拟化漏洞?性能差?性能差?既要填补漏洞,又要保证性能,只能使用辅助手段:段:?直接在硬件层面填补虚拟化漏洞?通过软件避免虚拟机中使用到无法陷入的敏感指令3个概念1:虚拟寄存器?未虚拟化的系统中,OS直接访问物理处理器,处于最高特权级,可以控制系统的所有关键资源:寄存器、内存、I/O权级,可以控制系统的所有关键资源:寄存器、内存、I/O外设等?虚拟化后,VMM接管物理处理器,以前的OS变成客户OS降级到非最高特权级试图访问关键资源的指令成为敏感降级到非最高特权级。试图访问关键资源的指令成为敏感指令。?VMM通过多种方法保证这些敏感指令的执行能够触发异常通过多种方法保证这些敏感指令的执行能够触发异常,从而陷入到VMM进行模拟?当客户OS试图访问关键资源时,该请求并不会真正发生在物理寄存器VMM会通过准确模拟物理处理器的行为将物理寄存器。VMM会通过准确模拟物理处理器的行为,将其访问定位到VMM为其设计与物理寄存器对应的“虚拟”的寄存器上。3个概念2:上下文?进程上下文:某个时刻物理处理器中与运算相关的寄存器的状态构成了当前进程上下文存器的状态构成了当前进程上下文?当OS进行调度时,当前进程的上下文(即寄存器状态)被保存在特定的内存区域中,而下一个进程的上下被保存在特定的内存区域中而下个程的下文被恢复到相应的寄存器中,从进程的角度看就好像从未被中断一样。虚拟处理器上下文更复杂客户OS本身包含许多敏感?虚拟处理器上下文更复杂:客户OS本身包含许多敏感指令,会试图访问和修改物理处理器上定义的所有寄存器,这种访问和修改会被VMM重定位到虚拟处理器存器种访问和修改会被定位到虚拟处器上。?对虚拟处理器,其上下文包括了更多的系统寄存器。