Построение стека драйверов

Тема в разделе "WASM.NT.KERNEL", создана пользователем Marik, 25 окт 2007.

  1. Marik

    Marik New Member

    Публикаций:
    0
    Регистрация:
    21 июн 2006
    Сообщения:
    166
    Адрес:
    Russia
    Доброго времени суток!!!
    Интересует процес построение стека драйверов для PNP устройств (usb). В часности следующее: Допустим втыкается какое либо usb устройство. Драйвер usb контролера (usbhub) создает объект (PDO)устройства и когда ему приходит irp с IRP_MN_START_DEVICE начинается раскрутка стека. в AttachedDevice уже есть объект устройства следующего драйвера. для usb флэшки например это объект устройства(FDO) от usbstor. так вот дальше начинается интересующий меня момент. драйвер usbstor создает еще один объект устройства (PDO). Далее этому PDO приходит тоже сообщение с IRP_MN_START_DEVICE и к нему уже приаттачен FDO следующего драйвера(в данном случаи disk.sys), который выполняет аналогичные действия. Суть вопроса заключается в следующем. PDO и FDO разных драйверов можно связать в одну цепочку, а можно ли подобным способом связать и FDO и PDO одного драйвера. В какой момент FDO создает PDO???
    Буду благодарен за любую инфу в данном направлении

    ЗЫ: извиняюсь, если чего не правильно написал в теории.