C 内核如何知道哪些驱动程序属于哪些外围设备?

C 内核如何知道哪些驱动程序属于哪些外围设备?,c,windows,unix,kernel,C,Windows,Unix,Kernel,当内核需要将输出发送到某个外设时,它如何知道使用哪个驱动程序?通常的方法是,每个驱动程序在首次加载时(通常在引导时)轮询它支持的总线,并查找它设计支持的总线与返回的签名(供应商和设备ID)之间的匹配,还有他们的班级 这至少是所谓的即插即用外围设备的工作方式

当内核需要将输出发送到某个外设时,它如何知道使用哪个驱动程序?

通常的方法是,每个驱动程序在首次加载时(通常在引导时)轮询它支持的总线,并查找它设计支持的总线与返回的签名(供应商和设备ID)之间的匹配,还有他们的班级

这至少是所谓的即插即用外围设备的工作方式