Freigeben über


DXGK_ADL Struktur (d3dkmddi.h)

Die DXGK_ADL-Struktur ist eine Adressdeskriptorliste (Address Descriptor List, ADL), die verwendet wird, um ein Array von Seiten zu beschreiben, die entweder physisch oder logisch sein können.

Syntax

typedef struct _DXGK_ADL {
  UINT32         PageCount;
  DXGK_ADL_FLAGS Flags;
  union {
    DXGK_PAGE_NUMBER       BasePageNumber;
    const DXGK_PAGE_NUMBER *Pages;
  };
} DXGK_ADL;

Member

PageCount

Die Anzahl der Seiten, die die ADL darstellt.

Flags

Eine DXGK_ADL_FLAGS-Struktur , die Flags für die ADL angibt.

BasePageNumber

Wird für zusammenhängende ADLs verwendet. Wenn Flags.Contiguous festgelegt ist, ist BasePageNumber die anfängliche Seitenzahl eines zusammenhängenden Speicherbereichs und PageCount die Anzahl der Seiten, die sie darstellt. Wenn beispielsweise PageCount=3 und BasePageNumber=100, dann stellt DXGK_ADL die Seiten 100, 101 und 102 (Adressbereich 0x100000-0x102000) dar.

Pages

Wird für nicht zusammenhängende ADLs verwendet. Wenn Flags.Contiguous nicht festgelegt ist, verweist Pages auf ein Array genau auf PageCount-Seiten . Es ist nicht garantiert, dass die Seiten im Array zusammenhängend sind.

Seiten haben den Typ DXGK_PAGE_NUMBER, der garantiert die gleiche Größe wie ein PFN_NUMBER hat. Dieses Array kann beim Programmieren der Hardware anstelle des PFN-Arrays eines MDL ersetzt werden.

Hinweise

Dxgkernel stellt ADLs bereit, um sowohl physische als auch logische Zugriffsmodi zu unterstützen und zur Laufzeit nahtlos zwischen den beiden Modi wechseln zu können. Eine ADL ist einer MDL sehr ähnlich, beschreibt jedoch ein Array von Seiten, die entweder physisch oder logisch sein können. Da es sich bei diesen Seiten um logische Seiten handeln kann, können die von einer ADL beschriebenen Adressen nicht einer virtuellen Adresse für direkten CPU-Zugriff zugeordnet werden.

Weitere Informationen finden Sie unter IOMMU DMA Remapping.

Anforderungen

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

Weitere Informationen

DXGK_ADL_FLAGS