énumération POOL_TYPE (wdm.h)

Le type d’énumération POOL_TYPE spécifie le type de mémoire système à allouer.

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 non paginé, qui est la mémoire système non modifiable. Le pool non paginé est accessible à partir de n’importe quel IRQL, mais il s’agit d’une ressource rare et les pilotes ne doivent l’allouer que si nécessaire.

La mémoire système allouée avec le type de pool NonPagedPool est exécutable. Pour plus d’informations, consultez la description du type de pool NonPagedPoolExecute .

À compter de Windows 8, les pilotes doivent allouer la plupart ou la totalité de leur mémoire non pagée à partir du pool non paginé sans exécution (NX) au lieu du pool non paginé exécutable. Pour plus d’informations, consultez la description du type de pool NonPagedPoolNx .
NonPagedPoolExecute
À compter de Windows 8, NonPagedPoolExecute est un autre nom pour la valeur NonPagedPool. Cette valeur indique que la mémoire allouée doit être non pagée et exécutable, c’est-à-dire que l’exécution des instructions est activée dans cette mémoire. Pour porter un pilote à partir d’une version antérieure de Windows, vous devez généralement remplacer toutes ou la plupart des instances du nom NonPagedPool dans le code source du pilote par NonPagedPoolNx. Évitez de remplacer les instances du nom NonPagedPool par NonPagedPoolExecute , sauf dans les cas où la mémoire exécutable est explicitement requise. Pour plus d’informations, consultez Pool non paginé sans exécution (NX).
PagedPool
Pool paginé, qui est la mémoire système paginable. Le pool paginé ne peut être alloué et accessible qu’au DISPATCH_LEVEL IRQL < .
NonPagedPoolMustSucceed
Cette valeur est uniquement à usage interne et est autorisée uniquement au démarrage du système. Les pilotes ne doivent pas spécifier cette valeur à des moments autres que le démarrage du système, car une requête « doit réussir » bloque le système si la taille de mémoire demandée n’est pas disponible.
DontUseThisType
Réservé pour le système.
NonPagedPoolCacheAligned
Pool non paginé, aligné sur les limites du cache du processeur. Cette valeur est uniquement à usage interne.
PagedPoolCacheAligned
Pool paginé, aligné sur les limites du cache du processeur. Cette valeur est uniquement à usage interne.
NonPagedPoolCacheAlignedMustS
Cette valeur est uniquement à usage interne et est autorisée uniquement au démarrage du système. Il s’agit de l’équivalent aligné sur le cache de NonPagedPoolMustSucceed.
MaxPoolType
Réservé pour le système.
NonPagedPoolBase
Réservé pour le système.
NonPagedPoolBaseMustSucceed
Réservé pour le système.
NonPagedPoolBaseCacheAligned
Réservé pour le système.
NonPagedPoolBaseCacheAlignedMustS
Réservé pour le système.
NonPagedPoolSession
Obsolète. Ne pas utiliser.
PagedPoolSession
Obsolète. Ne pas utiliser.
NonPagedPoolMustSucceedSession
Obsolète. Ne pas utiliser.
DontUseThisTypeSession
Obsolète. Ne pas utiliser.
NonPagedPoolCacheAlignedSession
Obsolète. Ne pas utiliser.
PagedPoolCacheAlignedSession
Obsolète. Ne pas utiliser.
NonPagedPoolCacheAlignedMustSSession
Obsolète. Ne pas utiliser.
NonPagedPoolNx
Pool non paginé no-execute (NX). Ce type de pool est disponible à partir de Windows 8. Contrairement au pool non paginé désigné par NonPagedPool, qui alloue de la mémoire exécutable, le pool non paginé NX alloue la mémoire dans laquelle l’exécution des instructions est désactivée. Pour plus d’informations, consultez Pool non paginé sans exécution (NX).

Le pool non paginé est accessible à partir de n’importe quel IRQL, mais il s’agit d’une ressource rare et les pilotes ne doivent l’allouer que si nécessaire.
NonPagedPoolNxCacheAligned
Pool non paginé NX, aligné sur les limites du cache du processeur. Cette valeur est réservée à une utilisation exclusive par le système d’exploitation.
NonPagedPoolSessionNx
Réservé à une utilisation exclusive par le système d’exploitation.

Configuration requise

Condition requise Valeur
En-tête wdm.h (inclure Wdm.h, Ntddk.h, Ntifs.h, Wudfwdm.h)

Voir aussi

ExAllocatePoolWithQuotaTag

ExAllocatePoolWithTag

ExAllocatePoolWithTagPriority

ExInitializeLookasideListEx

ExInitializeNPagedLookasideList

ExInitializePagedLookasideList

LookasideListAllocateEx

SeAssignSecurity

SeAssignSecurityEx