Можно ли быть в курсе возникновения исключений путем мониторинга IDT?

Можно ли знать о возникновении исключений (в пользовательском режиме и в режиме ядра), отслеживая IDT(таблица дескрипторов прерываний)?

1 ответ

Да, это возможно. Однако фактическая реализация может быть выполнена только в режиме ядра.

Мониторинг аппаратного исключения требует подключения к прерыванию в IDT. Для этого потребуется доступ на запись в IDT. В Windows, включая любые операционные системы защищенного режима, это должно быть сделано в режиме ядра с использованием драйвера устройства.

В пользовательском режиме это должно быть сделано с помощью драйвера устройства, где об исключениях сообщается приложению пользовательского режима. Таким образом, можно отслеживать исключения косвенно в пользовательском режиме. Это означает, что приложение пользовательского режима не является тем, которое фактически отслеживает исключения.

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