KVM 缺陷:
当然,优点自不用说了。像因为是完全虚拟化,所以不用修改客户OS. 另外是内核中支持的,能充分的利用Linux本身的进程调度等特性。在内存方面呢,因为有了Intel_EPT特性的支持,内存虚拟化也还不错。
而缺点呢:都知道,对于IO的虚拟化就不太够了,虽然有了QEMU这个强大的模拟软件,但是效率不是太理想。于是乎,出现了virtio这个Linux上的设备驱动标准框架。
首先,让我们来分析下QEMU虚拟IO的原理:
-----------当客户机的设备驱动程序发起IO请求时,KVM中的IO操作会拦截这次IO,然后在本次处理之后将本次IO请求的信息存放到共享页,并通知用户空间的QEMU。
-----------QEMU模拟程序获得IO操作信息之后,交由硬件模拟代码模拟出本次的IO操作。完成之后,将结果放回在共享页中,并通知KVM模块中的IO操作捕获代码。
---
Qemu mmap
最新推荐文章于 2024-02-26 17:01:16 发布