在 Zynq MPSoC 上運行 DOOM 游戲
設備性能與安全
本文引用地址:http://dyxdggzs.com/article/201608/294978.htm一般來(lái)說(shuō),與通過(guò)直通方式提供的設備相比,仿真的設備性能比較低;半虛擬化方案則趨向于具備足夠性能。半虛擬化方案和仿真方案的優(yōu)勢在于管理程序可以讓設備訪(fǎng)問(wèn)多個(gè)實(shí)體,而不會(huì )將這些實(shí)體相互暴露。
原理簡(jiǎn)介
Doom-on-Zynq UltraScale+ MPSoC 的處理上下文環(huán)境就像洋蔥一樣有很多層(圖 6)。Cortex-A53 中是四個(gè) ARMv8 內核。在每個(gè)內核上,管理程序運行在 EL2 中,客戶(hù)機(Dom0 或 DomU)運行在 EL0/EL1 中。每個(gè) DomU 客戶(hù)機都運行 Linux;Doom (PrBoom) 運行在用戶(hù)空間中。Doom 使用簡(jiǎn)單直接媒體層 (SDL),通過(guò) SVC 指令(最終)與幀緩沖器前端驅動(dòng)對話(huà)。幀緩沖器前端將緩沖器寫(xiě)入 Dom0 建立的共享存儲器區域。前端驅動(dòng)通過(guò)協(xié)議(例如 Xen Bus 或 VirtIO)使用 HVC 指令(最終)與 Dom0 上運行的虛擬化代碼通信。在 Dom0 上運行的虛擬化代碼提供一個(gè)用于顯示的后端,然后該后端由虛擬化代碼的 VNC 服務(wù)器進(jìn)行編碼,并通過(guò)網(wǎng)絡(luò )送到 VNC 客戶(hù)端。

圖6:X86 架構上從 PetaLinux 工具啟動(dòng) QEMU
此信息和演示能夠為管理程序的進(jìn)一步研究和實(shí)驗提供很好的基礎。當你能夠在 QEMU 上用仿真來(lái)運行演示之后,就可使用 PetaLinux 工具在 Zynq UltraScale+ MPSoC 芯片上運行。
評論