Отложенные IOCTL
От: -prus-  
Дата: 24.08.09 06:48
Оценка:
Всем привет!

Где почитать про организацию отложенных IOCTL?
Дайте плз ссылочку на пример, если не затруднит.

Заранее благодарен!
С уважением,
Евгений
Re: Механизм отложенных запросов
От: x64 Россия http://x64blog.name
Дата: 24.08.09 08:27
Оценка: 2 (1)
#Имя: FAQ.asm.cancellation
P>Где почитать про организацию отложенных IOCTL?

В документации как таковое понятие отложенных (pending) запросов отсутствует, вместо этого отложенные запросы описаны как часть механизма отмены (cancellation). Общую информацию можно почитать здесь:

I/O Cancellation
Win32 I/O Cancellation Support in Windows Vista

Как это дело реализовать в драйвере (при чём здесь не важно, фильтр это или нет), можно почитать в этом документе:

Cancel Logic in Windows Drivers

Советую вычитать и понять всё, что там написано, после чего реализовать очередь запросов самостоятельно (я рекомендую реализацию по схеме "Driver-Supplied Lock"), потому как:

  • Это даст глубокое понимание механизма в целом.
  • Это даст возможность более гибко менять функциональность очереди.

    Но если времени совсем в обрез, можно и готовую библиотечку взять:

    Cancel-Safe IRP Queues
  • JID: x64j@jabber.ru
    cancellation pending ioctls
    Re[2]: Механизм отложенных запросов
    От: Valery A. Boronin Россия linkedin.com/in/boronin
    Дата: 24.08.09 09:15
    Оценка: 2 (1)
    Здравствуйте, x64, Вы писали:

    P>>Где почитать про организацию отложенных IOCTL?


    x64>Но если времени совсем в обрез, можно и готовую библиотечку взять:

    x64>Cancel-Safe IRP Queues
    Дополню качественный ответ коллеги ссылками на примеры реализации\использования:

    WDM Sample: <DDK/WDK path>\src\general\Cancel — Demonstrates Usage of IoCsq Functions

    FS Minifilter Sample: <WDK path>src\filesys\miniFilter\cancelSafe
    KMDF Sample Echo: <WDK path>\src\general\echo\kmdf
    UMDF Sample Echo: <WDK path>\src\general\echo\umdf

    кроме того, можно встретить поддержку cancellation в примерах из DDK/WDK в сетевых драйверах (mux ndis), а также USB & WDF и прочих.
    ... << RSDN@Home 1.2.0 alpha 4 rev. 1237>>
    Valery A. Boronin, RSDN Team, linkedin.com\in\boronin
    R&D Mgmt & Security. AppSec & SDL. Data Protection and Systems Programming. FDE, DLP, Incident Management. Windows Filesystems and Drivers.
    Re[3]: Механизм отложенных запросов
    От: -prus-  
    Дата: 24.08.09 10:15
    Оценка:
    Здравствуйте, Valery A. Boronin, Вы писали:

    VAB>Здравствуйте, x64, Вы писали:


    Спасибо, парни! Погнал изучать.
    С уважением,
    Евгений
     
    Подождите ...
    Wait...
    Пока на собственное сообщение не было ответов, его можно удалить.