struttura DMA_TRANSFER_INFO_V1 (wdm.h)
La struttura DMA_TRANSFER_INFO_V1 contiene i requisiti di allocazione per un elenco di dispersione/raccolta che descrive il buffer dei dati di I/O per un trasferimento DMA.
Sintassi
typedef struct _DMA_TRANSFER_INFO_V1 {
ULONG MapRegisterCount;
ULONG ScatterGatherElementCount;
ULONG ScatterGatherListSize;
} DMA_TRANSFER_INFO_V1, *PDMA_TRANSFER_INFO_V1;
Members
MapRegisterCount
Numero di registri mappa necessari per convertire tutti gli indirizzi fisici nell'elenco di dispersione/raccolta in indirizzi logici.
ScatterGatherElementCount
Numero di elementi di dispersione/raccolta nell'elenco di dispersione/raccolta. Ogni elemento è una struttura di tipo SCATTER_GATHER_ELEMENT.
ScatterGatherListSize
Dimensioni necessarie, in byte, del buffer di dispersione/raccolta. Questo buffer contiene l'elenco di dispersione/raccolta che descrive la memoria usata per bufferre i dati di I/O durante il trasferimento DMA. Il buffer a dispersione/raccolta deve essere abbastanza grande per contenere una struttura SCATTER_GATHER_LIST e una matrice di strutture SCATTER_GATHER_ELEMENT , oltre a dati aggiuntivi usati internamente dal sistema operativo.
Commenti
Il membro V1 della struttura DMA_TRANSFER_INFO è una struttura di tipo DMA_TRANSFER_INFO_V1.
I parametri Mdl, Offset e Length nella routine GetDmaTransferInfo descrivono insieme il buffer di dati di I/O per un trasferimento DMA. Allo scopo di programmare un controller DMA, questo buffer può essere descritto in modo più pratico da un elenco di dispersione/raccolta. Un elenco a dispersione/raccolta descrive la memoria in un buffer di dati di I/O, ma non contiene questa memoria. Un driver chiama GetDmaTransferInfo per ottenere i requisiti di allocazione per questo elenco di dispersione/raccolta. GetDmaTransferInfo scrive i requisiti di allocazione nel membro V1 di una struttura di DMA_TRANSFER_INFO fornita dal chiamante.
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato | Supportato a partire da Windows 8. |
Intestazione | wdm.h (include Wdm.h, Ntddk.h, Ntifs.h) |