Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Тип перечисления POOL_TYPE указывает тип выделяемой системной памяти.
Синтаксис
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 драйверы должны выделять большую часть или всю непагрегированную память из неисправного пула, отличного от NX, а не исполняемого пула. Дополнительные сведения см. в описании типа пула NonPagedPoolNx. |
NonPagedPoolExecuteНачиная с Windows 8 NonPagedPoolExecute является альтернативным именем для значения NonPagedPool. Это значение означает, что выделенная память должна быть неуправляемой и исполняемой, то есть выполнение инструкций включено в этой памяти. Чтобы перенести драйвер из более ранней версии Windows, обычно следует заменить все или большинство экземпляров имени NonPagedPool в исходном коде драйвера с NonPagedPoolNx. Избегайте замены экземпляров nonPagedPool именем NonPagedPoolExecute, за исключением случаев, в которых явно требуется исполняемая память. Дополнительные сведения см. в разделе No-Execute (NX) Непаганный пул. |
PagedPoolпула страниц , который является страницоемой системной памятью. Пул страниц можно выделить и получить к ней доступ в < DISPATCH_LEVEL IRQL. |
NonPagedPoolMustSucceedЭто значение для внутреннего использования толькои допускается только во время запуска системы. Драйверы не должны указывать это значение в разных случаях, кроме запуска системы, так как запрос "должен завершиться успешно" завершает работу системы, если запрошенный размер памяти недоступен. |
DontUseThisTypeЗарезервировано для использования системы. |
NonPagedPoolCacheAlignedНепакованный пул, выровненный по границам кэша процессора. Это значение для внутреннего использования только. |
PagedPoolCacheAlignedСтраничный пул, выровненный по границам кэша процессора. Это значение для внутреннего использования только. |
NonPagedPoolCacheAlignedMustSЭто значение для внутреннего использования толькои допускается только во время запуска системы. Это эквивалент NonPagedPoolMustSucceed. |
MaxPoolTypeЗарезервировано для использования системы. |
NonPagedPoolBaseЗарезервировано для использования системы. |
NonPagedPoolBaseMustSucceedЗарезервировано для использования системы. |
NonPagedPoolBaseCacheAlignedЗарезервировано для использования системы. |
NonPagedPoolBaseCacheAlignedMustSЗарезервировано для использования системы. |
NonPagedPoolSessionУстаревшие. Не используйте. |
PagedPoolSessionУстаревшие. Не используйте. |
NonPagedPoolMustSucceedSessionУстаревшие. Не используйте. |
DontUseThisTypeSessionУстаревшие. Не используйте. |
NonPagedPoolCacheAlignedSessionУстаревшие. Не используйте. |
PagedPoolCacheAlignedSessionУстаревшие. Не используйте. |
NonPagedPoolCacheAlignedMustSSessionУстаревшие. Не используйте. |
NonPagedPoolNxбез выполнения (NX) непагированного пула. Этот тип пула доступен начиная с Windows 8. В отличие от непагированного пула, указанного NonPagedPool, который выделяет исполняемую память, NX непагаченный пул выделяет память, в которой выполнение инструкций отключено. Дополнительные сведения см. в разделе No-Execute (NX) Непаганный пул. Доступ к непагованным пулам можно получить из любого IRQL, но это дефицитный ресурс и драйверы должны выделить его только при необходимости. |
NonPagedPoolNxCacheAlignedNX непагованный пул, выровненный по границам кэша процессора. Это значение зарезервировано для монопольного использования операционной системой. |
NonPagedPoolSessionNxЗарезервировано для монопольного использования операционной системой. |
Требования
| Требование | Ценность |
|---|---|
| заголовка | wdm.h (include Wdm.h, Ntddk.h, Ntifs.h, Wudfwdm.h) |
См. также
ExInitializeNPagedLookasideList