共用方式為


列舉網路適配器上的虛擬函式

上層驅動程式或使用者應用程式可以在支援單一根 I/O 虛擬化(SR-IOV)的網路適配器上取得所有 PCI Express(PCIe)虛擬功能(VFs)的清單。 驅動程式或應用程式發出 OID_NIC_SWITCH_ENUM_VFS 的物件識別碼 (OID) 方法要求,以取得此清單。

在驅動程式或應用程式發出 OID 要求之前,它必須初始化與要求一起傳遞的 NDIS_NIC_SWITCH_VF_INFO_ARRAY 結構。 初始化 NDIS_NIC_SWITCH_VF_INFO_ARRAY 結構時,驅動程式或應用程式必須遵循下列指導方針:

  • 如果NDIS_NIC_SWITCH_VF_INFO_ARRAY_ENUM_ON_SPECIFIC_SWITCH旗標是在 Flags 成員中設定,則上層驅動程式或應用程式必須將 SwitchId 成員設定為 SR-IOV 網路適配器上 NIC 交換器的識別符。 藉由以這種方式設定這些成員,VF 資訊只會針對 SR-IOV 網路適配器上的指定 NIC 交換器傳回。

    附註 上層驅動程式和使用者模式下的應用程式可以透過發出 OID_NIC_SWITCH_ENUM_SWITCHES的 OID 查詢要求來取得 NIC 交換器識別符。

  • 如果 旗標 成員設為零,驅動程式或應用程式必須將 SwitchId 成員設定為零。 藉由以這種方式設定這些成員,就會針對 SR-IOV 網路適配器上的所有 NIC 交換器傳回 VF 資訊。

    注意 從 Windows Server 2012 開始,Windows 僅支援網路適配器上的預設 NIC 交換器。 不論在 Flags 成員中設定的旗標為何,SwitchId 成員都必須設定為 NDIS_DEFAULT_SWITCH_ID。

從這個 OID 查詢要求成功傳回之後,NDIS_OID_REQUEST 結構 InformationBuffer 成員包含緩衝區的指標,並且其中包含下列內容:

NDIS 會處理迷你埠驅動程式 OID_NIC_SWITCH_ENUM_VFS 要求。 NDIS 會從其維護的數據內部快取中傳回資訊,這些數據來自檢查下列來源的結果: