ハイパーバイザー

監修:コンガテックジャパン株式会社

ハイパーバイザーとは

ハイパーバイザー (VMM: Virtual Machine Monitor) とは、仮想化技術によって仮想マシン (VM: Virtual Machine) を動作させるソフトウェアまたはファームウェアです。

物理的なコンピューターハードウェア上で仮想マシンを作成し、それぞれ独立して動作できるようにします。これにより、複数のオペレーティングシステムが同じハードウェア上で同時に実行されることを可能にします。CPUやストレージなどの物理的なサーバーリソースを効率的に活用できる点が特徴です。

ハイパーバイザーを使用して仮想化することにより、サーバーの物理的な台数を減らすことが可能です。これにより、データセンターのスペースや電力消費または冷却コストなどが削減され、コスト効率が向上します。また、新しい仮想マシンを作成したり、既存の仮想マシンのリソースを変更したりすることが容易なため、柔軟性も高いです。

産業用システムに適用されているリアルタイムOSが遅延無く動作するリアルタイム ハイパーバイザーも提供されており、ハードリアルタイムが必要な制御機器においても仮想化が進展しています。

ハイパーバイザーの使用用途

ハイパーバイザーは様々な用途で使用されます。以下はその一例です。

1. 情報通信産業

情報通信企業はクラウドサービスを提供するためにハイパーバイザーを使用します。ハイパーバイザーを利用することで物理的なサーバーリソースを最適化し、複数のテナントや顧客にサービスを提供することが可能です。また、、ネットワーク機能を仮想化するためにも使用されます。

2. 自動車産業

自動車メーカーは車載システムや組み込みソフトウェアの開発にハイパーバイザーを使用します。これにより、複数のシステムを単一のハードウェア上で実行し、車載システムの統合や効率化が可能になります。これにより、製造する自動車の市場競争力を向上させることが可能です。

3. 小売業

小売業界ではPOSシステムを仮想化してセキュリティを強化したり、複数の店舗で一貫したシステムを提供したりするためにハイパーバイザーを使用します。これにより、リソースの共有やセキュリティの強化が可能です。また、オンラインストアやバックオフィスのシステムを効率的に運用するためにも使用されることが多いです。

4. 産業用システム (リアルタイム制御)

産業用システムでは、モーション制御などにリアルタイムOSが用いられておりますが、一般的なハイパーバイザーは、リアルタイムOSの動作に必要な確定的な動作が保証されないため、リアルタイム ハイパーバイザーが使用されます。これにより、操作パネルなどの (HMI) 用OSと制御用のリアルタイムOSが単一のハードウェア上に統合され、設置スペース、保守管理などのコストが削減できます。

ハイパーバイザーの原理

ハイパーバイザーは物理的なハードウェアを仮想マシンに提供するために、ハードウェアの抽象化を行います。これにより、各仮想マシンは自分が物理的なハードウェアを占有しているかのように振る舞うことが可能です。

CPU処理能力やメモリ、ストレージなどのリソースを抽象化・仮想化する仕組みです。各仮想マシンは、割り当てられたリソースの範囲内で動作し、他の仮想マシンから隔離された環境であるかのように振舞います。

最近のCPUでは、ハードウェアにより仮想環境を支援する機能を備えたプロセッサが主流となり、仮想マシン情報の管理がソフトウェアから解放され、リアルマシンと同等の遅延が無い動作が可能となっています。

また、ハイパーバイザーは仮想マシンの作成や起動・停止などの管理機能を提供します。リソースの割り当てやバックアップなどの操作も行うことが可能です。

各仮想マシン上ではゲストOSが実行されます。このための仮想環境をハイパーバイザーが提供します。ゲストOSはハイパーバイザーと通信してハードウェアリソースを要求し、仮想化されたハードウェア上で動作する仕組みです。

ハイパーバイザーの種類

ハイパーバイザーにはType1とType2が存在します。それぞれ異なる使用シナリオやニーズに対応しています。ハイパーバイザーを選択する際には、その要件や目的に応じて適切なタイプを選択することが重要です。

1. Type 1 (ベアメタルハイパーバイザー) 

Type 1 ハイパーバイザーは物理的なハードウェアの上で直接動作します。ハイパーバイザー自体が最初にロードされ、その上で仮想マシンが実行されます。ホストOSの必要がないため、リソースの使用効率が高い点が特徴です。

通常、データセンターでの仮想化環境やクラウドプラットフォームで使用されます。Microsoft Hyper-VやXen Hypervisorなどがその一例です。

2. Type 2 (ホスト型ハイパーバイザー) 

Type 2 ハイパーバイザーは既存のオペレーティングシステムの上で動作します。ホストOSが最初に起動し、その上でハイパーバイザーが実行される仕組みです。デスクトップ環境や開発環境など、小規模な仮想化環境で使用されることが一般的です。

導入が容易であり、複数のオペレーティングシステムを同時に実行できる点が特徴です。ただし、パフォーマンスが Type 1 ハイパーバイザーよりも低い場合があります。

3. リアルタイム ハイパーバイザー

モーション制御などに適用されているリアルタイムOSを一般的なハイパーバイザー上で動作させた場合、ハイパーバイザーによるデバイスへのアクセス、仮想マシンのスケジューリングなどにより動作に遅延が生じるためリアルタイムOSへの適用は困難です。特にハードリアルタイムが要求される環境においては、確定的な遅延時間の下で動作する必要があります。リアルタイム ハイパーバイザーは、リアルタイムOSが遅延無くリアル環境と同様に動作可能です。

本記事はハイパーバイザーを製造・販売するコンガテックジャパン株式会社様に監修を頂きました。

コンガテックジャパン株式会社の会社概要はこちら