Windows 驱动程序开发入门

为 Windows 操作系统开发驱动程序时,有三个主要选项可供选择:

  1. 桌面驱动程序:这种类型的驱动程序专为在 Windows 桌面版本上运行而设计。

  2. 通用驱动程序:通用驱动程序旨在跨各种 Windows 平台兼容。 如果驱动程序通过了 infverif /uApiValidator 检查,就可以创建通用驱动程序。 有关详细信息,请参阅使用通用 INF 文件

  3. Windows 驱动程序:要创建在 Windows 桌面和非桌面版本上运行的 Windows 驱动程序,驱动程序必须通过 infverif /w 检查,其中包括驱动程序包隔离

有关配置生成设置的信息,请参阅目标平台

Windows 驱动程序的额外要求

为了确保 Windows 驱动程序满足必要的标准,它必须符合以下要求:

  • 遵循 DCH 设计原则。 DCH(声明性、组件化、硬件支持应用)是一套设计原则,可确保驱动程序更可靠、更安全且更易于维护。 遵循 DCH 原则,可以创建模块化的驱动程序,并且可以独立于操作系统进行更新,从而提高系统的整体稳定性和性能。

  • 遵循驱动程序包隔离指南。 驱动程序包隔离可确保每个驱动程序在其自己的隔离环境中运行,降低与其他驱动程序发生冲突的风险,并提高系统稳定性。 这种隔离有助于更有效地诊断和解决问题,因为问题可以追溯到单个驱动程序,而不会影响整个系统。

  • API 分层要求:确保驱动程序满足 API 分层要求。 API 分层涉及构建驱动程序,以便通过定义完善的 API 层与操作系统交互。 此方法可促进模块化和可维护性,使更新或更换单个组件变得更加容易,而不会影响整个驱动程序。 它还增强了兼容性,并降低了在进行更改时引入错误的风险。

满足通用和 Windows 驱动程序标准的好处

虽然仅在 Windows 桌面上运行的驱动程序不必满足通用驱动程序或 Windows 驱动程序的额外要求,但这样做有几个优点:

  • 增强可维护性:提高了维护和更新的便利性。
  • 提高可靠性:提高了稳定性和性能。
  • 未来认证:为驱动程序做好准备,以便将来在 Windows 的非桌面版本上进行潜在的认证。

通过遵循这些标准,可以确保你的驱动程序强大、通用,并为 Windows 生态系统的未来发展做好准备。