本部分介绍 ACPI 设备的设备堆栈,其中包括供应商提供的 WDM 函数驱动程序创建的可选功能设备对象(FDO)。
系统为系统 ACPI 命名空间中的每个设备创建下图所示的两个设备堆栈之一。
如果 ACPI 设备是集成到系统板上的硬件设备,则系统会使用总线筛选器设备对象(筛选器 DO)创建设备堆栈。 设备的物理设备对象(PDO)由系统提供的根总线驱动程序创建,ACPI 驱动程序创建总线筛选器 DO。 筛选器 DO 的存在对设备堆栈中上方的其他设备对象是透明的。
如果设备不是集成到系统板上的硬件设备,ACPI 驱动程序将枚举设备并创建 PDO。 无论哪种情况,供应商都可以提供可选的 FDO。
System-Supplied 根总线驱动程序和 ACPI 驱动程序
Microsoft提供根总线驱动程序和 ACPI 驱动程序。 在具有 ACPI BIOS 的系统上,HAL 在系统启动时加载 ACPI 驱动程序至设备树的底部,该驱动程序充当操作系统与 BIOS 之间的接口。 ACPI 驱动程序对其他驱动程序是透明的。
供应商提供的函数驱动程序
供应商可以为 ACPI 设备提供可选的 WDM 函数驱动程序。 函数驱动程序实现设备的操作区域和相关设备特定的操作。