共用方式為


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型別值。

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

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 回呼例程