TCG
概要
TCG (Tiny Code Generator) は、QEMUが使う動的バイナリ翻訳エンジン
ゲストCPUの命令を、ホストCPUで実行できる命令に変換する
JIT (Just-In-Time) コンパイルで動作して実行時に命令を翻訳してキャッシュし、ホストで実行する これによって、x86 上で ARM ゲストを動かす、あるいはその逆のような クロスアーキテクチャ実行が可能になっている
メリット
移植性が高く、どのホスト/ゲスト組み合わせでも理論上サポート可能
デメリット
ネイティブ実行に比べて遅い(10〜100倍)
このため、同じアーキテクチャの仮想化では KVM (Linux) や Hypervisor.framework (macOS) を併用してハードウェア仮想化を利用するのが一般的