虚拟化技术:百度百科中的定义是这样的:虚拟化是一个广义的术语,在计算机方面一般是指计算元件在虚拟的基础上而不是真实的基础上运行。虚拟化技术能够扩大硬件的容量,简化软件的从新配置过程。CPU的虚拟化技术能够单CPU模拟多CPU并行,容许一个平台同时运行多个操做系统,而且应用程序均可以在相互独立的空间内运行而互不影响,从而显著提升计算机的工做效率。这个定义已经比较完整了。windows
(完)全虚拟化技术:彻底虚拟化技术又叫硬件辅助虚拟化技术,最初所使用的虚拟化技术就是全虚拟化(Full Virtualization)技术,它在虚拟机(VM)和硬件之间加了一个软件层--Hypervisor,或者叫作虚拟机管理程序(VMM)。hypervisor 能够划分为两大类。首先是类型 1,这种 hypervisor 是直接运行在物理硬件之上的。其次是类型 2,这种 hypervisor 运行在另外一个操做系统(运行在物理硬件之上)中。类型 1 hypervisor 的一个例子是基于内核的虚拟机(KVM —— 它自己是一个基于操做系统的 hypervisor)。类型 2 hypervisor 包括 QEMU 和 WINE。性能
由于运行在虚拟机上的操做系统经过Hypervisor来最终分享硬件,因此虚拟机发出的指令需通过Hypervisor捕获并处理。为此每一个客户操做系统(Guest OS)所发出的指令都要被翻译成CPU能识别的指令格式,这里的客户操做系统便是运行的虚拟机,因此Hypervisor的工做负荷会很大,所以会占用必定的资源,因此在性能方面不如裸机。可是运行速度要快于硬件模拟。全虚拟化最大的优势就是运行在虚拟机上的操做系统没有通过任何修改,惟一的限制就是操做系统必须可以支持底层的硬件,不过目前的操做系统通常都能支持底层硬件,因此这个限制就变得微不足道了。全虚拟化技术如图1所示。优化
图1:全虚拟化技术spa
半/准虚拟化技术:半虚拟化技术是后来才出现的技术,半虚拟化技术英文是paravirtualization,也叫作准虚拟化技术,如今比较热门,它就是在全虚拟化的基础上,把客户操做系统进行了修改,增长了一个专门的API,这个API能够将客户操做系统发出的指令进行最优化,即不须要Hypervisor耗费必定的资源进行翻译操做,所以Hypervisor的工做负担变得很是的小,所以总体的性能也有很大的提升。不过缺点就是,要修改包含该API的操做系统,可是对于某些不含该API的操做系统(主要是windows)来讲,就不行能用这种方法。半/准虚拟化技术如图2所示。操作系统
图2:半/准虚拟化技术翻译
随着硬件虚拟化技术的逐渐演化,运行于Intel平台的全虚拟化的性能已经超过了准虚拟化产品,这一点在64位的操做系统上表现的更为明显。加之,全虚拟化不须要对客户机操做系统作任何修改的固有优点。能够预言,基于硬件的全虚拟化产品将是将来虚拟化技术的核心。blog
以上就是我参考了多方面资料总结出的内容,仅供参考。资源