Bagikan melalui


struktur DXGK_ADL (d3dkmddi.h)

Struktur DXGK_ADL adalah daftar pendeskripsi alamat (ADL), yang digunakan untuk menjelaskan array halaman yang dapat berupa fisik atau logis.

Sintaks

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

Anggota

PageCount

Jumlah halaman yang diwakili ADL.

Flags

Struktur DXGK_ADL_FLAGS yang menentukan bendera untuk ADL.

BasePageNumber

Digunakan untuk ADL yang berseberangan. Ketika Flags.Contiguous diatur, BasePageNumber adalah nomor halaman awal dari rentang memori dan PageCount yang bersebelahan adalah jumlah halaman yang diwakilinya. Misalnya, jika PageCount=3 dan BasePageNumber=100, maka DXGK_ADL mewakili halaman 100, 101, dan 102 (rentang alamat 0x100000-0x102000).

Pages

Digunakan untuk ADL yang tidak bersebelahan. Saat Flags.Contiguous tidak diatur, Pages menunjuk ke array halaman PageCount yang tepat. Halaman dalam array tidak dijamin berseberangan.

Halaman berjenis DXGK_PAGE_NUMBER, yang dijamin berukuran sama dengan PFN_NUMBER. Array ini dapat diganti sebagai pengganti array PFN MDL saat memprogram perangkat keras.

Keterangan

Dxgkernel menyediakan ADL untuk mendukung mode akses fisik dan logis, dan dapat beralih di antara dua mode dengan mulus pada waktu proses. ADL sangat mirip dengan MDL, tetapi menjelaskan array halaman yang dapat berupa fisik atau logis. Karena halaman ini dapat menjadi halaman logis, alamat yang dijelaskan oleh ADL tidak dapat dipetakan ke alamat virtual untuk akses CPU langsung.

Untuk informasi selengkapnya, lihat remapping IOMMU DMA.

Persyaratan

Persyaratan Nilai
Server minimum yang didukung Windows Server 2022
Header d3dkmddi.h

Lihat juga

DXGK_ADL_FLAGS