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
連続する ACL に使用されます。 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 |
Header | d3dkmddi.h |