DXGKARGCB_MAP_PHYSICAL_MEMORY Struktur (d3dkmddi.h)

Die DXGKARGCB_MAP_PHYSICAL_MEMORY-Struktur enthält die Informationen, die von der DXGKCB_MAPPHYSICALMEMORY Rückruffunktion verwendet werden, um eine CPU-sichtbare virtuelle Adresse dem zugrunde liegenden physischen Arbeitsspeicher zuzuordnen.

Syntax

typedef struct _DXGKARGCB_MAP_PHYSICAL_MEMORY {
  [in]     HANDLE           hPhysicalMemoryObject;
  [in]     DXGK_ACCESS_MODE AccessMode;
  [in/out] SIZE_T           Offset;
  [in]     SIZE_T           Size;
  [out]    void             *pMappedAddress;
} DXGKARGCB_MAP_PHYSICAL_MEMORY;

Member

[in] hPhysicalMemoryObject

Das Objekt des physischen Arbeitsspeichers, das die zugrunde liegenden physischen Seiten beschreibt, die zugeordnet werden sollen. Dieses Objekt wurde in einem vorherigen Aufruf von DXGKCB_CREATEPHYSICALMEMORYOBJECT erstellt.

[in] AccessMode

Ein DXGK_ACCESS_MODE Enumerationswert, der den Zugriffsmodus (Benutzermodus oder Kernelmodus) beschreibt, für den die Zuordnung erfolgen soll.

[in/out] Offset

Gibt als Eingabe den Offset vom Anfang des physischen Speicherobjekts in Bytes an. Gibt als Ausgabe den Offset vom Anfang der zugeordneten Basisadresse an, in der sich die angeforderten Daten befinden, in Bytes. Weitere Informationen finden Sie unter Hinweise.

[in] Size

Gibt als Eingabe die angeforderte Größe der zugeordneten Region in Bytes an. Gibt als Ausgabe die tatsächliche zugeordnete Größe in Bytes an. Weitere Informationen finden Sie unter Hinweise.

[out] pMappedAddress

Bei einem erfolgreichen Aufruf von DXGKCB_MAPPHYSICALMEMORY ist dies ein Zeiger auf die zugrunde liegende Zuordnung des physischen Arbeitsspeichers. Der Beginn des zugeordneten Speicherbereichs entspricht möglicherweise nicht genau dem vom Treiber angeforderten Offset, wenn eine Rundung oder Ausrichtung erforderlich ist. Daher bezieht sich der Ausgabewert von Offset auf den Offset von der Basisadresse auf die vom Treiber angeforderten Daten. Das heißt, ActualAddress = BaseAddress + Offset.

Hinweise

Offset und Size sind Eingabe- und Ausgabeparameter. Diese beschreiben als Eingabe den Bereich des physischen Arbeitsspeichers, der vom Aufrufer angefordert wird. In der Ausgabe beschreiben diese die tatsächliche zugeordnete Ansicht. Dies liegt daran, dass sich die Adresse, die dem entsprechenden physischen Speicher zugeordnet ist, möglicherweise nicht genau am angeforderten Offset befindet. Die tatsächlich vom Aufrufer angeforderten Daten entsprechen pMappedAddress + Offset. Die Größe des zugeordneten virtuellen Adressbereichs ist der Ausgabewert von Size, der größer als die angeforderte Größe sein kann.

Weitere Informationen finden Sie unter IOMMU DMA Remapping .

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Server) Windows Server 2022 (WDDM 2.9)
Kopfzeile d3dkmddi.h

Weitere Informationen

DXGK_ACCESS_MODE

DXGKCB_MAPPHYSICALMEMORY