IO虚拟化——Intel VT-d原理
一.Inetl VT-d 技術介紹
? ? ? Intel VT-d的全稱是Intel Virtualization Technology for Direct I/O,它是Intel虛擬化技術的一部分,主要針對的是I/O子系統,它的實現主要是通過在硬件上引入重定向單元,該硬件重定向單元用于對I/O子系統的DMA操作和中斷傳遞進行重定向,從而輔助VMM(Virtual Machine Monitor)實現I/O子系統的虛擬化。
? ? ? VT-d是一個位于CPU、內存和I/O設備之間的硬件設備,通常位于PCI設備樹的根部,或者類似的位于I/O子系統的根部,當VT-d重定向硬件設備啟用的時候,它會攔截位于它下面的所有I/O設備產生的中斷請求和通過DMA方式對虛擬機內存訪問的請求,然后通過查找中斷重定向表或者I/O頁表的方式(類似分頁機制)來重新定位中斷轉發的目標LAPIC或者是I/O設備訪問的目標主機物理內存地址。如下圖所示:
二.I/O 虛擬化的實現方式
? ? ? 一般情況下VMM支持I/O虛擬化可以通過以下四種方式實現:
? ? ? 以上I/O虛擬化的一個通用要求就是要求VMM能夠將屬于不同VM的I/O設備安全地隔離起來,即需要滿足以下兩方面的要求:
? ? ? VMM軟件負責I/O設備的分配,即將指定I/O設備和相應的VM對應起來,并且負責建立中斷重定向關系表和I/O地址轉換頁表,并將這些轉換關系的配置設置到VT-d硬件設備上,而I/O設備發起的中斷請求或者DMA內存訪問請求中帶有相應設備的ID,這樣VT-d硬件單元就可以通過硬件查找的方式將不同的I/O設備中斷和內存訪問請求重定向到相應的VM上,從而達到隔離不同VM的I/O設備的目的。
總的來說,VT-d的主要功能就是將I/O設備的 DMA 訪問請求和中斷請求重定向到 VMM 設定好的 VM 中。
總結
以上是生活随笔為你收集整理的IO虚拟化——Intel VT-d原理的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: VMware与KVM全方面对比
- 下一篇: DHCP 服务原理:Snooping和R