структура DXGK_ADL (d3dkmddi.h)
Структура DXGK_ADL представляет собой список дескрипторов адресов (ADL), который используется для описания массива страниц, который может быть физическим или логическим.
Синтаксис
typedef struct _DXGK_ADL {
UINT32 PageCount;
DXGK_ADL_FLAGS Flags;
union {
DXGK_PAGE_NUMBER BasePageNumber;
const DXGK_PAGE_NUMBER *Pages;
};
} DXGK_ADL;
Члены
PageCount
Количество страниц, представляемых ADL.
Flags
Структура DXGK_ADL_FLAGS , указывающая флаги для ADL.
BasePageNumber
Используется для смежных списков ADL. Если задан параметр Flags.Contiguous , BasePageNumber — это начальный номер страницы непрерывного диапазона памяти, а PageCount — количество страниц, которое он представляет. Например, если PageCount=3 и BasePageNumber=100, то DXGK_ADL представляет страницы 100, 101 и 102 (диапазон адресов 0x100000-0x102000).
Pages
Используется для несмежных списков AD. Если параметр Flags.Contiguous не задан, Pages указывает на массив страниц PageCount . Страницы в массиве не гарантированно будут смежными.
Pages имеет тип DXGK_PAGE_NUMBER, который гарантированно имеет тот же размер , что и PFN_NUMBER. Этот массив можно заменить массивом PFN MDL при программировании оборудования.
Комментарии
Dxgkernel предоставляет списки ADL для поддержки как физического, так и логического режимов доступа, а также возможность легко переключаться между двумя режимами во время выполнения. ADL очень похож на MDL, но описывает массив страниц, который может быть физическим или логическим. Так как эти страницы могут быть логическими, адреса, описанные в ADL, не могут быть сопоставлены с виртуальным адресом для прямого доступа к ЦП.
Дополнительные сведения см. в разделе Переназначение DMA IOMMU.
Требования
Требование | Значение |
---|---|
Минимальная версия сервера | Windows Server 2022 |
Верхняя часть | d3dkmddi.h |