处理器虚拟化——VMX
Intel提供3个层面的虚拟化技术(Intel Virtualization Technology)
1.基于处理器的虚拟化技术(Intel VT-X) 全称为 Virtualization Technology for x86
2.基于PCI总线域设备实现的I/O虚拟化技术(Intel VT-D) 全称为Virtualization Technology for Directed I/O
3.基于网络的虚拟化技术(Intel VT-C) 全称为Virtualization Technology for Connectify
VT 是对资源的虚拟化管理的结果
在CPU端的虚拟化里 实现了VMX(Virtual-Machine Extensions,虚拟机扩展)架构
包含两种角色环境 VMM(Virtual Machine Monitor,虚拟机监管者)host
VM(Virtual Machine,虚拟机)guest
guest端软件访问的资源受到VMM的监管
VMM通过EPT(Extend Page Table,扩展页表)来实现“guest端物理地址到Host端物理地址”的转化
使得Guest访问到其他的物理区域
在开启EPT机制下 会产生两个地址概念:GPA(Guest Physical Address) 和 HPA(Host Physical Address)
HPA 真正的物理地址
在VMX架构下 至少需要实现一个“VMXON region” 以及 “VMCS region”的物理区域
VMXON区域对应于VMM VMM使用VMXON区域对一些数据进行记录和维护
每个VM需要对应自己的VMCS(VIrtual Machine Structure 虚拟机控制结构)
VMM使用VMCS来配置VM的运行环境 以及控制VM的运行
检测VMX支持
VMX支持 检测CPUID.01H:ECX[5].VMX位来确定是否支持VMX架构 1表示支持
开启VMX进入允许
要开启VMX operation模式 必须先开启CR4.VMXE控制位 1表示开启
VMX root operation模式处理器的CPL(Current Privilege Level) 必须为0 VMM运行的环境
VMX non-root operation VM运行的环境
root ----------> non root VM-entry
non-root ---------> root VM-exit
导致VM exit发生的三大类途径如下。
1) 执行无条件引发VM exit的指令。包括CPUID,GETSEC,INVD与XSETBV指令以及所有的VMX指令(除了VMFUNC指令)
2) 遇到无条件引发VM exit的未被阻塞的事件。例如,INT信号,SIPI消息等。
3) 遇到VMM设置引发VM exit的条件,包括执行某些指令或者遇到某些事件发生。
处理器虚拟化——VMX相关推荐
- 云计算虚拟化技术与开发-------虚拟化技术应用第二章内容(CPU虚拟机X86要解决的问题、VT-x、VMX、vCPU、EPT、VT-d)
目录 第二章:虚拟化实现技术架构 CPU虚拟机要解决的问题(x86处理器结构漏洞)及软硬件解决方案 intel VT-x的技术特点,VMX(非根操作)的操作模式及操作流程 vCPU的组成和基本操作 内 ...
- kvm架构详解--理解CPU、内存、IO虚拟化技术、处理器硬件支持
1. 简介 当前的主流虚拟化实现技术分为两种: VMM(虚拟化监控器)运行在硬件平台上,控制所有硬件并管理guest os.guest os运行在比VMM更高的级别.例如xen. VMM运行在宿主操作 ...
- (四)系统虚拟化关键技术
一.系统虚拟化的主要作用 1. 隔离:工作负载,之前单个系统跑两个app,做好隔离,可以分两个虚拟机 2. 合并:之前两台物理机运行两个app,现在一台物理机运行两个app 3. ...
- VMX(1) -- 简介
VMX(Virtual Machine Extension)是Intel 64和IA-32架构处理器级别的功能,用于支持虚拟化.VMX支持两种类型的软件: Virtual-machine monito ...
- VMX(2) -- VMCS理解
在虚拟化中,为了实现vCPU,既要模拟CPU的运行,又要记录vCPU的状态(包括对vCPU运行的控制信息),在Intel x86处理器的VMX(Virtual Machine Extension)功能 ...
- KVM虚拟化平台搭建、工作模式与原理
文章目录 简介 1.虚拟化技术 1.1 概述 1.2 虚拟化技术的发展雏形 1.3 虚拟化类型 2.KVM架构和原理 2.1 KVM简介 2.2 KVM虚拟化架构/三种模式 2.3 KVM原理 2.3 ...
- Virtualbox源码分析16 APIC虚拟化1 APIC概念和初始化
文章目录 中断是什么 中断是如何被发送给CPU的 16.1 xAPIC and x2APIC 16.2 Local APIC Page里的寄存器和对应的重要概念 APIC ID 中断优先级类型的寄存器 ...
- 虚拟机扩展(VMX)简介
20.1 概述 这个章节描述虚拟机的基础架构和VMX支持处理器硬件虚拟化的多个软件环境的概述. 有关 VMX 指示的信息在 Intel(R) 64 和 IA-32 架构软件开发人员手册VMX的其 ...
- 服务器基础设置:H3C服务器,ilo地址,管理员密码、PXE启动、虚拟化是否打开
服务器基础设置:H3C服务器,ilo地址,管理员密码.PXE启动.虚拟化是否打开 最近机房来了一批H3C的服务器需要对其做一些基础配置,为了方便记忆所以进行记录. 首先,重启服务器Esc或delete ...
- KVM详细介绍及搭建KVM虚拟化平台构建Centos7系统
目录 一.KVM简介 1.发展历程 2.原理简介 3.虚拟化类型 4.虚拟化技术的优劣 5.KVM实际应用 二.KVM 运行时的三种模式 三.kvm部署过程 1.安装KVM前的环境部署 2.cento ...
最新文章
- bind merge r 和join_R语言数据合并
- 寄存器理解 及 X86汇编入门
- 线性模型和非线性模型的区别
- Windows中安装Apache2和PHP4权威指南
- 首个64层3D NAND闪存技术出现
- 堆排序(如何手写堆)
- 2 Oracle用户和表空间
- 计算机操作简介,什么是计算机操作的快捷键?计算机操作快捷方式简介
- 【windows】windows系统下,在任务管理器的进程选项卡中查看PID/任务管理器怎么查看PID...
- Chrome截图扩展程序-“截图快手”
- substr判断最后一个是不是逗号_考研最后一个月是不是很累?
- Good Numbers (hard version)cf#595(Div.3)
- iPad连蓝牙鼠标鼠标滚动与屏幕相反的解决方法
- 房聚良源系统功能介绍(SpringBoot)
- 微信分享appID注册一次后即绑定该应用?
- 在matlab中syms是什么,syms在matlab中的作用是什么
- JDBC基础理解与实现操作
- 【时间转换】将秒转换成“时分秒”格式
- html 表格自动编号,excel表格批量自动编号
- Fiddle工具的使用
热门文章
- 天敏盒子系统停止服务器,天敏网络机顶盒今天怎么停服了?
- Anylogic-----------集合Collection
- Anylogic学习--------------智能体(可用于复杂装备系统建模)
- 黄聪:微信h5支付demo微信H5支付demo非微信浏览器支付demo微信wap支付
- 十、基于FPGA的PCIE协议介绍(一)
- python 身份证识别_Card-Ocr:身份证识别 OCR
- python中pass的使用_Python pass详细介绍及实例代码
- PASS云计算书简介——接近完美的模式
- Linux系统下架设PPTP ×××服务器
- vmware虚拟机连接网络