DXGKDDI_STARTDIRTYTRACKING回调函数 (d3dkmddi.h)
KMD 的 DxgkDdiStartDirtyTracking 函数可在指定段和给定的地址范围内启用脏位跟踪。
语法
DXGKDDI_STARTDIRTYTRACKING DxgkddiStartdirtytracking;
NTSTATUS DxgkddiStartdirtytracking(
IN_CONST_HANDLE hAdapter,
IN_CONST_HANDLE hMemoryBasis
)
{...}
参数
hAdapter
[in]与显示适配器关联的上下文块的句柄。 KMD 以前提供了此句柄,用于在 MiniportDeviceContextDxgiDdiAddDevice 函数的输出参数中 Dxgkrnl。
hMemoryBasis
[in]要开始跟踪脏作的内存基数的句柄。 KMD 在上一次调用 dxgkDdiCreateMemoryBasis中创建此句柄。
返回值
DxgkDdiStartDirtyTracking 成功后返回STATUS_SUCCESS。 否则,它将返回适当的 NTSTATUS 代码。
言论
驱动程序只需确保为指定的内存基础启用脏跟踪。 但是,只要遵守所有未完成的请求,就能够以更粗糙的粒度(例如,对整个适配器或段启用脏跟踪)执行此作。
Dxgkrnl 可能会同时在这些段内的多个段或范围内启用脏页跟踪。
启用脏跟踪后,Dxgkrnl 需要将脏位平面初始化为所有零(所有未修改的页面)。
有关详细信息,请参阅 脏位跟踪。
要求
要求 | 价值 |
---|---|
最低支持的客户端 | Windows 11 版本 24H2 (WDDM 3.2) |
标头 | d3dkmddi.h |
IRQL | PASSIVE_LEVEL |