图1全虚拟化模型
绳虚拟化运行速度比硬件模拟快,但性能不如裸机虚拟机管理程序必须处理一些资源
半虚拟化是另一种类似于完全虚拟化的技术。它使用虚拟机管理程序来共享对底层硬件的访问。这种方法不包括任何重新编译或缺陷,需要操作系统。其本身与虚拟环境中的虚拟进程配合良好。是的,但是半虚拟化提供了与原始操作系统类似的性能。
虚拟技术
KVM(Kernel-basedVirtualMachine)基于内核的虚拟机
KVMhypervisor嵌入Linux内核,拥有硬件支持Linux的全虚拟化解决方案使用虚拟化技术(IntelVT或AMD-V)。它是一个小型的Linux模块,使用Linux来做很多事情,比如任务调度、内存管理和硬件通信。
图3KVM虚拟化平台架构
Xen
Xen是第一种运行在裸机上的虚拟化管理程序(Hypervisor)。它支持全虚拟化和半虚拟化,支持Xen虚拟机管理程序和共享虚拟机,并在所有Linux版本上提供免费产品,包括LinuxRedHatEnterprise和SUSELinuxEnterpriseServer。Xen的主要优点是半虚拟化。此外,未经修改的操作系统也必须直接在虚拟硬件上进行模拟,以获得高性能。
图4Xen虚拟化平台架构
QEMU
QEMU是一个由FabriceBellard编写的模拟处理器的免费软件程序。它与Bochs和PearPC类似,但它具有这两者所没有的一些特性,例如高速和跨平台特性。通过开源加速器kqemu,QEMU可以模拟接近真实计算机的速度。
KVM与QEMU的关系
准确的说,KVM是一个Linux内核模块。您可以使用modprobe命令加载KVM模块。模块加载后,您可以通过其他工具进一步创建虚拟机。但仅靠KVM模块是不够的,因为它无法直接控制内核模块的用户做事。对于这个用户空间工具,kvm开发人员选择了已经成熟的开源虚拟化软件QEMU。如前所述,QEMU也是一个虚拟化软件。它的特点是可以虚拟不同的CPU。例如,PowerCPU可以虚拟成x86CPU,并可以用来编译可以在Power上运行的程序。KVM使用了QEMU的一部分,并稍作修改,成为可以控制KVM的用户空间工具。所以你会看到官方的KVM下载有两个部分(qemu和kvm)和三个文件(KVM模块、QEMU工具和两者的集合)。换句话说,只需升级KVM模块或QEMU工具即可。这就是KVM和QEMU的关系。
图5KVM与QEMU关系
上一篇:虚拟机的三种架构
下一篇:服务器虚拟化实现方式分为