XENの場合、LinuxOSを実行するためのハードウェア支援サポートは必要ありません。しかし、LinuxベースのOSを実行するためにKVM)にそれが必要なのはなぜですか。
準仮想化をサポートするようにKvmを構成できますか?.
編集:
完全仮想化では、ゲストは仮想化されていることに気付かず、全体的なパフォーマンスが低下する可能性があります。準仮想化では、ゲストは仮想化されていることを認識しているため、パフォーマンスが向上する可能性があります。
KVMは完全なハードウェア仮想化を提供しますが、準仮想化ディスクおよびネットワークドライバー(virtio)を使用できます。現在のほとんどのLinuxディストリビューションは、VMのセットアップ時に構成した場合、デフォルトでそれらを使用します。
完全なハードウェア仮想化では、仮想PCのすべてのコンポーネントが物理PCのように見え、ゲストOSは、同じハードウェアで作られた物理PCの場合と同じデバイスドライバーを使用します。ハイパーバイザーはゲストの利益のために共通のハードウェアをエミュレートする必要があるため、これは遅くなる可能性があります。
準仮想化では、ゲストはパフォーマンスが重要な一部のデバイス(ディスクドライバーやネットワークドライバーなど)用に特別に作成されたドライバーを使用して、パフォーマンスをベアメタルに近い数値に戻すことができます。準仮想化ドライバーは、エミュレートされたハードウェアと通信する代わりに、(ほぼ)ネイティブハードウェアと直接通信します。
ディスクドライバーとネットワークドライバーは、パフォーマンス上の最大のメリットを提供するため、通常、最初に準仮想化されます。他のデバイスも準仮想化できますが、そうしても実際のメリットはそれほど大きくありません。
KVMは、特定のドライバーの準仮想化をサポートしていますが、ゲスト全体はサポートしていません。彼らは自分たちを Linux用の完全仮想化ソリューション として明示的に定義しています。