Разница между обработчиком исключений в пользовательском пространстве и в ядре системы заключается в том, что каждый из них отвечает за обработку исключений в разных контекстах. 25
В ядре системы обработка исключений начинается сразу после их возникновения. 5 Каждому типу исключений поставлен в соответствие свой обработчик, получающий управление в случае определённого события. 5 Если исключения в режиме ядра не обрабатываются, проверка ошибки и система останавливаются. 3
В пользовательском пространстве обработка исключений перенаправляется, если они возникли в нём. 2 За это отвечает модуль ntdll.dll, в котором располагается функция KiUserExceptionDispatch. 2 Указатель на обработчик пользовательского режима регистрируется в момент инициализации системы. 2
Таким образом, основное различие в том, что обработчик в ядре системы отвечает за начальную обработку исключений, а в пользовательском пространстве — за дальнейшую обработку в том контексте, в котором возникло исключение. 25