enumerazione DXGK_BUILDPAGINGBUFFER_OPERATION (d3dkmddi.h)

DXGK_BUILDPAGINGBUFFER_OPERATION indica il tipo di operazione di memoria da eseguire.

Sintassi

typedef enum _DXGK_BUILDPAGINGBUFFER_OPERATION {
  DXGK_OPERATION_TRANSFER = 0,
  DXGK_OPERATION_FILL = 1,
  DXGK_OPERATION_DISCARD_CONTENT = 2,
  DXGK_OPERATION_READ_PHYSICAL = 3,
  DXGK_OPERATION_WRITE_PHYSICAL = 4,
  DXGK_OPERATION_MAP_APERTURE_SEGMENT = 5,
  DXGK_OPERATION_UNMAP_APERTURE_SEGMENT = 6,
  DXGK_OPERATION_SPECIAL_LOCK_TRANSFER = 7,
  DXGK_OPERATION_VIRTUAL_TRANSFER = 8,
  DXGK_OPERATION_VIRTUAL_FILL = 9,
  DXGK_OPERATION_INIT_CONTEXT_RESOURCE = 10,
  DXGK_OPERATION_UPDATE_PAGE_TABLE = 11,
  DXGK_OPERATION_FLUSH_TLB = 12,
  DXGK_OPERATION_UPDATE_CONTEXT_ALLOCATION = 13,
  DXGK_OPERATION_COPY_PAGE_TABLE_ENTRIES = 14,
  DXGK_OPERATION_NOTIFY_RESIDENCY = 15,
  DXGK_OPERATION_SIGNAL_MONITORED_FENCE = 16,
  DXGK_OPERATION_MAP_APERTURE_SEGMENT2 = 17,
  DXGK_OPERATION_NOTIFY_FENCE_RESIDENCY,
  DXGK_OPERATION_MAP_MMU,
  DXGK_OPERATION_UNMAP_MMU,
  DXGK_OPERATION_NOTIFY_RESIDENCY2,
  DXGK_OPERATION_NOTIFY_ALLOC
} DXGK_BUILDPAGINGBUFFER_OPERATION;

