Compartilhar via


enumeração POOL_TYPE (wdm.h)

O tipo de enumeração POOL_TYPE especifica o tipo de memória do sistema a ser alocada.

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;

Constantes

 
NonPagedPool
Pool nãopagado, que é memória do sistema não paginável. O pool nãopagado pode ser acessado de qualquer IRQL, mas é um recurso escasso e os drivers devem alocá-lo somente quando necessário.

A memória do sistema alocada com o tipo de pool NonPagedPool é executável. Para obter mais informações, consulte a descrição do tipo de pool NonPagedPoolExecute .

Começando com Windows 8, os drivers devem alocar a maior parte ou toda a memória nãopagada do pool nãopagado (NX) não executado em vez do pool nãopagado executável. Para obter mais informações, consulte a descrição do tipo de pool NonPagedPoolNx .
NonPagedPoolExecute
Começando com Windows 8, NonPagedPoolExecute é um nome alternativo para o valor NonPagedPool. Esse valor indica que a memória alocada deve ser não paga e executável, ou seja, a execução de instrução está habilitada nessa memória. Para portar um driver de uma versão anterior do Windows, você normalmente deve substituir todas ou a maioria das instâncias do nome NonPagedPool no código-fonte do driver por NonPagedPoolNx. Evite substituir instâncias do nome NonPagedPool por NonPagedPoolExecute , exceto nos casos em que a memória executável é explicitamente necessária. Para obter mais informações, consulte Pool sem execução (NX).
PagedPool
Pool paginado, que é memória de sistema paginável. O pool paginado só pode ser alocado e acessado em DISPATCH_LEVEL IRQL < .
NonPagedPoolMustSucceed
Esse valor é apenas para uso interno e é permitido somente durante a inicialização do sistema. Os drivers não devem especificar esse valor em momentos diferentes da inicialização do sistema, pois uma solicitação "deve ter êxito" falhará no sistema se o tamanho da memória solicitada não estiver disponível.
DontUseThisType
Reservado para uso do sistema.
NonPagedPoolCacheAligned
Pool nãopagado, alinhado nos limites do cache do processador. Esse valor é apenas para uso interno.
PagedPoolCacheAligned
Pool paginado, alinhado nos limites do cache do processador. Esse valor é apenas para uso interno.
NonPagedPoolCacheAlignedMustS
Esse valor é apenas para uso interno e é permitido somente durante a inicialização do sistema. É o equivalente alinhado ao cache de NonPagedPoolMustSucceed.
MaxPoolType
Reservado para uso do sistema.
NonPagedPoolBase
Reservado para uso do sistema.
NonPagedPoolBaseMustSucceed
Reservado para uso do sistema.
NonPagedPoolBaseCacheAligned
Reservado para uso do sistema.
NonPagedPoolBaseCacheAlignedMustS
Reservado para uso do sistema.
NonPagedPoolSession
Preterido. Não use.
PagedPoolSession
Preterido. Não use.
NonPagedPoolMustSucceedSession
Preterido. Não use.
DontUseThisTypeSession
Preterido. Não use.
NonPagedPoolCacheAlignedSession
Preterido. Não use.
PagedPoolCacheAlignedSession
Preterido. Não use.
NonPagedPoolCacheAlignedMustSSession
Preterido. Não use.
NonPagedPoolNx
Pool não executado (NX) nãopagado. Esse tipo de pool está disponível a partir do Windows 8. Ao contrário do pool nãopagado designado por NonPagedPool, que aloca memória executável, o pool nãopagado do NX aloca memória na qual a execução da instrução está desabilitada. Para obter mais informações, consulte Pool sem execução (NX).

O pool nãopagado pode ser acessado de qualquer IRQL, mas é um recurso escasso e os drivers devem alocá-lo somente quando necessário.
NonPagedPoolNxCacheAligned
Pool nãopagado do NX, alinhado nos limites do cache do processador. Esse valor é reservado para uso exclusivo pelo sistema operacional.
NonPagedPoolSessionNx
Reservado para uso exclusivo pelo sistema operacional.

Requisitos

Requisito Valor
Cabeçalho wdm.h (include Wdm.h, Ntddk.h, Ntifs.h, Wudfwdm.h)

Confira também

ExAllocatePoolWithQuotaTag

ExAllocatePoolWithTag

ExAllocatePoolWithTagPriority

ExInitializeLookasideListEx

ExInitializeNPagedLookasideList

ExInitializePagedLookasideList

LookasideListAllocateEx

SeAssignSecurity

SeAssignSecurityEx