RELATEED CONSULTING
相关咨询
选择下列产品马上在线沟通
服务时间:9:30-18:00
你可能遇到了下面的问题
关闭右侧工具栏
显示驱动教程(2)
  • 作者:zhaozj
  • 发表时间:2020-12-23 11:03
  • 来源:未知

三、kernel mode GDI

下面是Windows 2000显示子系统图:

从图中我们可以看出GDI被分割成两个部分:Win32(用户模式GDI API)和Graphics Engine(内核模式的GDI API)。注意:灰色部分是系统提供的,我们不能修改它们。应用程序调用Win32 GDI函数发出图形输出请求,这些请求被法往内核模式GDI,内核模式GDI在把这些请求发送到相应的图形驱动程序(比如,显卡或打印机驱动)。用户模式下的GDI API相信大家都很熟悉了,我就不多做介绍了。下面主要介绍的是内核模式下GDI。

内核模式GDI主要具有以下的功能:

通过调用图形驱动提供的显示设备接口(DDI:Display Driver Interface)函数与图形驱动程序通信。 本身具有图形输出能力,通过一套Eng打头的服务函数来提供。驱动程序可以直接调用它们来简化图形驱动的开发。 维护了一些重要的数据结构,比如brush、clip等等。同时内核模式GDI还提供了一套访问这些结构的函数,这样你就可以在驱动程序中访问这些数据结构了。