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

qemu多个虚拟机卡顿


一、kvm和QEMU有何区别?KVM由许多部分组成:首先,它是一个Linux内核模块(现已包含在主线中),用于将处理器转换为新的用户(guset)模式。用户模式有自己的一组环状态,但特权ring0的指令将落入管理程序代码中。由于这是新的处理器执行模型,因此不需要更改代码。
除了处理器状态转换之外,该内核模块还处理少量的低级仿真,例如MMU注册(用于管理VM)和部分PCI仿真硬件。
在可预见的未来,Qemu团队专注于硬件模拟和可移植性,而KVM团队专注于内核模块(如果某些部分确实有性能改进,KVM将模拟一小部分代码被移入)并与剩余的用户空间代码交互。
kvm-qemu可执行程序就像普通的Qemu一样:它分配RAM并加载代码。与重新编译或调用callingKQemu不同,它创建了一个线程(这一点非常重要);该线程调用KVM内核模块来切换到用户模式并执行VM代码。当遇到特权指令时,它会切换到KVM内核模块,该模块会向Qemu线程发送信号,以在需要时处理大部分硬件模拟。
此架构的优点之一是客户端代码是在posix线程中模拟的,这允许您使用普通的Linux工具来管理它。如果需要2核或4核的虚拟机,kvm-qemu会创建2或4个线程,每个程调用KVM内核模块并开始执行。并发(如果你有足够的真实核心)或调度(如果你不关心)由通用Linux调度程序控制,这使得KVM代码非常小
当一起工作时,KVM管理对CPU和MEM,QEMU模拟硬件资源(硬盘、声卡、USB等)。当QEMU单独运行时,QEMU会模拟CPU和硬件。
Qemu使用模拟器;
它是一个完整的软件,可以独立运行。它可以用来模拟机器,非常灵活和便携。它基本上通过特殊的“重新编译器”将为特定处理器编写的二进制代码转换为另一个。(即在PPCmac上运行MIPS代码,或者在X86PC上运行ARM代码)
二、KVM、QEMU和KQemu有什么区别?

是一套虚拟机管理系统,包括虚拟内核架构和处理器相关模块。它借用了QEMU的一些其他组件。KVM的非内核部分只有在模块创建后才由QEMU实现。已加载,您可以采取进一步的操作。使用其他工具创建虚拟机。

是另一个虚拟机管理系统。Kqemu是一个QEMU加速器,可以认为是一个QEMU插件,它允许您虚拟化各种架构的虚拟机,例如在x86平台上。。虚拟化动力机。

负责CPU虚拟化+内存虚拟化,实现CPU和内存虚拟化,但KVM无法模拟其他设备。QEMU模拟I/O设备(网卡、磁盘),KVM与QEMU结合可以让您实现真正的服务器虚拟化。由于使用了以上两个东西,所以通常称为QEMU-KVM。

扩展信息:

技术已经从原来基本的SOHO办公类型发展成为基本的企业机房管理系统。位于多个远程位置的服务器和设备可以通过KVM客户端管理软件轻松直接访问。

广泛应用于GNU/Linux平台。它速度快且跨平台。得益于闭源加速器KQEMU,QEMU可以模拟接近真实计算机的速度。

现在可以在基于x86或x86_64的Linux2.4或Linux2.6主机上运行。

参考资料:百度KVM百科

参考资料:百度QEMU百科

参考资料:百度KQEMU百科