20楼#
发布于:2004-12-17 11:03
我相信这个问题很多初学者都跟我一样感到疑惑,诚望各位大侠不惜笔墨,指点我们这些迷途羔羊,呵呵。多谢!
|
|
|
21楼#
发布于:2004-12-20 09:36
[...也就是说关键是看DEVICE_OBJECT在何处创建的来区别是bus driver还是function driver/filter driver;
但是fuction driver与filter driver的区别?以及funtion driver之间的层次如何定位,filter driver之间的层次定位?(因为它们都可以有多个)] 我的理解是: Bus Driver 一般不需要你写,计算机内置了这类的驱动.例如,当你的设备是基于PCI的,PnP管理器检测到新设备时,就调用相应的PCI总线驱动创建一个PDO,然后PDO再根据注册表中的该设备的内容加载function driver,然后再加载filter driver. function与filter的区别: filter必须是无名的,它依附于一个已经存在的设备对象或一类设备. |
|
22楼#
发布于:2004-12-20 11:32
To blue215大侠:
你说的很对,只是有一点疑问,“相应的PCI总线驱动创建一个PDO,然后PDO再根据注册表中的该设备的内容加载function driver”: 请问“注册表中的该设备的内容”是怎么产生的,肯定不是OS自己产生。那么pdo该加载哪些fdo的driver是在什么地方确定的呢? 到底是在pdo的inf文件里面设定它有哪些fdo呢,还是在fdo的inf文件中设定它应该挂在什么pdo上呢?? 回答的人很多,但这个实质问题依然还在,迷茫呀!! 多谢你的热情参与,谢谢! |
|
|
23楼#
发布于:2009-08-28 11:27
我的理解:"注册表中的该设备的内容”应该是上层驱动比如功能驱动写入注册表向系统登记的信息,所以应该是fdo的inf文件中设定它应该挂在什么pdo
|
|
上一页
下一页