準仮想化(じゅんかそうか)
最終更新:2026/4/28
準仮想化は、仮想マシンがハイパーバイザと協調して動作することで、仮想化のオーバーヘッドを低減する技術である。
別名・同義語 パラバーチャライゼーション
ポイント
完全仮想化と比較して、ゲストOSの修正が必要となる場合がある。パフォーマンス向上を目的とした仮想化手法の一つ。
準仮想化とは
準仮想化(Paravirtualization)は、仮想マシン(ゲストOS)が、自身が仮想環境で動作していることを認識し、ハイパーバイザ(仮想マシンモニタ)と協調して動作することで、仮想化によるオーバーヘッドを削減する技術です。完全仮想化とは異なり、ゲストOSはハイパーバイザに対して直接的なハードウェアアクセスを要求せず、ハイパーバイザが提供するインターフェース(API)を介してリソースを利用します。
準仮想化の仕組み
従来の仮想化技術では、ゲストOSは物理ハードウェアを前提として動作するため、ハイパーバイザはゲストOSからのハードウェアアクセス要求を仲介し、物理ハードウェアへのアクセスをエミュレートする必要がありました。このエミュレーション処理が仮想化のオーバーヘッドの主な原因となっていました。
準仮想化では、ゲストOSが仮想環境で動作していることを認識しているため、ハイパーバイザに対して直接リソースを要求したり、ハイパーバイザが提供するAPIを呼び出すことで、ハードウェアアクセスを効率的に行うことができます。これにより、エミュレーション処理の負荷を軽減し、パフォーマンスを向上させることが可能になります。
準仮想化のメリットとデメリット
メリット:
- パフォーマンスの向上:エミュレーション処理の負荷が軽減されるため、完全仮想化と比較して高いパフォーマンスを発揮できます。
- オーバーヘッドの低減:仮想化によるオーバーヘッドを削減できます。
デメリット:
- ゲストOSの修正が必要:ゲストOSは準仮想化に対応するように修正する必要があります。既存のOSをそのまま利用することはできません。
- 互換性の問題:準仮想化に対応していないOSやアプリケーションは利用できません。
準仮想化の例
XenやKVMなどのハイパーバイザは、準仮想化をサポートしています。これらのハイパーバイザでは、ゲストOSが準仮想化インターフェースを利用することで、高いパフォーマンスを実現しています。
準仮想化と完全仮想化、コンテナ仮想化の違い
- 完全仮想化: ゲストOSが物理ハードウェアを前提として動作し、ハイパーバイザがハードウェアアクセスをエミュレートする。
- 準仮想化: ゲストOSが仮想環境を認識し、ハイパーバイザと協調して動作する。
- コンテナ仮想化: OSレベルの仮想化であり、カーネルを共有する。