struttura DMA_COMMON_BUFFER_EXTENDED_CONFIGURATION (wdm.h)
Definisce una configurazione che descrive ulteriormente i vincoli e le funzionalità durante la creazione di un buffer comune. Il driver può fornire una matrice di strutture DMA_COMMON_BUFFER_EXTENDED_CONFIGURATION nella routine di callback CreateCommonBufferFromM dl.
Sintassi
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;
Membri
ConfigType
Valore DMA_COMMON_BUFFER_EXTENDED_CONFIGURATION_TYPE-typed che indica il tipo di configurazione estesa del buffer comune rappresentata da questa istanza.
LogicalAddressLimits
Quando configType è CommonBufferConfigTypeLogicalAddressLimits, descrive i limiti degli indirizzi logici per il buffer comune da creare.
LogicalAddressLimits.MinimumAddress
Fornisce l'indirizzo logico (inclusivo) minimo iniziale del buffer comune creato.
LogicalAddressLimits.MaximumAddress
Fornisce l'indirizzo logico finale massimo (inclusivo) del buffer comune creato.
SubSection
Quando ConfigType è CommonBufferConfigTypeSubSection, descrive la sottosezione all'interno di un MDL di backup che deve essere usato per ripristinare il buffer comune da creare.
Una sottosezione deve essere contenuta solo all'interno di un singolo MDL in una catena MDL.
SubSection.Offset
Fornisce l'offset nel file MDL per indicare l'indirizzo iniziale del buffer comune. deve essere allineato a pagina.
SubSection.Length
Fornisce la lunghezza della sottosezione del buffer comune. deve essere allineato a pagina.
HardwareAccessType
Quando ConfigType è CommonBufferConfigTypeHardwareAccessPermissions, si tratta di un valore DMA_COMMON_BUFFER_EXTENDED_CONFIGURATION_ACCESS_TYPE-typed che descrive le autorizzazioni di accesso hardware per il buffer comune creato.
La creazione comune del buffer ha esito negativo se il tipo di accesso non è possibile nel sistema. readOnly e writeOnly sono consentiti solo se l'adapter DMA usa il mapping DMA.
Reserved[4]
Questo campo non è usato.
Osservazioni
Le configurazioni estese sono un parametro facoltativo per la routine di callbackcreateCommonBufferFromMdl.
Se non vengono fornite configurazioni estese, la creazione del buffer comune usa l'intero file MDL come memoria di backup, con un indirizzo logico minimo pari a zero e un indirizzo logico massimo definito dal DMA_ADAPTER in uso.
Fabbisogno
Requisito | Valore |
---|---|
server minimo supportato | Windows Server 2022 |
intestazione | wdm.h |
Vedere anche
enumerazione DMA_COMMON_BUFFER_EXTENDED_CONFIGURATION_TYPE
enumerazione DMA_COMMON_BUFFER_EXTENDED_CONFIGURATION_ACCESS_TYPE
PCREATE_COMMON_BUFFER_FROM_MDL routine di callback