常规设计和实施策略

若要设计有效的 Windows 2000 及更高版本的显示驱动程序和视频微型端口驱动程序,请考虑以下策略:

  • 修改现有 Windows 驱动程序工具包 (WDK) 示例驱动程序,该驱动程序专为类似类型的图形适配器设计,以减少驱动程序设计时间。

  • 使用 C 编写尽可能多的驱动程序,以最大程度地提高可移植性,仅在硬件不支持的时间关键操作需要时才使用汇编语言。 尽管程序集中的编码增加了优化的可能性,但时间和可移植性问题大于其优点。

  • 使用视频微型端口驱动程序执行管理资源、执行物理设备内存映射、确保寄存器输出在近距离发生或响应中断的操作。 微型端口驱动程序主要用于处理硬件系列中的变体,以及最大程度地减少显示驱动程序硬件类型依赖项。

有关显示驱动程序编写器的其他相关信息,请参阅 用于显示驱动程序的图形 DDI 函数。 本主题及其后面的子主题讨论了显示驱动程序所需的、有条件的和可选的图形 DDI 函数。 Windows 2000 显示驱动程序模型中的视频微型端口驱动程序 及其子主题包含针对视频微型端口驱动程序编写器的类似信息。

还应考虑以下事实:

  • 显示驱动程序和视频微型端口驱动程序在与 NT 主管的其余人员相同的特权内核模式地址空间中运行。 任一驱动程序中的故障都会导致系统的其余部分发生故障。

  • 可以随时抢占显示驱动程序和视频微型端口驱动程序。

  • 显示驱动程序的代码和数据部分是完全可分页的。

  • 导出的函数必须在入口时执行基于 NT 的标准操作系统 prolog ,在退出时执行 epilog 。 有关详细信息,请参阅Microsoft Windows SDK文档。

有关特定于显示驱动程序的信息,请参阅 用于显示驱动程序的图形 DDI 函数。 该部分包含有关必需的、有条件的和可选的必需图形 DDI 函数的信息。