QEMU 5.2已發布 在這個新版本中, 3200位開發人員進行了216多次更改 其中我們可以找到對RISC-V的實時遷移支持,對RISC-V虛擬機管理程序的實驗性支持,對更多闆卡的支持等等。
對於不熟悉QEMU的人,他們應該知道它是一個可以 使您可以在具有完全不同的體系結構的系統上運行為硬件平台創建的程序例如,在x86兼容PC上運行ARM應用程序。
在QEMU的虛擬化模式下,由於直接在CPU上執行指令以及使用Xen虛擬機管理程序或KVM模塊,因此在沙箱環境中運行代碼的性能接近於硬件系統。
QEMU 5.2的主要新功能
編譯系統已更改, 編譯QEMU現在需要安裝ninja工具箱。
增加了對 塊設備驅動程序使用過程 qemu-storage-daemon在後台作為vhost-user-blk的後端, 以及新的QMP命令“ block-export-add”,該命令將替換命令“ nbd-server-add”並為“ qemu-storage-daemon”提供支持。
對於qcow2映像,已添加了對擴展L2寄存器的支持, 這允許按不完整的組(子集群)分配空間。 要在創建映像時啟用L2,必須指定選項“ extended_l2 = on”。
另外, 改進了將qemu用作NBD客戶端的支持, 因為減少了導致通過網絡交換數據的等待時間的情況數量,從而導致來賓阻塞。 Qemu-nbd提供了指定多個“ -B名稱”選項的功能,以便一次指定多個臟位圖。
另一個重要的變化是 新的高性能遷移模式 通過TLS和multifd進行加密數據傳輸。 默認的遷移帶寬限制已增加到1 Gbps。
添加了遷移參數 'block-bitmap-mapping',它允許在遷移過程中更精細地控制將要傳輸的位圖。 即使主機名與接收端的源名稱不同,該參數仍然有效。
另外,增加了新的通話 使用“ calc-dirty-rate”和“ query-dirty-rate”來預測遷移期間的更新速率,同時考慮與RAM中的操作相關的負載。
同時, 我們可以找到板的支撐 mp2-an386,mp2-an500,raspi3ap(Raspberry Pi 3型號A +),raspi0(Raspberry Pi零),raspi1ap(Raspberry Pi A +)和npcm750-evb / quanta-gsj。
對於AArch32架構,實現了對ARMv8.2 FEAT_FP16(中精度浮動點)擴展的支持。
最後還提到了nvirtiofsd的新選項,用於控制xattr屬性名稱的呈現 在來賓系統上擴展,分區與主機系統上具有不同安裝點的分區的單獨連接,並且還指定了沙盒隔離機制,該機制可以替代pivot_root。
Y 實時遷移支持到RISC-V體系結構仿真器, 以及對RISC-V的實驗性虛擬機管理程序支持已更新至0.6.1版。 增加了對virt / Spike系統上NUMA套接字的支持。
在其他突出的變化中 這個新版本:
- guest-get-devices,guest-get-disks和guest-ssh- {get,add-remove} -authorized-keys命令已添加到QEMU guest代理(qemu-ga)。
- 增加了對基於kvm-steal-time的記帳的支持。
- HPPA體系結構仿真器支持引導NetBSD和非常老的Linux發行版,例如Debian 0.5和0.6.1。
- PowerPC體系結構仿真器改進了對用戶定義的NUMA拓撲間距的支持。
- 用於KVM的s390體系結構仿真器增加了對0x318診斷指令的支持。
- 經典代碼生成器TCG(微型代碼生成器)實現了對其他z14指令的支持。
- 在vfio-pci設備上,提供了有關實際計算機功能的信息,而不是模擬功能。
- Xtensa體系結構仿真器增加了對具有單精度和雙精度浮點操作碼的DFPU協處理器的支持。