Windows 核心全域變數
核心全域變數。
變數 | 宣告 | Description |
---|---|---|
Mm64BitPhysicalAddress | PBOOLEAN Mm64BitPhysicalAddress
在 Wdm.h 中宣告 |
指定硬體和作業系統是否支援64位實體位址。 指向如果硬體和操作系統支援 64 位實體位址,則為 TRUE 的值,否則為 FALSE 。 如需如何在驅動程式中使用此變數的詳細資訊,請參閱 在64位 Windows 中執行 DMA。 |
MmBadPointer | PVOID MmBadPointer;
在 Wdm.h 中宣告 |
保證無效之內存位置的指標。
注意從 Windows 8.1 開始,MmBadPointer 已被取代。
驅動程式應該改用 MM_BAD_POINTER 宏。
操作系統會產生錯誤檢查是否存取 MmBadPointer 變數所指定的記憶體位址。 您可以使用 MmBadPointer 對驅動程式程式代碼進行偵錯。 將任何未初始化的指標變數設定為 MmBadPointer ,以尋找程式代碼第一次嘗試取值無效指標的時間。 MmBadPointer PAGE_SIZE內的所有地址都保證無效。 例如,如果 Address 是指針,如果 MmBadPointer= Address<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 。 可能的話,您的應用程式應該使用 Unicode 而非代碼頁。 |