KVMはハイパーバイザーですか?

KVMはハイパーバイザーですか?

https://en.wikipedia.org/wiki/Hypervisor#ClassificationQEMU はタイプ 2 ハイパーバイザーであり、KVM はタイプ 1 とタイプ 2 ハイパーバイザーになることができるとします。

両方のタイプの違いは必ずしも明確ではありません。たとえば、Linuxのカーネルベースの仮想マシン(KVM)とFreeBSDのbhyveはどちらも、ホストオペレーティングシステムを効果的に変換できるカーネルモジュールです。タイプ1ハイパーバイソr.[7]同時に、LinuxディストリビューションとFreeBSDは依然として一般的なオペレーティングシステムであるため、アプリケーションはVMリソースを使用して互いに競合します。、KVM、bhyveもタイプ2ハイパーバイザーとして分類できます。

「LinuxディストリビューションとFreeBSDは依然として汎用オペレーティングシステムであり、アプリケーションはVMリソースを配置し、互いに競合しています.」 KVMがタイプ2ハイパーバイザーであるのはなぜですか?

https://en.wikipedia.org/wiki/Kernel-based_Virtual_Machine説明する

それ自体を通して、KVMはエミュレーションを実行しません。。代わりに、ユーザースペースホストは、次の操作に使用できる/dev/kvmインターフェースを公開します。

  • ゲスト仮想マシンのアドレス空間を設定します。また、ホストは、ゲストがプライマリオペレーティングシステムから起動するために使用できるファームウェアイメージ(通常はPCをシミュレートするときにカスタムBIOS)を提供する必要があります。
  • ゲストにシミュレートされたI / Oを提供します。
  • ゲストのビデオディスプレイをシステムホストに再マップします。

Linux では、QEMU バージョン 0.10.1 以降がこれらのユーザー空間ホストの 1 つです。 QEMU は KVM を使用して、可能であればほぼ基本速度でゲストを仮想化しますが、そうでない場合は純粋なソフトウェア エミュレーションに置き換えます。

「KVMがエミュレーションを実行していない場合」KVMを実行できますか?管理プログラム

ハイパーバイザーまたは仮想マシンモニタ(VMM)は、仮想マシンを作成して実行するコンピュータソフトウェア、ファームウェア、またはハードウェアです。

QEMUなどの他のハイパーバイザーなしでKVMはハイパーバイザーとして機能できますか?

libvirtはQEMUなしでKVMでも直接動作できますか?

答え1

「LinuxディストリビューションとFreeBSDは依然として汎用オペレーティングシステムであり、アプリケーションはVMリソースを配置し、互いに競合しています.」 KVMがタイプ2ハイパーバイザーであるのはなぜですか?

タイプ1/タイプ2ハイパーバイザーの厳密な解釈は次のとおりです。

  • タイプ1ハイパーバイザーは単独で実行され、すべてのユーザーレベルのアプリケーションはハイパーバイザーによって管理されているゲストオペレーティングシステム内で実行されます。
  • タイプ2ハイパーバイザーはホストオペレーティングシステム上で実行され、ハイパーバイザーが管理するすべてのゲストと引き続き機能できます。

実際、これらの区別はあまり明確ではありません。たとえば、タイプ1ハイパーバイザーと広く考えられているXenは、システムリソースを管理するためにまだ「Dom0」Linuxゲストの助けを必要とするため、ベアメタルでは完全に自律的ではありません。

同様に、KVMはホストオペレーティングシステム(Linuxカーネル)の上で実行され、ホストオペレーティングシステムはKVMが管理するすべてのVMで他のプロセスを実行できるため、タイプ2ハイパーバイザーと見なすことができます。

「KVMがエミュレーションを実行していない場合」KVMはハイパーバイザーになることができますか?

はい、ハイパーバイザーはエミュレーション用ではありません。

QEMUなどの他のハイパーバイザーなしでKVMはハイパーバイザーとして機能できますか?

はい、ぜひご覧くださいこのLWN記事例えば。

libvirtはQEMUなしでKVMでも直接動作できますか?

いいえ、サポートのみ可能です。KVMとQEMU

関連情報