当前位置:首页 > 虚拟化 > 正文

虚拟化与半虚拟化联系(虚拟化怎么开启)


一、半虚拟化和全虚拟化有什么区别和特点半虚拟化是通过与预先修改的客户操作系统内核共享主机的底层硬件来实现的。优点是半虚拟化虚拟机操作系统内核可以直接管理底层硬件,性能比全虚拟化技术更好。客户操作系统的内核必须提前修改,部署的便利性和灵活性不够。完全虚拟化直接在来宾和主机之间使用虚拟化逻辑层管理程序。完全模拟基本硬件细节。优点客户操作系统内核无需特殊配置,易于部署,灵活,兼容性强。缺点是客户操作系统内核无法直接管理底层硬件。底层硬件由虚拟机管理程序管理,需要转换开销并且性能比稍弱。
二、虚拟化技术中KVM,Xen,Qemu的区别和联系

虚拟化类型

FullVirtualization

全虚拟化也成为最初的虚拟化技术。该模型使用虚拟机来协调来宾操作系统和原始硬件VMM。为了协调来宾操作系统和裸硬件之间的操作,管理程序必须捕获并处理一些保护指令。

图1全虚拟化模型

全虚拟化运行速度比硬件模拟快,但性能不如裸机,因为hypervisor必须占用它。一些空间资源

半虚拟化

半虚拟化是另一种类似于全虚拟化的技术。它使用虚拟机管理程序来共享对底层硬件的访问,但来宾操作系统集成了虚拟化代码。这种方法不需要重新编译或陷阱,因为操作系统本身可以很好地与虚拟进程配合使用。

图2半虚拟化模型

对于半虚拟化,需要进行一些修改,以便客户操作系统能够识别出它处于虚拟化环境中。这。是的,但是半虚拟化提供了与原始操作系统类似的性能。

虚拟化技术

KVM(Kernel-basedVirtualMachine)基于内核的虚拟机

KVM是集成到Linux内核中的hypervisor,是X86架构。该硬件支持使用虚拟化技术(IntelVT或AMD-V)的Linux的完整虚拟化解决方案。它是一个小型的Linux模块,使用Linux执行许多任务,例如调度任务、管理内存以及与硬件设备交互。

图3KVM虚拟化平台架构

Xen

Xen是第一种运行在裸机上的虚拟化管理程序(hypervisor)。Xen支持完全虚拟化和半虚拟化,允许虚拟机管理程序和虚拟机相互通信,并且可在所有版本的Linux上免费使用,包括RedHatEnterpriseLinux和SUSELinuxEnterpriseServer。Xen最重要的优势是半虚拟化。它还可以直接运行未经修改的操作系统。为了实现高性能,必须模拟虚拟硬件。

图4Xen虚拟化平台架构

QEMU

QEMU是由FabriceBellard编写的用处理器模拟的免费软件集。它与Bochs和PearPC类似,但具有后两者所不具备的一些特性,例如高速和跨平台功能。QEMU可以通过开源加速器kqemu模拟接近真实计算机的速度。

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关系