Глобальные переменные ядра Windows
Глобальные переменные ядра.
Переменная | Объявление | Описание |
---|---|---|
Mm64BitPhysicalAddress | PBOOLEAN Mm64BitPhysicalAddress
Объявлено в Wdm.h |
Указывает, поддерживает ли оборудование и операционная система 64-разрядные физические адреса. Указывает на значение TRUE , если оборудование и операционная система поддерживают 64-разрядные физические адреса, в противном случае значение FALSE . Дополнительные сведения об использовании этой переменной в драйвере см. в статье Выполнение DMA в 64-разрядной версии Windows. |
MmBadPointer | PVOID MmBadPointer;
Объявлено в Wdm.h |
Указатель на расположение памяти, которое гарантированно является недопустимым.
Примечание Начиная с Windows 8.1, MmBadPointer является нерекомендуемой.
Драйверы должны использовать вместо него макрос MM_BAD_POINTER .
Операционная система создает ошибку проверка, если осуществляется доступ к адресу памяти, указанному переменной MmBadPointer. Для отладки кода драйвера можно использовать MmBadPointer . Задайте для всех неинициализированных переменных указателя значение MmBadPointer , чтобы найти первый раз, когда код пытается разыменовать недопустимый указатель. Все адреса в PAGE_SIZE MmBadPointer гарантированно будут недопустимыми. Например, если Адрес является указателем, а MmBadPointer< = Адрес<MmBadPointer + PAGE_SIZE, попытка доступа к *Address приводит к тому, что операционная система создаст ошибку проверка. MmBadPointer + PAGE_SIZE не гарантируется как недопустимый. |
PsInitialSystemProcess | PEPROCESS PsInitialSystemProcess;
Объявлено в ntddk.h |
Указывает на структуру EPROCESS для системного процесса. |
NLS_MB_CODE_PAGE_TAG | extern BOOLEAN NLS_MB_CODE_PAGE_TAG; |
Указывает, является ли кодовая страница однобайтовой или многобайтовой кодовой страницей. NLS_MB_CODE_PAGE_TAG имеет значение TRUE для многобайтовых кодовых страниц и FALSE для однобайтовых кодовых страниц. NLS_MB_CODE_PAGE_TAG зарезервировано для использования системой. В пользовательском режиме вызовите GetCPInfoEx . По возможности приложение должно использовать Юникод вместо кодовых страниц. |
Связанные темы
EPROCESS
GetCPInfoEx
MM_BAD_POINTER
Выполнение DMA в 64-разрядной версии Windows