Virtio
虚拟机与物理机的通信通过vring来实现数据交互,这之间存在一种io的通信机制。主机通知客户机是通过注入中断来实现,虚拟设备连在模拟的中断控制器上,有自己的中断线信息,PCI设备的中断信息会被写入该设备的配置空间客户机通知主机是通过virtio读写内存来实现的。上面第二条分有两类:MMIO和PIO。MMIO是通过mmap()像写内存一样读写虚拟设备,比如内存。PIO(就是通常意义上的io端口)通过
·
虚拟机与物理机的通信通过vring来实现数据交互,这之间存在一种io的通信机制。
-
主机通知客户机是通过注入中断来实现,虚拟设备连在模拟的中断控制器上,有自己的中断线信息,PCI设备的中断信息会被写入该设备的配置空间
-
客户机通知主机是通过virtio读写内存来实现的。
上面第二条分有两类:MMIO和PIO。MMIO是通过mmap()像写内存一样读写虚拟设备,比如内存。PIO(就是通常意义上的io端口)通过hypervisor捕获设备io来实现虚拟化。两者的区别是:MMIO是通过内存的异常来进行,PIO则是通过io动作的捕获。
更多推荐
已为社区贡献1条内容
所有评论(0)