什么是虚拟化技术?虚拟化技术是指实现虚拟化的具体的技术性手段和方法的集合性概念。虚拟化技术可以扩大硬件的容量,简化软件的重新配置过程。
在计算机中,虚拟化是一种资源管理技术,是将计算机的各种实体资源,如服务器、网络、内存及存储等,予以抽象、转换后呈现出来,打破实体结构间的不可切割的障碍,使用户可以比原本的组态更好的方式来应用这些资源。
这些资源的新虚拟部份是不受现有资源的架设方式,地域或物理组态所限制。一般所指的虚拟化资源包括计算能力和资料存储。
全虚拟化使用一个虚拟机作为虚拟机管理器(Hypervisor),统一调度客户操作系统与原始硬件,Hypervisor会捕捉和处理与虚拟化相关的特权指令,使客户操作系统无须修改就能运行,但性能也会低于物理机,代表性的产品包括ESX、KVM、OracleVirtualBox。
半虚拟化技术与全虚拟化有相似之处,也是利用Hypervisor来实现对底层硬件的共享访问,区别在于半虚拟化技术将与虚拟化相关的代码集成到客户操作系统中,使客户端操作系统与Hypervisor更好地配合,因此Hypervisor不需要重新编译或捕获特权指令,其性能可以非常接近物理机,缺点在于其支持的客户操作系统受限,用户体验较差,经典的产品有Xen和Hyper-
V。
操作系统虚拟化是通过对服务器操作系统进行简单的隔离来实现的,它具有更小的系统开销、抢占式的计算资源调度,以及快捷的弹性扩缩能力。
硬件辅助虚拟化是通过对部分全虚拟化和半虚拟化使用到的软件技术进行硬件化处理来提高性能,是对全虚拟化和半虚拟化的一种优化。
虚拟化技术虚拟机三件套VMware、VirtualPC、VirutalBox到如今大火的KVM和容器技术Docker虚拟化的三个基本条件等价性:程序在本地计算机执行和在虚拟机中执行应该表现出一样的结果(不包括…