首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >VIRTIO:如何提高性能

VIRTIO:如何提高性能
EN

Stack Overflow用户
提问于 2014-07-14 13:41:21
回答 1查看 4.4K关注 0票数 3

我想了解:

  1. 与完全虚拟化或hw辅助虚拟化(如virtio_net或virtio_blk )相比,virtio驱动程序如何提高性能?
  2. 这些virtio驱动程序如何影响VMEXIT/VMENTER或来宾和Hypervisor之间的上下文切换?
  3. virtio的基本思想或架构是什么?

谢谢

EN

回答 1

Stack Overflow用户

发布于 2014-07-21 14:33:40

VIRTIO是一个虚拟接口.这意味着来宾必须知道它在虚拟环境中运行,因此它可以部署它的VIRTIO驱动程序来与虚拟硬件对话。对副虚拟化的情况进行了优化,使来宾->超级管理程序->主机和反向转换的数量降到最低,从而提高性能。与完全虚拟化的不同之处在于,客户可能不知道它是虚拟化的,因为它提供了大量的仿真硬件,就其本身而言,这是真正的硬件。但是,对于每一次对硬件的访问,都有一个陷阱,用于处理每个单独的访问。例如,如果一个网卡需要设置20个寄存器来发送一个数据包,这将是20个从来宾到模拟器的转换。

现在还有另一种虚拟化依赖于IOMMU。它们可以被编程以将它们的部分地址空间传递给给定的VM。因此,虚拟机可以直接访问硬件,而超级监控程序/主机不需要参与实际硬件的仿真。在这种情况下,它可能是一个虚拟的NIC,它实际上是一个真实的NIC,它被细分为多个不同的虚拟NIC,每个VM都有一个。

http://vmsplice.net/~stefan/virtio-devconf-2014.pdf上有一个很好的VIRTIO架构的编写。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24737882

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档