阅读:1116回复:3
关于设备堆栈的问题
如果系统中存在多个相同的设备,那么它们是共用一个设备堆栈还是每个设备有一个设备堆栈,
如果是共用一个的话,那么系统怎么来管理设备,如irp最后要发送到那个设备。 |
|
沙发#
发布于:2004-12-20 11:17
多个相同的设备通过一个驱动来进行管理,它们以链表的形式组织在一起。每个设备的多个驱动则组成一个堆栈的结构。向设备的IRP请求首先发给驱动堆栈的最上层,然后逐层向下传递,到达某一层的IRP请求,将影响该层对应驱动的所有设备对象。
这是我的理解,呵呵。 |
|
|
板凳#
发布于:2004-12-20 11:44
每个设备的多个驱动则组成一个堆栈的结构???
一个设备对象只能有一个驱动对象,但一个驱动对象可以管理多个设备对象. 向设备的IRP请求首先发给设备堆栈的最上层,然后逐层向下传递,到达某一层的IRP请求.每一层的设备对象都由其对应的驱动对象进行相应的处理. |
|
|
地板#
发布于:2004-12-20 11:46
请搞清楚那些ATTACHEDDEVIDE,ATTACHEDTO,NEXTDEVICE所构成的水平和垂直的类十字链表结构.
|
|
|