🎊服务器虚拟化——I/O设备虚拟化🎊

111 阅读1分钟

小知识,大挑战!本文正在参与“程序员必备小知识”创作活动。

服务器每一个千兆以太网端口能够支持一个应用,但是网络、存储以及服务器之间的流量当被分割为10个、15个或者更多的服务器负载时,可能就不够用了。

  当I/O遇到瓶颈时,CPU会停下来等待数据,计算效率会大大降低,所以要解决I/O瓶颈问题,最终需要虚拟化使资源效率的提升。在工作负载、存储以及服务器之间动态共享带宽,能够最大化地利用网络接口,虚拟化也必须扩展至I/O系统。需要缓解服务器I/O存在的潜在性能瓶颈,服务器能够承载更多的工作负载并提升其性能,同时高效和安全也是需要重视的问题。

为了解决软件I/O虚拟化的低效和安全型问题,ARM虚拟化扩展引入了SMMU (System Memory Management Unit)。SMMU是一个在系统中给所有具备DMA能力的设备提供地址翻译和隔离保护的硬件设备。为了在虚拟化场景下使用,SMMU支持两级独立的地址翻译能力。第一级 (Stage-1)实现虚拟地址(VA,Virtual Address)到中间物理地址(IPA,Intermediate Physical Address)的翻译,主要在Guest OS中使用;第二级 (Stage-2) 实现中间物理地址(IPA)到物理地址(PA)的翻译,主要在VMM中使用。

求点赞呀

image.png