共用方式為


DMA_COMMON_BUFFER_EXTENDED_CONFIGURATION 結構 (wdm.h)

定義設定,以進一步描述建立通用緩衝區時的條件約束和功能。 驅動程式可以在 CreateCommonBufferFromMdl 回呼例程中提供DMA_COMMON_BUFFER_EXTENDED_CONFIGURATION結構的陣列。

語法

typedef struct _DMA_COMMON_BUFFER_EXTENDED_CONFIGURATION {
  DMA_COMMON_BUFFER_EXTENDED_CONFIGURATION_TYPE ConfigType;
  union {
    struct {
      PHYSICAL_ADDRESS MinimumAddress;
      PHYSICAL_ADDRESS MaximumAddress;
    } LogicalAddressLimits;
    struct {
      ULONGLONG Offset;
      ULONG     Length;
    } SubSection;
    DMA_COMMON_BUFFER_EXTENDED_CONFIGURATION_ACCESS_TYPE HardwareAccessType;
    ULONGLONG                                            Reserved[4];
  };
} DMA_COMMON_BUFFER_EXTENDED_CONFIGURATION, *PDMA_COMMON_BUFFER_EXTENDED_CONFIGURATION;

成員

ConfigType

DMA_COMMON_BUFFER_EXTENDED_CONFIGURATION_TYPE型別值,指出這個實例所代表的一般緩衝區擴充組態類型。

LogicalAddressLimits

ConfigTypeCommonBufferConfigTypeLogicalAddressLimits 時,描述所建立之通用緩衝區的邏輯位址限制。

LogicalAddressLimits.MinimumAddress

提供 (內含) 所建立常見緩衝區的最小起始邏輯位址。

LogicalAddressLimits.MaximumAddress

提供 (內含) 所建立之常見緩衝區的最終邏輯位址上限。

SubSection

ConfigTypeCommonBufferConfigTypeSubSection 時,描述備份 MDL 內的子區段,該子區段應該用來備份所建立的通用緩衝區。

子區段只能包含在 MDL 鏈結中的單一 MDL 內。

SubSection.Offset

提供 MDL 中的位移,以指出通用緩衝區的起始位址。 必須對齊頁面。

SubSection.Length

提供通用緩衝區子區段的長度。 必須對齊頁面。

HardwareAccessType

ConfigTypeCommonBufferConfigTypeHardwareAccessPermissions 時,這是 一個DMA_COMMON_BUFFER_EXTENDED_CONFIGURATION_ACCESS_TYPE類型的值,描述所建立之通用緩衝區的硬體訪問許可權。

如果系統上無法存取類型,常見的緩衝區建立就會失敗。 只有在 DMA 配接器使用 DMA 重新對應時,才允許 ReadOnlyWriteOnly

Reserved[4]

此欄位未使用。

備註

擴充組態是 CreateCommonBufferFromMdl 回呼例程的選擇性參數。

如果未提供任何擴充組態,常見的緩衝區建立會使用整個 MDL 做為支援記憶體,且最小邏輯位址為零,以及所使用 之DMA_ADAPTER 所定義的邏輯位址上限。

規格需求

需求
最低支援的伺服器 Windows Server 2022
標頭 wdm.h

另請參閱

DMA_COMMON_BUFFER_EXTENDED_CONFIGURATION_TYPE 列舉

DMA_COMMON_BUFFER_EXTENDED_CONFIGURATION_ACCESS_TYPE 列舉

PCREATE_COMMON_BUFFER_FROM_MDL 回呼例程