QEMU5.0エミュレーターの新しいバージョンはすでにリリースされています また、いくつかの重要な機能強化と、より多くのアーキテクチャのサポートが強化されています。 QEMUについて知らない人のために、彼らはそれを知っているべきです これはエミュレーターです これにより、完全に異なるアーキテクチャのシステムでハードウェアプラットフォーム用にコンパイルされたプログラムを実行できます。たとえば、x86互換PCでARMアプリケーションを実行できます。
仮想化モードの場合 QEMUでは、CPUで命令を直接実行し、XenハイパーバイザーまたはKVMモジュールを使用するため、分離された環境でコードを実行するパフォーマンスはネイティブシステムに近くなります。
QEMU エミュレーションなしで仮想化を可能にします、ゲストシステムの場合 ホストシステムと同じプロセッサを使用します または、x86、ARM、PowerPC、Sparc、MIPS1プロセッサのアーキテクチャをエミュレートできない場合。 x86、x64、PPC、Sparc、MIPS、ARMプラットフォーム、およびLinux、FreeBSD、NetBSD、OpenBSD、Mac OS X、Unix、およびWindowsオペレーティングシステムで動作します。
開発の年を通して、 14のアーキテクチャの完全なエミュレーションのサポートが追加されました ハードウェアでは、エミュレートされたハードウェアデバイスの数が400を超えました。バージョン5.0の準備として、2800人の開発者によって232を超える変更が行われました。
QEMU5.0のメインニュース
新しいバージョン5.0では ファイルシステムの一部をホストシステムからゲストシステムに転送する機能が追加されました virtiofsdを使用します。 ゲストシステムは、エクスポート用にマークされたディレクトリをホスト側にマウントできます。 アクセスの編成を大幅に簡素化します 仮想化システムのディレクトリに共有されます。 ネットワークFSを使用するのとは異なり、 NFSおよびvirtio-9P、virtiofs ローカルファイルシステムに近いパフォーマンスを可能にします。
さらに ARMアーキテクチャエミュレータは、Cortex-M7CPUをエミュレートする機能を追加します プリント基板のサポートを提供します tacoma-bmc、Netduino Plus 2、Orangepi。
のサポートを実装 次のアーキテクチャ機能のエミュレーション:
- ARMv8.1:VHE、VMID16、PAN、PMU
- ARMv8.2:UAO、DCPoP、ATS1E1、TTCNP
- ARMv8.3:RCPC、CCIDX
- ARMv8.4:PMU、RCPC
測定コマンド qemu-imgがLUKS画像で動作できるようになりました およびオプション –ターゲットはゼロです 変換コマンドに追加されます qemu-img ターゲット画像のゼロ調整をスキップします。
追加 qemu-storage-daemonプロセスの実験的サポート、完全な仮想マシンを起動しなくても、ブロックデバイスや組み込みNBDサーバーの操作を含むQEMUブロックレベルおよびQMPコマンドへのアクセスを提供します。
アーキテクチャエミュレータで 'powernv'マシン用のPowerPC、KVMハードウェアアクセラレーションエミュレーションが追加されました 従来のTCG(Tiny Code Generator)コードジェネレーターを使用してKVMゲストシステムを実行します。 永続メモリをエミュレートするために、ファイルにミラーリングされたNVDIMMのサポートが追加されています。
アーキテクチャエミュレータ RISC-V virtおよびsifive_uボード用 sysconドライバーのサポートを実装します 電源管理と再起動のためのLinuxアプリケーション。
言及された他の変更の中で、以下が際立っています:
- QEMUD-Busを使用した外部プロセスデータのライブマイグレーションのサポート
- ゲストシステムのメインRAMを確保するためにメモリバックエンドを使用する機能。
- バックエンドは、オプション「-machinememory-backend」で構成されます
- 圧縮された画像のバックアップコピーを作成するために使用できる新しい「圧縮」フィルター
- エミュレートされた「virt」マシンに、vTPMおよびvirtio-iommuデバイスのサポートが追加されました。
- AArch32ホストを使用してKVMゲスト環境を実行する機能は廃止されました。
- HPArtistグラフィックデバイスを使用したグラフィックコンソールのサポートがHPPAアーキテクチャエミュレーターに追加されました
- MIPSアーキテクチャエミュレーターでのGINVT(グローバル無効化TLB)ステートメントのサポートが追加されました
- 'virt'ボードのGoldfishRTCサポートが追加されました。 ハイパーバイザー拡張の実験的な実装を追加しました。
- s390アーキテクチャーエミュレーターでKVMモードで作業する場合のAIS(Adapter Interrupt Suppression)のサポートが追加されました。QEMUD-Busを使用した外部プロセスデータのライブマイグレーションのサポート。