Как вызвать пользовательский режим из ядра Windows?

Я хотел бы вызвать мое приложение из моего драйвера, когда в ядре Windows происходит интересное событие. Мне нужно иметь возможность передать как минимум 4 байта данных обратно в пользовательский режим. Как этого добиться? Эти события могут происходить довольно часто, но не слишком часто, поэтому я не хочу строить систему очередей и использовать IOCTL.

Я думал о том, что драйвер загружается, приложение пользовательского режима регистрирует свой обратный вызов, используя IOCTL, и ядро ​​продолжает вызывать этот обратный вызов, когда происходят события, и, наконец, клиент пользовательского режима отменяет регистрацию обратного вызова, и больше никаких данных не отправляется в пользовательский режим. Это возможно?

Я новичок в программировании ядра, поэтому после дня поиска в Google я решил спросить здесь. Я заметил, что нет особых дискуссий о ядре и драйверах. И еще менее правильные документы.

1 ответ

Решение

Microsoft опубликовала статью об этом (конечно же, в формате MS Word) под названием " Взаимодействие с пользовательским режимом: рекомендации для драйверов режима ядра".

Благодаря Google, здесь это в HTML.

Другие вопросы по тегам