Xen 專案開發人員 關於在 Raspberry Pi 4 板上使用 Xen Hypervisor 的可能性的實現 由於使用不支援虛擬化的非標準中斷控制器,Xen 在先前版本的 Raspberry Pi 板上的工作受到了阻礙。 Raspberry Pi 4 使用 Xen 支援的常規 GIC-400 中斷控制器,開發人員預計運行 Xen 不會出現問題。但實際上,一切都不像預期的那樣,為了確保 Xen 能夠在 Raspberry Pi 4 上運行,必須對記憶體程式碼進行顯著的更改。
Raspberry Pi 4 板的第一個版本僅限於存取第一個 GB 記憶體的位址空間,這對 Dom0 來說是不夠的。 Xen 4.14 版本中進行了必要的更改,但另一個問題立即浮出水面- Xen 子系統使用virt_to_phys 呼叫將虛擬位址轉換為實體位址,這並不適用於所有虛擬位址,並且嘗試轉換某些虛擬位址失敗。為了解決這個問題,我們不得不添加另一個地址轉換功能。
問題並未就此結束,DMA 操作中出現了一個特殊情況:在先前 Xen 支援的所有平台(x86、ARM 和 ARM64)上,DMA 位址和實體位址始終匹配,但在 Raspberry Pi 4 上,它們卻不匹配。解決這個問題最為困難,需要開發核心補丁。 Linux執行實體位址和 DMA 位址之間的轉換。
已準備好的修復程序已包含在核心中。 Linux 5.9 版本之後,Xen 已被認可可用於在 Raspberry Pi 4 開發板上組織虛擬化。特別是,現在在 Raspberry Pi 4 上可以使用 (邊緣虛擬化引擎),使用 Xen 創建和運行雲端原生應用程式的引擎, и 用於在便攜式設備上建置虛擬化基礎架構。
此外,我們還可以注意到消除 在Xen.漏洞 ,
и
可能允許來賓系統取得主機環境權限。問題
, ,
,
,
,
и
僅限於拒絕服務。
來源: opennet.ru
