KVM和qemu的关系

版权声明:欢迎转载,标明出处 https://blog.csdn.net/qq_24918869/article/details/53230568

KVM是嵌入Linux操作系统标准内核中的一个虚拟化模块,它能够将一个Linux标准内核转化成为一个VMM,嵌有KVM模块的Linux可以支持通过KVM tools来进行加载GuestOS。在这样KVM通过在HostOS内核中加载KVM Kernel Module来将HostOS转换成为一个VMM。所以此时VMM可以看作是HostOS。

准确来说,KVM是Linux kernel的一个模块。可以用命令modprobe去加载KVM模块。加载了模块后,才能进一步通过其他工具创建虚拟机。但仅KVM模块是 远远不够的,因为用户无法直接控制内核模块去作事情,你还必须有一个运行在用户空间的工具才行。这个用户空间的工具,kvm开发者选择了已经成型的开源虚拟化软件 QEMU。说起来QEMU也是一个虚拟化软件。它的特点是可虚拟不同的CPU。比如说在x86的CPU上可虚拟一个Power的CPU,并可利用它编译出可运行在Power上的程序。KVM使用了QEMU的一部分,并稍加改造,就成了可控制KVM的用户空间工具了。所以你会看到,官方提供的KVM下载有两大部分(qemu和kvm)三个文件(KVM模块、QEMU工具以及二者的合集)。也就是说,你可以只升级KVM模块,也可以只升级QEMU工具。这就是KVM和QEMU 的关系。

每个由KVM创建的GuestOS都是HostOS(或VMM)上的一个单个进程,而在GuestOS上的User-space中运行的Application可以理解为就是进程的线程。

注:HostOS是宿主机,GuestOS是客户机

猜你喜欢

转载自blog.csdn.net/qq_24918869/article/details/53230568
今日推荐