次の方法で共有


Hyper-V の概要

Hyper-V は、x64 バージョンの Windows Server 2008 以降のバージョンの Windows Server 用のハイパーバイザー ベースの仮想化テクノロジです。 ハイパーバイザーは、複数の分離されたオペレーティング システムが 1 つのハードウェア プラットフォームを共有できるようにする、プロセッサ固有の仮想化プラットフォームです。

Hyper-V では、個別のパーティションを使用した分離がサポート されます。 パーティションは、オペレーティング システムが実行されるハイパーバイザーによってサポートされる分離の論理単位です。 仮想化スタックは、Hyper-V 親パーティションの管理オペレーティング システムで実行され、ハードウェア デバイスに直接アクセスできます。 その後、管理オペレーティング システムは、Hyper-V 子パーティションを作成し、その中でゲスト オペレーティング システムを起動します。

パーティションは物理プロセッサにアクセスすることも、プロセッサの割り込みを処理することもありません。 代わりに、プロセッサの仮想ビューがあり、各ゲスト パーティションにプライベートな仮想メモリ アドレス領域で実行されます。 ハイパーバイザーは、プロセッサに対する割り込みを処理し、それぞれのパーティションに再配信します。 Hyper-V は、プロセッサによって使用されるメモリ管理ハードウェアとは別に動作する I/O メモリ管理ユニット (IOMMU) を使用して、さまざまなゲスト仮想アドレス空間間のアドレス変換をハードウェアで高速化することもできます。 IOMMU は、物理メモリ アドレスを子パーティションで使用されるアドレスに再マップするために使用されます。

また、子パーティションは、他のハードウェア リソースに直接アクセスすることはできません。 代わりに、子パーティションには、仮想デバイスと呼ばれるリソースの 仮想ビューが表示されます。 仮想デバイスへの要求は、仮想マシン バス (VMBus) またはハイパーバイザーを介して、デバイス要求を処理する親パーティション内の管理オペレーティング システムにリダイレクトされます。 VMBus は論理パーティション間通信チャネルであり、親パーティションと子パーティション間の通信用に個別のチャネルが割り当てられます。

管理オペレーティング システムは、VMBus 経由で通信して子パーティションからのデバイス アクセス要求を処理する仮想サービス プロバイダー (VSP) をホストします。 子パーティション上のゲスト オペレーティング システムは、VMBus を使用してデバイス要求を管理オペレーティング システムの VSP にリダイレクトする仮想サービス クライアント (VSC) をホストします。

子パーティションへのネットワーク アクセスの場合、ネットワーク VSC (NetVSC) はゲスト オペレーティング システムで実行されます。 ネットワーク要求とパケットは、管理オペレーティング システムで実行される各 NetVSC とネットワーク VSP の間で送信されます。 NetVSC は、ホスト コンピューター上の物理ネットワーク アダプターの仮想化ビューも公開します。 この仮想化されたネットワーク アダプターは、 合成ネットワーク アダプターと呼ばれます。

Hyper-V では、エミュレートされたネットワーク アダプターと呼ばれる、効率の低いもう 1 つの仮想化 ネットワーク アダプターもサポートされることに注意してください。 エミュレートされたネットワーク アダプターは、Intel ネットワーク アダプターを模倣し、ハードウェア エミュレーションを使用して NetVSP との間でパケットを転送します。

次の図は、合成ネットワーク アダプター経由の Hyper-V のネットワーク データ パスを示しています。

Hyper-V の合成ネットワーク デバイスのデータ パスを示す図。

これらのデータ パスは、仮想マシン キュー (VMQ)、単一ルート I/O 仮想化 (SR-IOV)、拡張可能スイッチ インターフェイス Hyper-V などの NDIS 仮想化ネットワーク インターフェイスを使用して拡張されます。 たとえば、netVSC は、SR-IOV インターフェイスをサポートする物理ネットワーク アダプターの仮想関数 (VF) に接続するように構成できます。 この場合、NetVSC は、VMBus 経由ではなく、基になる物理アダプター経由で直接パケットを送受信します。

Hyper-V の詳細については、「Hyper-V」を参照してください。