爱悠闲 > 分类 >

KVM 第1页

Kvm代码解析连载 (一) : irq/nmi window (代码版本:kvm-kmod-3.10.1)
本文属于在csdn上原创,如果转载,还请注明出处,谢谢~ 写在前面 :本系列解析将作为长期连载,旨在和大家一起交流kvm的相关技术,本人才疏学浅,如果有遗漏或错误之处,还希望各位大牛批评指正~ Irq/nmi window exit从字面来看,可能没有那么好理解,在这里我们将一起探讨一下。 Irq/nmi window的作用基本一致,本文将以irq来举例说明。 我们知道,guest的中断需要我们来
Kvm代码解析连载 (二) :io的虚拟化 (代码版本:kvm-kmod-3.10.1)
Kvm利用了qemu的外设(irqchip在kmod中有实现,为了提高中断处理的效率),所以,在kmod中,如果guest发生了io事件,我们需要返回到qemu中来处理。具体的处理流程如下: Guest执行io指令 -> 发生vmexit-> 返回qemu -> 处理io   下面,我们将具体的结合代码来分析(在使用vmx的情况下)。   首先,我们从发生vmexit之后开始: vmx.c中的ha
Kvm代码解析连载 (三) :vcpu的调度(preempt notifier的妙用)
        在虚拟机中,一个相当重要的环节就是host和guest之间的切换,我称之为World Switch,在World Switch完成的前后,完全是两个世界(从host切换到guest或者从guest切回host)。对于硬件辅助虚拟化技术来说,最关键的点即为vmlauch(vmx)和vmrun(svm)指令,该指令执行之后,就开始执行guest的代码了。这里看起来很简单,很清晰,但是实