共用方式為


DXGKARG_QUERYDIRTYBITDATA結構(d3dkmddi.h)

DXGKARG_QUERYDIRTYBITDATADxgkDdiQueryDirtyBitData 的輸入/輸出參數,可用來查詢肮髒的位平面數據。

語法

typedef struct _DXGKARG_QUERYDIRTYBITDATA {
  HANDLE MemoryBasis;
  UINT64 SubrangeIndex;
  UINT64 SubrangeOffset;
  UINT64 SubrangeSize;
  PVOID  Buffer;
  SIZE_T BufferSize;
  UINT   Flags;
} DXGKARG_QUERYDIRTYBITDATA;

成員

MemoryBasis

[in]處理實體記憶體頁面的範圍集合,以查詢修改的狀態。 此句柄先前是由呼叫 DxgkDdiCreateMemoryBasis所建立。

SubrangeIndex

[in]如果指出子範圍(請參閱下方的 SubrangeSize),則此數據代表要從記憶體基礎中查詢的範圍。

SubrangeOffset

[in]如果 SubrangeSize 不是 0,則 SubrangeOffset 代表所選子範圍的選擇性位移,以便從中查詢目前骯髒的位平面。 此值是以位元組為單位的位移,而且一律為位平面頁面大小的倍數。

SubrangeSize

[in]指定要查詢的記憶體基礎範圍。 當 SubrangeSize 為 0 時,驅動程式應該查詢整個記憶體基礎。 指定非零大小時,驅動程式應該查詢記憶體基礎的單一範圍,其中 SubrangeIndexSubrangeOffset 提供實體間隔的起始索引來查詢。 SubrangeSize 為位元元組,且一律為位平面頁面大小的倍數。

Buffer

[out]要在其中寫入產生的位平面數據的緩衝區。

BufferSize

[out]位平面緩衝區的大小,以位元組為單位。 大小保證夠大,以符合指定子範圍中的每個頁面一個位,至少 Size/DXGK_DIRTY_BIT_TRACKING_SEGMENT_CAPS::PageSize/8(四捨五入)位元組。 如果查詢單一子範圍,BufferSize 代表 SubrangeSize,而如果參考整個記憶體基礎,BufferSize 是基礎範圍內所有 SizeInBytes 的總和。

Flags

[in]一或多個 DXGKARG_QUERYDIRTYBITDATAFLAGS 值,指定呼叫的其他行為。

言論

如需詳細資訊,請參閱 Dirty 位追蹤

要求

要求 價值
最低支援的用戶端 Windows 11 版本 24H2 (WDDM 3.2)
標頭 d3dkmddi.h

另請參閱

DXGKARG_QUERYDIRTYBITDATAFLAGS

DxgkDdiCreateMemoryBasis

DxgkDdiQueryDirtyBitData