阅读:1568回复:8
PnP如何管理设备栈
这两天看了WDM驱动模型,有几个问题请教一下:
总线驱动程序负责枚举总线上的设备,而设备对象PDO的创建却由PnP管理器创建,是不是总线驱动程序中不再创建设备对象? PnP管理器内部有一个内在的驱动程序,称为根总线驱动程序,那么根总线驱动程序和总线驱动程序有什么区别呢?哪位能讲一下从设备插入计算机到设备栈形成的详细过程。 |
|
|
沙发#
发布于:2007-03-14 12:52
请问:你在哪里看到这些内容的?
|
|
|
板凳#
发布于:2007-03-15 22:58
《Programming Microsoft Windows Driver Model》
|
|
|
地板#
发布于:2007-03-15 23:01
不好意思,是不是我哪个概念描述错了
|
|
|
地下室#
发布于:2007-03-16 17:03
我也想知道呀?
|
|
5楼#
发布于:2007-03-16 19:39
我又仔细看了一下书,认为应该是这样的:
通常我们的PC机中都有各种各样的总线,比如USB总线、PCI总线等等。PnP管理器内在的驱动程序PnPManager.sys相当于所有总线的根总线驱动程序,并为每类总线创建一个PDO。根总线驱动程序的上层有若干个功能驱动程序(这些驱动程序都在同一层),每个功能驱动程序负责管理一类总线上的硬件设备,同时对于每类总线,它还担任该类总线的总线驱动程序,负责枚举该类总线上的硬件设备,每当检测到一个设备时就为该硬件设备创建一个PDO,也就是说每类总线的总线驱动程序要创建一个FDO和若干个PDO,FDO与根总线驱动程序的PDO同在一个设备栈,而各个PDO又分别建立新的设备栈。 也就是说,PnP管理器把每一类总线都看作了一个硬件设备,而每类总线再把安装在它们上的设备看作一个个硬件设备,从而形成了一个设备树。 |
|
|
6楼#
发布于:2007-03-17 17:09
shenhui:
请问你有这本书《Programming Microsoft Windows Driver Model》 的中文版么?我也想看一下,谢谢啦:) |
|
7楼#
发布于:2007-03-17 20:12
哦,有中文版,你留下邮箱
|
|
|
8楼#
发布于:2007-03-18 16:14
|
|