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
ADL のフラグを指定する DXGK_ADL_FLAGS 構造体。
BasePageNumber
連続する ADL に使用されます。 Flags.Contiguous が設定されている場合、BasePageNumber は連続するメモリ範囲の初期ページ番号であり、PageCount は、それが表すページ数です。 たとえば、PageCount=3 BasePageNumber=100 の場合、DXGK_ADL はページ 100、101、102 (アドレス範囲 0x100000-0x102000) を表します。
Pages
非連続の ACL に使用されます。 Flags.Contiguous が設定されていない場合、Pages は、正確に PageCount ページの配列を指します。 配列内のページが連続している保証はありません。
ページ は、DXGK_PAGE_NUMBER型であり、PFN_NUMBERと同じサイズであることが保証されます。 この配列は、ハードウェアのプログラミング時に MDL の PFN 配列の代わりに置き換えることができます。
備考
Dxgkernel は、物理アクセス モードと論理アクセス モードの両方をサポートし、実行時に 2 つのモードをシームレスに切り替えることができる ACL を提供します。 ADL は MDL とよく似ていますが、物理または論理のどちらかのページの配列を記述します。 これらのページは論理ページにできるため、ADL によって記述されたアドレスを仮想アドレスにマップして CPU に直接アクセスすることはできません。
詳細については、IOMMU DMA の再マップを参照してください。
必要条件
要件 | 価値 |
---|---|
サポートされる最小サーバー | Windows Server 2022 |
ヘッダー | d3dkmddi.h |