QEMU 7.1 は、Linux でのメモリ転送の改善を実装します
QEMUバージョン7.1のリリースが発表されました。このバージョンでは、様々なエミュレーターに対する一連の改良が加えられており、特にARMとRISC-V向けの変更、そしてLinux向けのメモリ転送の改善が注目されます。バージョン7.1の準備段階では、238人の開発者によって2800件以上の変更が行われました。
QEMU を初めて使用する方は、x86 互換 PC で ARM アプリケーションを実行するなど、まったく異なるアーキテクチャのシステムで XNUMX つのハードウェア プラットフォーム用にビルドされたプログラムを実行できることを知っておく必要があります。
QEMU の仮想化モードでは、分離された環境でのコード実行のパフォーマンスは、CPU での命令の直接実行と Xen ハイパーバイザーまたは KVM モジュールの使用により、ハードウェア システムのパフォーマンスと同様です。
QEMU7.1のメインニュース
Linux向けに発表されたこの新バージョンでは、ゼロコピー送信オプションが実装されており、ライブマイグレーション中に中間バッファリングなしでメモリページ転送を処理できます。
さらに、QMP(QEMU Machine Protocol)では、`block-export-add`コマンドを使用して、ページデータを含むNBDイメージを「ダーティ」状態でエクスポートする機能が追加されました。また、さまざまなQEMUサブシステムから統計情報を照会するための新しいコマンド`query-stats`と`query-stats-schema`も追加されています。
QEMUの新バージョンにおけるもう1つの注目すべき変更点は、ゲストエージェントがSolarisプラットフォームとの互換性を向上させ、ディスクとCPUの状態を表示する新しいコマンド「guest-get-diskstats」と「guest-get-cpustats」を追加したことです。「guest-get-disks」コマンドにはNVMe SMART情報が追加され、「guest-get-fsinfo」コマンドにはNVMeバスタイプの情報が追加されました。
さらに、LoongArch命令セットアーキテクチャの64ビット版(LA64)をサポートする新しいLoongArchエミュレータが追加されました。このエミュレータは、Loongson 3 5000プロセッサとLoongson 7A1000ノースブリッジをサポートしています。
さらに、ARMエミュレータでは、Aspeed AST1030 SoC、Qualcomm、AST2600/AST1030 (fby35)といった新しいタイプのエミュレート対象マシンが実装されたことに加え、Cortex-A76およびNeoverse-N1 CPUのエミュレーションのサポート、SME (Scalable Matrix Extensions)、RAS (Reliability, Availability, Serviceability) プロセッサ拡張機能、CPUでの投機的命令の実行中に内部キャッシュリークをブロックするコマンドも追加されたことが強調されています。
RISC-Vアーキテクチャエミュレータは、仕様1.12.0で定義された新しい命令セット拡張(ISA)のサポートを追加したほか、Sdtrig拡張のサポートを追加し、ベクトル命令のサポートを改善しました。
この新バージョンにおけるその他の注目すべき変更点は以下のとおりです。
- 改善されたデバッグ オプション。
- Trusted Platform Module (TPM) サポートを「virt」エミュレート マシンに追加し、Ibex SPI サポートを「OpenTitan」マシンに追加しました。
- KVM 用の x86 エミュレーターに、LBR (Last Branch Record) トレース メカニズムの仮想化のサポートが追加されました。
- 「virt」マシン用の GICv4 割り込みハンドラ エミュレーションを実装しました。
- HPPA アーキテクチャ エミュレータは、ブート メニューでの PS/6 キーボードの使用をサポートする SeaBIOS v2 に基づく新しいファームウェアを提供します。
- シリアル ポート エミュレーションの改善。
- 追加の STI コンソール フォントが追加されました。
- Nios2 ボード用の MIPS アーキテクチャ エミュレータ (-machine 10m50-ghrd) は、ベクトル割り込みコントローラ エミュレーションとシャドー レジスタ セットを実装します。
- 例外処理の改善。
- 「or4k-sim」マシン用の OpenRISC アーキテクチャ エミュレータで最大 16550 つの 1A UART デバイスを使用する機能が追加されました。
- 390x アーキテクチャー・エミュレーターは、Vector-Enhancements Facility 2 (VEF 2) 拡張のサポートを提供します。 s390-ccw BIOS には、セクター サイズが 512 バイト以外のディスクから起動する機能があります。
- lx106 カーネルとキャッシュ テスト オブジェクト コードのサポートが Xtensa アーキテクチャ エミュレータに追加されました。
最後に、 QEMU 7.1のこの新バージョンにおける変更点や新機能についてさらに詳しく知りたい場合は、以下のリンクから詳細情報をご覧いただけます。