Freigeben über


PCI_VIRTUALIZATION_INTERFACE-Struktur (wdm.h)

Die PCI_VIRTUALIZATION_INTERFACE-Struktur ermöglicht Es Treibern, den PCI Express -Konfigurationsraum (PCIe) für eine virtuelle Funktion (VF) zu verwalten und zu konfigurieren. VFs werden auf dem PCI-Bus von Geräten verfügbar gemacht, die die SR-IOV-Schnittstelle (Single Root E/O Virtualization) unterstützen.

Diese Struktur beschreibt die GUID_PCI_VIRTUALIZATION_INTERFACE-Schnittstelle .

Syntax

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;

Member

Size

Die Größe (in Bytes) dieser Struktur.

Version

Die vom Treiber definierte Schnittstellenversion.

Context

Ein Zeiger auf schnittstellenspezifische Kontextinformationen.

InterfaceReference

Ein Zeiger auf eine InterfaceReference-Routine , die die Referenzanzahl der Schnittstelle erhöht.

InterfaceDereference

Ein Zeiger auf eine InterfaceDereference-Routine , die die Referenzanzahl der Schnittstelle erhöht.

SetVirtualFunctionData

Ein Zeiger auf eine SetVirtualFunctionData-Routine , die Daten in den PCIe-Konfigurationsraum des VF eines SR-IOV-Geräts schreibt.

GetVirtualFunctionData

Ein Zeiger auf eine GetVirtualFunctionData-Routine , die Daten aus dem PCIe-Konfigurationsraum des VF eines SR-IOV-Geräts liest.

GetLocation

Ein Zeiger auf eine GetLocation-Routine , die Informationen zum aktuellen Gerätestandort eines VF in der PCIe-Hierarchie bereitstellt. Diese Informationen sind für ein Virtualisierungssystem erforderlich, das eine E/A-Speicherverwaltungseinheit (IOMMU) verwendet, um Datenverkehr an oder vom Gerät weiterzuleiten.

GetResources

Ein Zeiger auf eine GetResources-Routine , die Informationen zu den Ressourcen bereitstellt, die für die Virtualisierung auf einem SR-IOV-Gerät verfügbar sind.

EnableVirtualization

Ein Zeiger auf eine EnableVirtualization-Routine , die die Virtualisierung auf einem SR-IOV-Gerät aktiviert oder deaktiviert.

GetVirtualFunctionProbedBars

Ein Zeiger auf eine GetVirtualFunctionProbedBars-Routine , mit der ein nicht privilegierter virtueller Hyper-V-Computer (VM) bestimmen kann, was aus den PCIe-Basisadressregistern (BARs) einer VF nach einer Abfrage durch den PCI-Bustreiber gelesen wird. Der PCI-Treiber führt diese Abfrage aus, um den Speicher- oder E/A-Adressraum zu ermitteln, den das Gerät benötigt.

Hinweise

Bei Geräten, die die SR-IOV-Schnittstelle unterstützen, müssen Treiber gelegentlich auf den PCIe-Konfigurationsraum der VFs des Geräts zugreifen und diesen verwalten. Treiber rufen Routinen über die GUID_PCI_VIRTUALIZATION_INTERFACE-Schnittstelle auf, um auf den PCIe-Konfigurationsraum der VFs auf dem Gerät zuzugreifen.

Da die VFs eines Geräts nicht als vollständige PCIe-Geräte auf dem PCI-Bus angezeigt werden, kann die GUID_BUS_INTERFACE_STANDARD-Schnittstelle nicht für die Verwaltung eines VF verwendet werden.

Die PCI_VIRTUALIZATION_INTERFACE-Struktur ist eine Erweiterung der INTERFACE-Struktur .

Ein Treiber ruft einen Zeiger auf die PCI_VIRTUALIZATION_INTERFACE-Struktur ab, indem er ein IRP_MN_QUERY_INTERFACE E/A-Anforderungspaket (IRP) an seinen Bustreiber sendet, wobei InterfaceType auf GUID_PCI_VIRTUALIZATION_INTERFACE festgelegt ist.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Server) Windows Server 2012
Kopfzeile wdm.h (einschließen von Wdm.h)

Weitere Informationen

GUID_BUS_INTERFACE_STANDARD

InterfaceDereference

InterfaceReference

IRP_MN_QUERY_INTERFACE