ハイパーバイザは、
コンピュータの
仮想化技術の中核をなす
ソフトウェアです。仮想マシン(バーチャルマシン)を作成し、その上で複数の
オペレーティングシステム(OS)を同時に実行することを可能にします。別名、
仮想化モニタや
仮想化オペレーティングシステムとも呼ばれます。
「
ハイパー」という言葉は、OSをさらに管理する上位の層という意味合いで使われています。これは、OSが「スーパーバイザ」と呼ばれることがあることに由来します。
ハイパーバイザには大きく分けて2つのタイプがあります。
Type 1 (ネイティブ/ベアメタル) ハイパーバイザ
-
IBM z/VM
-
VMware ESX, ESXi, vSphere
- Xen
- Microsoft
Hyper-V
-
Linux Kernel-based Virtual Machine (KVM)
-
IBM LPAR(
ファームウェアに組み込まれたタイプ)
Type 2 (ホスト) ハイパーバイザ
- - ホストOSと呼ばれる別のOSの上で動作するハイパーバイザです。ゲストOSは、このハイパーバイザ上で動作します。
- - 例:
-
VMware Server,
VMware Workstation Pro,
VMware Fusion Pro for Mac
- Microsoft Virtual PC, Microsoft Virtual Server
- Oracle
VirtualBox
- Parallels Workstation, Parallels Desktop
-
QEMU
- Oracle
Solaris Kernel Zone
- - 完全仮想化: ゲストOSを修正せずにそのまま動作させることができる方式です。ハードウェアを完全にエミュレートします。
- - 準仮想化: ゲストOSに修正を加える必要がある方式です。性能向上のために用いられます。
「
ハイパーバイザ」という用語は、
IBMのCP-370が起源です。1972年にVM/370としてリリースされました。
ハイパーバイザコール(hypercall)は、準
仮想化インターフェースで参照され、ゲストOSが制御プログラムにサービスを要求する際に使用されます。
ハイパーバイザは
メインフレームで最初に実装されました。
1967年に
IBMがCP-40を開発し、これが現在のz/VMへと繋がっています。
メインフレームでは、z/OSやz/VSE、
LinuxなどをゲストOSとして利用し、サーバー統合などに活用されています。
サーバにおけるハイパーバイザ
近年、サーバ分野でも
仮想化技術が再び注目されています。
- - ハードウェア性能の向上
- - サーバ統合によるコスト削減と管理の簡素化
- - 大規模なマルチプロセッサやクラスタサーバの管理
- - セキュリティや信頼性の向上
- - 異なるハードウェアやOS環境でのアプリケーション実行の要望
これにより、主要な
UNIXベンダーが
仮想化ハードウェアを販売するようになりました。また、論理パーティショニング(
LPAR)のような技術もサーバに導入されています。
x86システムにおけるハイパーバイザ
x86アーキテクチャのPCでも、
ハイパーバイザの開発が進んでいます。初期の例としては
VMwareがあります。x86アーキテクチャは
仮想化が難しいとされていましたが、Intel VTやAMD-Vなどの
仮想化支援機構の登場により、完全
仮想化の実現とパフォーマンス向上が可能になりました。
組み込みシステムでも、
ハイパーバイザが利用されるようになってきました。これは、リアルタイムOS(RTOS)と高レベルOSを同時に利用したいという要望に応えるためです。
組み込みシステムでは、リソースが限られているため、省メモリかつ低消費電力な
ハイパーバイザが求められます。また、準
仮想化が選択されることが多いです。
まとめ
ハイパーバイザは、
仮想化技術の中核を担う重要な
ソフトウェアです。Type 1とType 2の2種類があり、それぞれの特徴や用途に応じて使い分けられます。
メインフレームからサーバ、PC、そして
組み込みシステムまで、様々な分野で活用されており、その重要性はますます高まっています。