DirectX 图形内核子系统 (Dxgkrnl)
本文介绍 Windows 操作系统通过 DirectX 图形内核子系统(Dxgkrnl.sys)实现的内核模式接口。
显示端口驱动程序是Dxgkrnl.sys的一部分。 图形/显示硬件供应商实现内核模式显示微型端口驱动程序(KMD)。
有关 Dxgkrnl 实现的其他函数的说明,请参阅以下文章:
Dxgkrnl 接口
KMD 的 DriverEntry 函数调用操作系统的 DxgkInitialize 函数,这会导致 Dxgkrnl 加载和初始化。
加载后,Dxgkrnl.sys通过将DXGKRNL_INTERFACE结构传递给 KMD 的 DxgkDdiStartDevice 函数,为 KMD 提供指向其函数的指针。 Dxgkrnl 的函数指针具有 DxgkCb 前缀。
DXGKRNL_INTERFACE结构还包含特定显示适配器的句柄。 显示端口驱动程序生成此句柄。 KMD 每次调用DXGKRNL_INTERFACE中的任何函数时,都会将此句柄作为参数传递。
显示端口驱动程序接口
KMD 通过调用 Dxgkrnl 的 DxgkCbQueryServices 函数和指定 KMD 所需的接口类型的DXGK_SERVICES值来获取显示端口驱动程序的接口。 显示端口驱动程序提供的服务包括 AGP(加速图形端口)服务、调试报表服务、计时操作服务等。