首页 > 解决方案 > VM 上的应用程序是否可以直接与 Hypervisor 通信(而不是通过 VM 内核)?

问题描述

假设这个数字:

在此处输入图像描述

1号线通讯是否可以如图所示直接存在?是否有任何 Hypervisor 支持这种行为?如果没有,是否可以更改管理程序(如 KVM)以支持此功能?

我怀疑通信线路 2 是可能的。但我不太确定。所以这个问题也适用于如图所示的第 2 行通信。

标签: virtual-machinecommunicationvirtualization

解决方案


是的,有可能。例如,使用英特尔 VMX,可以从应用程序中使用 vmcall 指令。可以使用在用户模式下允许并导致 VM 退出的任何其他指令,例如 cpuid 或对未映射页面的内存访问。

这个问题的答案是关于如何向 KVM 添加 vmcall 处理程序。在 kvm 中实现自定义超级调用


推荐阅读