Costanti

 
DXGK_OPERATION_TRANSFER
Valore: 0
Eseguire un'operazione di trasferimento che sposta il contenuto di un'allocazione da una posizione a un'altra. Solo WDDMv1.
DXGK_OPERATION_FILL
Valore: 1
Compilare un'allocazione con un modello specificato. Solo WDDMv1.
DXGK_OPERATION_DISCARD_CONTENT
Valore: 2
Notifica al driver che un'allocazione viene eliminata dalla posizione corrente dell'allocazione in un segmento di memoria, ovvero l'allocazione viene rimossa e non copiata nella memoria di sistema. Solo WDDMv1.
DXGK_OPERATION_READ_PHYSICAL
Valore: 3
Eseguire un'operazione di lettura fisica che legge da un indirizzo di memoria fisica specificato. Solo WDDMv1.
DXGK_OPERATION_WRITE_PHYSICAL
Valore: 4
Eseguire un'operazione fisica di scrittura che scrive in un indirizzo di memoria fisica specificato. Solo WDDMv1.
DXGK_OPERATION_MAP_APERTURE_SEGMENT
Valore: 5
Eseguire un'operazione map-aperture-segmento che esegue il mapping di un elenco di descrittori di memoria (MDL) in un intervallo di segmento di apertura. Common WDDMv1 e WDDMv2.
DXGK_OPERATION_UNMAP_APERTURE_SEGMENT
Valore: 6
Eseguire un'operazione di segmento unmap-aperture che annulla il mapping di un intervallo mappato in precedenza di un segmento di apertura. Common WDDMv1 e WDDMv2.
DXGK_OPERATION_SPECIAL_LOCK_TRANSFER
Valore: 7
Eseguire un'operazione di trasferimento speciale che sposta il contenuto di un'allocazione da una posizione a un'altra. In questa operazione il contenuto dell'allocazione viene trasferito da o all'indirizzo virtuale alternativo configurato per l'allocazione, ovvero quando la funzione pfnLockCb è stata chiamata con il set di flag di bit UseAlternateVA . Solo WDDMv1.
DXGK_OPERATION_VIRTUAL_TRANSFER
Valore: 8
L'operazione viene usata per trasferire il contenuto di allocazione tra posizioni in memoria. Solo WDDMv1.
DXGK_OPERATION_VIRTUAL_FILL
Valore: 9
L'operazione viene usata per riempire un'allocazione con un modello. Solo WDDMv1.
DXGK_OPERATION_INIT_CONTEXT_RESOURCE
Valore: 10
Eseguire un'operazione di inizializzazione del contesto per un contesto GPU o un contesto specifico del dispositivo. Questo valore è supportato a partire da Windows 8. Il driver miniport visualizzato alloca le risorse di contesto chiamando DxgkCbCreateContextAllocation. Common WDDMv1 e WDDMv2.
DXGK_OPERATION_UPDATE_PAGE_TABLE
Valore: 11
L'operazione viene chiamata per consentire al driver in modalità kernel di compilare un buffer di comandi per aggiornare una tabella di pagine. Disponibile a partire da WDDM 2.0.
DXGK_OPERATION_FLUSH_TLB
Valore: 12
Questa operazione indica alla GPU di scaricare le voci del buffer di ricerca , che appartengono alla tabella della pagina radice specificata. Disponibile a partire da WDDM 2.0.
DXGK_OPERATION_UPDATE_CONTEXT_ALLOCATION
Valore: 13
Questa operazione viene usata per aggiornare il contenuto di un contesto o di un'allocazione del dispositivo. Disponibile a partire da WDDM 2.0.
DXGK_OPERATION_COPY_PAGE_TABLE_ENTRIES
Valore: 14
Questa operazione viene chiamata per copiare le voci della tabella di pagina da una posizione a un'altra. Disponibile a partire da WDDM 2.0.
DXGK_OPERATION_NOTIFY_RESIDENCY
Valore: 15
L'operazione di paging viene emessa ogni volta che viene modificata una residenza di allocazione (quando l'allocazione viene rimossa o eseguita il commit). Disponibile a partire da WDDM 2.0.
DXGK_OPERATION_SIGNAL_MONITORED_FENCE
Valore: 16
Questa operazione viene chiamata per segnalare un recinto monitorato. Disponibile a partire da Windows 10 versione 1703 (WDDM 2.2).
DXGK_OPERATION_MAP_APERTURE_SEGMENT2
Valore: 17
Eseguire un'operazione map-aperture-segment che esegue il mapping di un elenco di descrittori di indirizzi (ADL) a un intervallo di segmento di apertura. Questa operazione si comporta in modo analogo a DXGK_OPERATION_MAP_APERTURE_SEGMENT, ma fornisce un DXGK_ADL anziché un MDL. I driver che supportano il remapping degli indirizzi logici ricevono chiamate a DXGK_OPERATION_MAP_APERTURE_SEGMENT2 anziché DXGK_OPERATION_MAP_APERTURE_SEGMENT.

Per acconsentire esplicitamente a questa operazione, necessaria per il remapping di IOMMU DMA, il driver deve indicare il supporto MapAperture2Supported nella struttura DXGK_VIDMMCAPS . Questa operazione è disponibile a partire da WDDM 3.0.

Commenti

La struttura DXGK_BUILDPAGINGBUFFER_OPERATION viene specificata nel membro Operation della struttura DXGKARG_BUILDPAGINGBUFFER , passata a DxgkDdiBuildPagingBuffer per compilare buffer di paging per le operazioni di memoria.

Requisiti

Requisito Valore
Client minimo supportato Windows 10
Server minimo supportato Windows Server 2016
Intestazione d3dkmddi.h (include D3dkmddi.h)