Как вызвать пользовательский режим из ядра Windows?
Я хотел бы вызвать мое приложение из моего драйвера, когда в ядре Windows происходит интересное событие. Мне нужно иметь возможность передать как минимум 4 байта данных обратно в пользовательский режим. Как этого добиться? Эти события могут происходить довольно часто, но не слишком часто, поэтому я не хочу строить систему очередей и использовать IOCTL.
Я думал о том, что драйвер загружается, приложение пользовательского режима регистрирует свой обратный вызов, используя IOCTL, и ядро продолжает вызывать этот обратный вызов, когда происходят события, и, наконец, клиент пользовательского режима отменяет регистрацию обратного вызова, и больше никаких данных не отправляется в пользовательский режим. Это возможно?
Я новичок в программировании ядра, поэтому после дня поиска в Google я решил спросить здесь. Я заметил, что нет особых дискуссий о ядре и драйверах. И еще менее правильные документы.
1 ответ
Microsoft опубликовала статью об этом (конечно же, в формате MS Word) под названием " Взаимодействие с пользовательским режимом: рекомендации для драйверов режима ядра".
Благодаря Google, здесь это в HTML.