Поделиться через


Функция ExGetPreviousMode (wdm.h)

Подпрограмма ExGetPreviousMode возвращает предыдущий режим процессора для текущего потока.

Синтаксис

KPROCESSOR_MODE ExGetPreviousMode();

Возвращаемое значение

ExGetPreviousMode возвращает KPROCESSOR_MODE значение KernelMode или UserMode. Это значение указывает предыдущий режим процессора для текущего потока.

Комментарии

Если запрос ввода-вывода может поступать либо в пользовательском режиме, либо в режиме ядра, а вызывающий объект передает указатели на структуры данных, используемые для ввода-вывода, драйвер должен иметь возможность определить, допустимы ли указатели вызывающего объекта в пользовательском режиме или режиме ядра.

Если драйверы обрабатывают запросы ввода-вывода с помощью обычного метода диспетчеризации ввода-вывода на основе IRP, они могут определить предыдущий режим процессора, проверив параметр RequestorMode в заголовке IRP. (Параметр RequestorMode задается диспетчером ввода-вывода.)

Кроме того, можно использовать ExGetPreviousMode для определения предыдущего режима процессора. Эта подпрограмма особенно полезна в ситуациях, когда параметр предыдущего режима недоступен, например в драйвере файлов, использующего быстрый ввод-вывод.

Требования

Требование Значение
Минимальная версия клиента Доступно начиная с Windows 2000.
Целевая платформа Универсальное
Верхняя часть wdm.h (включая Wdm.h, Ntddk.h, Ntifs.h)
Библиотека NtosKrnl.lib
DLL NtosKrnl.exe
IRQL <= DISPATCH_LEVEL

См. также раздел

KeGetCurrentThread