POOL_TYPE列舉 (wdm.h)
POOL_TYPE列舉型別會指定要配置的系統記憶體類型。
Syntax
typedef enum _POOL_TYPE {
NonPagedPool,
NonPagedPoolExecute = NonPagedPool,
PagedPool,
NonPagedPoolMustSucceed = NonPagedPool + 2,
DontUseThisType,
NonPagedPoolCacheAligned = NonPagedPool + 4,
PagedPoolCacheAligned,
NonPagedPoolCacheAlignedMustS = NonPagedPool + 6,
MaxPoolType,
NonPagedPoolBase = 0,
NonPagedPoolBaseMustSucceed = NonPagedPoolBase + 2,
NonPagedPoolBaseCacheAligned = NonPagedPoolBase + 4,
NonPagedPoolBaseCacheAlignedMustS = NonPagedPoolBase + 6,
NonPagedPoolSession = 32,
PagedPoolSession = NonPagedPoolSession + 1,
NonPagedPoolMustSucceedSession = PagedPoolSession + 1,
DontUseThisTypeSession = NonPagedPoolMustSucceedSession + 1,
NonPagedPoolCacheAlignedSession = DontUseThisTypeSession + 1,
PagedPoolCacheAlignedSession = NonPagedPoolCacheAlignedSession + 1,
NonPagedPoolCacheAlignedMustSSession = PagedPoolCacheAlignedSession + 1,
NonPagedPoolNx = 512,
NonPagedPoolNxCacheAligned = NonPagedPoolNx + 4,
NonPagedPoolSessionNx = NonPagedPoolNx + 32,
} POOL_TYPE;
常數
NonPagedPool 非分頁集區,這是不可分頁的系統記憶體。 無法從任何 IRQL 存取非分頁集區,但這是一項罕見的資源,驅動程式應該在必要時才加以配置。 使用 NonPagedPool 集區類型配置的系統記憶體是可執行的。 如需詳細資訊,請參閱 NonPagedPoolExecute 集區類型的描述。 從 Windows 8 開始,驅動程式應該從無執行 (N) X 配置大部分或所有非分頁記憶體,而不是可執行的非分頁集區。 如需詳細資訊,請參閱 NonPagedPoolNx 集區類型的描述。 |
NonPagedPoolExecute 從 Windows 8 開始,NonPagedPoolExecute 是 NonPagedPool 值的替代名稱。 這個值表示配置的記憶體是非分頁且可執行的,也就是說,此記憶體中已啟用指令執行。 若要從舊版 Windows 移植驅動程式,您通常應該以 NonPagedPoolNx 取代驅動程式碼中 NonPagedPool 名稱的所有或大部分實例。 請避免將 NonPagedPool 名稱的實例取代為 NonPagedPoolExecute,除非明確需要可執行檔記憶體的情況。 如需詳細資訊,請參閱 No-Execute (NX) Nonpaged Pool。 |
PagedPool 分頁集區,這是可分頁的系統記憶體。 分頁集區只能在 IRQL < DISPATCH_LEVEL配置和存取。 |
NonPagedPoolMustSucceed 此值 僅供內部使用,而且只能在系統啟動期間使用。 驅動程式不得在系統啟動以外的時間指定此值,因為如果要求的記憶體大小無法使用,「必須成功」要求會損毀系統。 |
DontUseThisType 保留供系統使用。 |
NonPagedPoolCacheAligned 非分頁集區,對齊處理器快取界限。 此值 僅供內部使用。 |
PagedPoolCacheAligned 分頁集區,對齊處理器快取界限。 此值 僅供內部使用。 |
NonPagedPoolCacheAlignedMustS 此值 僅供內部使用,而且只能在系統啟動期間使用。 它是 非PagedPoolMustSucceed的快取對齊對等專案。 |
MaxPoolType 保留供系統使用。 |
NonPagedPoolBase 保留供系統使用。 |
NonPagedPoolBaseMustSucceed 保留供系統使用。 |
NonPagedPoolBaseCacheAligned 保留供系統使用。 |
NonPagedPoolBaseCacheAlignedMustS 保留供系統使用。 |
NonPagedPoolSession 已取代。 請勿使用。 |
PagedPoolSession 已取代。 請勿使用。 |
NonPagedPoolMustSucceedSession 已取代。 請勿使用。 |
DontUseThisTypeSession 已取代。 請勿使用。 |
NonPagedPoolCacheAlignedSession 已取代。 請勿使用。 |
PagedPoolCacheAlignedSession 已取代。 請勿使用。 |
NonPagedPoolCacheAlignedMustSSession 已取代。 請勿使用。 |
NonPagedPoolNx 無執行 (NX) 非分頁集區。 此集區類型可從 Windows 8 開始使用。 相較於 NonPagedPool 所指定的非分頁集區,它會配置可執行記憶體,NX 非分頁集區會配置停用指令執行的記憶體。 如需詳細資訊,請參閱 No-Execute (NX) Nonpaged Pool。 無法從任何 IRQL 存取非分頁集區,但這是一項罕見的資源,驅動程式應該在必要時才加以配置。 |
NonPagedPoolNxCacheAligned NX 非分頁集區,對齊處理器快取界限。 此值保留供作業系統獨佔使用。 |
NonPagedPoolSessionNx 保留供操作系統獨佔使用。 |
規格需求
需求 | 值 |
---|---|
標頭 | wdm.h (包括 Wdm.h、Ntddk.h、Ntifs.h、Wudfwdm.h) |
另請參閱
ExInitializeNPagedLookasideList