次の方法で共有


PCI_VIRTUALIZATION_INTERFACE構造体 (wdm.h)

PCI_VIRTUALIZATION_INTERFACE 構造体を使用すると、ドライバーは仮想関数 (VF) の PCI Express (PCIe) 構成領域を管理および構成できます。 1 つのルート I/O 仮想化 (SR-IOV) インターフェイスをサポートするデバイスによって、PCI バス上で VM が公開されます。

この構造体では、GUID_PCI_VIRTUALIZATION_INTERFACE インターフェイスについて説明します。

構文

typedef struct _PCI_VIRTUALIZATION_INTERFACE {
  USHORT                            Size;
  USHORT                            Version;
  PVOID                             Context;
  PINTERFACE_REFERENCE              InterfaceReference;
  PINTERFACE_DEREFERENCE            InterfaceDereference;
  PSET_VIRTUAL_DEVICE_DATA          SetVirtualFunctionData;
  PGET_VIRTUAL_DEVICE_DATA          GetVirtualFunctionData;
  PGET_VIRTUAL_DEVICE_LOCATION      GetLocation;
  PGET_VIRTUAL_DEVICE_RESOURCES     GetResources;
  PENABLE_VIRTUALIZATION            EnableVirtualization;
  PGET_VIRTUAL_FUNCTION_PROBED_BARS GetVirtualFunctionProbedBars;
} PCI_VIRTUALIZATION_INTERFACE, *PPCI_VIRTUALIZATION_INTERFACE;

メンバーズ

Size

この構造体のサイズ (バイト単位)。

Version

ドライバー定義インターフェイスのバージョン。

Context

インターフェイス固有のコンテキスト情報へのポインター。

InterfaceReference

インターフェイスの参照カウントをインクリメントする InterfaceReference ルーチンへのポインター。

InterfaceDereference

インターフェイスの参照カウントをデクリメントする InterfaceDereference ルーチンへのポインター。

SetVirtualFunctionData

SR-IOV デバイスの VF の PCIe 構成空間にデータを書き込む SetVirtualFunctionData ルーチンへのポインター。

GetVirtualFunctionData

SR-IOV デバイスの VF の PCIe 構成空間からデータを読み取る GetVirtualFunctionData ルーチンへのポインター。

GetLocation

PCIe 階層内の VF の現在のデバイスの場所に関する情報を提供する GetLocation ルーチンへのポインター。 この情報は、I/O メモリ管理ユニット (IOMMU) を使用してデバイスとの間でトラフィックをルーティングする仮想化システムに必要です。

GetResources

GetResources ルーチンへのポインター。SR-IOV デバイスで仮想化に使用できるリソースに関する情報を提供します。

EnableVirtualization

EnableVirtualization、SR-IOV デバイスでの仮想化を有効または無効にするルーチンへのポインター。

GetVirtualFunctionProbedBars

GetVirtualFunctionProbedBars ルーチンへのポインター。このルーチンにより、非特権 Hyper-V 仮想マシン (VM) は、PCI バス ドライバーによるクエリの後に VF の PCIe ベース アドレス レジスタ (BAR) から読み取られる内容を決定できます。 PCI ドライバーは、このクエリを実行して、デバイスに必要なメモリまたは I/O アドレス空間を決定します。

備考

SR-IOV インターフェイスをサポートするデバイスの場合、ドライバーはデバイスの VM の PCIe 構成領域にアクセスして管理しなければならない場合があります。 ドライバーは、GUID_PCI_VIRTUALIZATION_INTERFACE インターフェイスからルーチンを呼び出して、デバイス上の VM の PCIe 構成空間にアクセスします。

デバイスの VM は PCI バス上の完全な PCIe デバイスとして表示されないため、GUID_BUS_INTERFACE_STANDARD インターフェイスを VF の管理に使用することはできません。

PCI_VIRTUALIZATION_INTERFACE 構造体は、INTERFACE 構造体の拡張です。

ドライバーは、IRP_MN_QUERY_INTERFACE I/O 要求パケット (IRP) InterfaceType GUID_PCI_VIRTUALIZATION_INTERFACEに設定されているバス ドライバーに送信することによって、PCI_VIRTUALIZATION_INTERFACE 構造体へのポインターを取得します。

必要条件

要件 価値
サポートされる最小サーバー Windows Server 2012
ヘッダー wdm.h (Wdm.h を含む)

関連項目

GUID_BUS_INTERFACE_STANDARD

InterfaceDereference

InterfaceReference

IRP_MN_QUERY_INTERFACE