このプロジェクトは元々、x86 プラットフォーム用に構築された Linux 実行可能ファイルを非 x86 アーキテクチャ上で実行できるようにするために Fabrice Bellard によって作成されました。 長年の開発を通じて、14 のハードウェア アーキテクチャに完全なエミュレーション サポートが追加され、エミュレートされるハードウェア デバイスの数は 400 を超えました。バージョン 5.1 の準備として、2500 人の開発者によって 235 を超える変更が加えられました。
鍵
- アーキテクチャに基づいた CPU エミュレーションのサポートを追加
AVR 。 Arduino Duemilanove (ATmega168)、Arduino Mega 2560 (ATmega2560) ボードのサポートが実装されました。
Arduino Mega (ATmega1280) と Arduino UNO (ATmega328P)。 - ARM アーキテクチャ エミュレータには、ACPI を使用したゲスト システムのホットプラグ nvdimm メモリだけでなく、メモリのホットアンプラグ機能も追加されました。 ARMv8.2 拡張機能のサポートを実装しました
TTS2UXN иARMv8.5 メモリタグ 。 Sonorapass-bmc ボードのサポートが提供されました。 - Loongson 3A CPU (R1 および R4) のサポートが MIPS アーキテクチャ エミュレータに追加されました。 FPU および MSA 命令エミュレーションのパフォーマンスが向上しました。
- SiFive E34 および Ibex CPU のサポートが RISC-V アーキテクチャ エミュレータに追加されました。 HiFive1 revB および OpenTitan ボードのサポートが実装されました。 スパイク マシンは複数の CPU をサポートします。
- PowerPC アーキテクチャ エミュレータは、FWNMI を使用したゲスト システムでのエラー回復をサポートするようになりました。
- s390 アーキテクチャでは、安全な仮想化 (安全な実行モード) のために KVM サポートが追加されました。
- x86 アーキテクチャ エミュレータは、Windows ACPI エミュレート デバイス テーブル (WAET) を提供することにより、適応していない Windows ゲストを仮想化するオーバーヘッドを削減します。 加速サポートの改善
HVF macOS用。 - ブロック デバイス ドライバーは、サイズが 2MB の論理ブロックと物理ブロックを持つ仮想ストレージ デバイスをサポートするようになりました。
- 新しい「secret-keyring」タイプのオブジェクトを使用して、Linux カーネル キーリング経由でパスワードと暗号化キーを QEMU に転送する機能が追加されました。
- qcow2 形式は、zstd 圧縮アルゴリズムをサポートするようになりました。
- qcow2 ファイル内の永続ビットマップを操作するための新しい「bitmap」コマンドが qemu-img ユーティリティに追加されました。 qemu-img は、LUKS キー管理 (キースロット) も実装し、「map」 (--start-offset、-max-length) および「convert」 (-bitmaps) コマンドの追加機能を提供します。「measure」コマンドは情報を表示するようになりました。 qcow2 ファイル内の永続ビットマップのサイズについて。
- NVMe ドライバーは、NVMe 1.4 仕様で導入された永続メモリ領域をサポートするようになりました。
- 古典的な TCG (Tiny Code Generator) コードジェネレーターを備えたゲストシステム用の virtio では、プロセスを使用する機能が実装されています。
仮想ホストユーザー virtiofsd を含む。 VHOST_USER_PROTOCOL_F_CONFIGURE_MEM_SLOTS 拡張機能が vhost-user に追加され、8 つを超える RAM スロットを登録できるようになりました。
出所: オープンネット.ru