欢迎来到天天文库
浏览记录
ID:38873033
大小:624.48 KB
页数:19页
时间:2019-06-20
《虚拟化技术原理》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、虚拟化技术原理杭州华三通信技术有限公司版权所有,未经授权不得使用与传播学习完本课程,您应该能够:熟悉虚拟化技术原理课程目标2服务器虚拟化虚拟机Ring3#1虚拟机Ring3#2App虚拟机Ring3#3虚拟机#4应用程序Ring2应用程序Ring2应用程序Ring2应用程序Ring1Ring1Ring1操作系统操作系统操作系统操作系统Ring0Ring0OSRing0Hypervisor服务器物理资源VT-xCPU内存网卡磁盘3CPU工作原理简介CPU专用寄存器内存硬盘通用寄存器总线应用程序指令&数据操作系统123456(特权资源)逻辑运算单元指令队列4
2、X86处理器的虚拟化X86架构存在17条敏感的非特权指令,运行时不会产生异常,这些指令在客户操作系统上的执行会破坏整个系统。Ring3AppApp(Ring3)App(Ring3)非特权OS(Ring1)OS(Ring1)Ring2敏感非特敏感非特指令权指令权指令特权指令特权指令Ring1敏感指令Ring0特权指令OS陷入模拟Ring0(VMM)特权资源特权资源55早期虚拟化解决方案二进制翻译半虚拟化Ring3AppRing3AppRing3AppRing3AppRing1OSRing1OSRing1OSRing1OS敏感非特敏感非特修改指令修改指令权指令
3、权指令翻译翻译HypercallsRing0(VMM)Ring0(VMM)特权资源特权资源6硬件辅助虚拟化解决方案虚拟机#1虚拟机#2虚拟机#3虚拟机#N应用程序应用程序应用程序应用程序虚拟机操作系统操作系统操作系统操作系统VMM功能资源管理/系统调度/用户接口VMMCPU虚拟化内存虚拟化输入/输出设备虚拟化输入/输出VT-x配置EPT配置设备VT-x物理平VT-xEPTVT-d台资源CPU0CPUn存储网络7处理器虚拟化-VMX硬件辅助虚拟化解决非特权敏Ring3App感指令无法陷入问题的解决思路:引入VMX模式(VirtualRing2VMX非根模式M
4、achineeXtension)Ring1VM-ExitRing0OSRing3VMX根模式Ring2VM-EntryRing1Ring0Hypervisor8处理器虚拟化-VMCS客户机状态域:保存非根模式下VCPU运行状态;客户机状态域宿主机状态域:保存根操作模式下CPU状态区域的运行状态;宿主机状态域VM执行控制域:控制VM-Exit操作发VM执行控制域生时的行为,比如某些敏感指令、异常控制区域VM-Exit控制域和中断是否产生VM-Exit操作;VM-Entry控制域和VM-Exit控制域:VM-Entry控制域对VM-Entry和VM-E
5、xit操作的具体行状态区域VM-Exit信息域为进行控制规定;VM-Exit信息域:存放VM-Exit产生的原因。9处理器虚拟化-虚拟化指令虚拟机Ring3#1虚拟机Ring3#2App虚拟机Ring3#3虚拟机#4VMX非根模式App(Ring3)Ring2App(Ring3)Ring2App(Ring3)Ring2App(Ring3)Ring1Ring1Ring1OS(Ring0)OS(Ring0)OS(Ring0)OS(Ring0)VMCALLRing0Ring0OSRing0VM-ExitVM-EntryApp(Ring3)VMX根模式Hyper
6、visor(Ring0)VMLAUNCHVMCLEARVMRESUME(VMREAD/VMWRITE)VMPTRLDVirtual-MachineControlStructure(VMCS)VT-x虚拟机#1虚拟机#2虚拟机#3虚拟机#4VT-x(VMCS)(VMCS)(VMCS)(VMCS)CPU0CPUn10内存虚拟化-虚拟机物理地址虚拟机#1虚拟机#2虚拟机#3虚拟机#4678678678678345345345345012012012012303132333435VMM242526272829181920212223负责管理和分配每个虚拟机的物理内
7、存1213141516176789101101234511内存虚拟化-EPT虚拟内存空间虚拟地址虚拟机操作系统内的页表虚拟机物理内存空间存放虚拟机的虚拟地影子页表址到宿主机物理地址(vTLB)虚拟机物理地址的映射关系虚拟机物理地址和宿主机EPT+TLB物理地址映射表宿主机物理内存空间宿主机物理地址12内存虚拟化-虚拟机物理地址虚拟机#1虚拟机#2虚拟机#3虚拟机#4678678678678345345345345012012012012303132333435VMM242526272829181920212223负责管理和分配每个虚拟机的物理内存12131
8、41516176789101101234513内存虚拟化-EPT虚
此文档下载收益归作者所有