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
ExInitializeNPagedLookasideList