PnP 管理器维护一个设备树,用于跟踪系统中的设备。下图显示了示例系统配置的设备树。
设备树包含有关系统上存在的设备的信息。PnP 管理器在计算机启动时使用来自驱动程序和其他组件的信息生成此树,并在添加或删除设备时更新树。
设备树的每个节点称为设备节点或开发节点。devnode 由设备驱动程序的设备对象以及系统维护的内部信息组成。因此,每个设备堆栈都有一个开发节点。
PnP 管理器使用 IRP_MN_QUERY_DEVICE_RELATIONS 请求向总线驱动程序询问其子设备的列表。总线驱动程序根据其总线协议确定其子项列表。例如,Windows ACPI 驱动程序 Acpi.sys 在 ACPI 命名空间中查找,PCI 驱动程序查询 PCI 配置空间,USB 集线器驱动程序遵循 USB 总线协议。
设备树是分层的,总线上的设备表示为总线适配器、控制器或其他总线设备的“子级”。(总线设备是可以附加其他物理、逻辑或虚拟设备的任何设备。您可以使用设备管理器查看设备树中的设备层次结构,并选择允许您按连接查看设备的视图选项。
设备树的层次结构反映了设备在计算机中附加的结构。
1