Обнаружение обратных вызовов в режиме ядра
Большая часть кода операционной системы Windows выполняется в режиме ядра. Режим процессора переключается с пользовательского режима на режим ядра всякий раз, когда поток приложения вызывает функцию из API Windows, которая, в свою очередь, вызывает внутреннюю системную функцию, которая должна выполняться в режиме ядра. Режим процессора возвращается в пользовательский режим перед возвратом элемента управления в функцию, чтобы системные данные были защищены.
Если поток ожидает завершения обратного вызова в режиме ядра, пользовательская сторона потока отложена при вызове функции ZwCallbackReturn .