虚拟化
云计算的一个核心思想就是在服务器端提供集中的计算资源。这些计算资源可以被分解成更小的单位去独立服务于不同的用户,也就是在共享物理资源的同时,为每个用户提供隔离,安全,可信的虚拟工作环境,而这一切不可避免的要依赖于虚拟化技术。
这种硬件抽象层的虚拟化又被称为系统虚拟化,是指将一台物理计算系统虚拟化为一台或多台虚拟计算机主机。每个虚拟计算机系统(简称虚拟机)都拥有自己的虚拟硬件,如内存,CPU,网卡等设备,并提供一个独立的虚拟机执行环境。通过虚拟机监控器(VMM,也可以称为Hypervisor)的模拟,虚拟机中的操作系统(Guest OS,客户机操作系统)认为自己仍然是独占一个系统在运行。在一台物理机上运行的每个虚拟机中的操作系统都是完全可以不同的,并且它们的执行环境是完全独立的。
基于二进制翻译的全虚拟化
Hypervisor运行在Ring 0
Guest OS运行在Ring 1
机制:异常、捕获、翻译
示例:
VMware Workstation
QEMU
Virtual PC
运行方式:Hypervisor模拟一个CPU给VM,来宾操作系统不需要做任何修改。Hypervisor对来宾操作系统上的ring0上的一些指令进行翻译,变成真正的CPU指令。
半虚拟化也称为:超虚拟化,操作系统辅助虚拟化
Hypervisor运行在Ring 0
Guest OS不能直接运行在Ring 0,需要对kernel进行修改,将运行在Ring 0上的,指令转为调用Hypervisor,guest操作系统是直到自己运行在虚拟化平台的,省去了全虚拟化的大量的捕获模拟等操作
Guest OS上的APP运行在Ring 3
示例:Xen
Intel VT和AMD-V创建一个新的Ring -1单独给Hypervisor使用
Guest OS可以直接使用Ring 0而无需修改
示例:
VMware Esxi
Microsoft Hyper-V
Xen3.0
KVM
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。