Fonction ExAllocatePoolUninitialized (wdm.h)
Cette routine est un wrapper et une option de remplacement pour ExAllocatePoolWithTag.
Pour prendre en charge les versions de Windows antérieures à Windows 10 version 2004, utilisez ExAllocatePoolUninitialized ou ExAllocatePoolZero.
Pour prendre en charge Windows 10 version 2004 et ultérieure, utilisez ExAllocatePool2.
Syntaxe
PVOID ExAllocatePoolUninitialized(
__drv_strictTypeMatch(__drv_typeExpr)POOL_TYPE PoolType,
SIZE_T NumberOfBytes,
ULONG Tag
);
Paramètres
PoolType
Définit le paramètre de POOL_TYPEPoolType.
NumberOfBytes
Définit le paramètre SIZE_T NumberOfBytes.
Tag
Définit la balise de paramètre ULONG.
Remarques
Utilisez ce wrapper si vous souhaitez explicitement ne pas zéro la plage de mémoire allouée.
Un pilote doit uniquement accéder à la mémoire dans la plage d’octets qu’il alloue. L’accès à la mémoire en dehors de cette plage peut endommager le pool et provoquer le blocage du système.
La mémoire allouée par ExAllocatePoolUninitialized est non initialisée. Un pilote en mode noyau doit d’abord zéro cette mémoire s’il veut la rendre visible pour les logiciels en mode utilisateur (afin d’éviter toute fuite de contenu potentiellement privilégié).
Pour obtenir des conseils supplémentaires, consultez la section Remarques de ExAllocatePoolWithTag .
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Nécessite WDK pour Windows 10 version 2004. Cible Windows 7 et versions ultérieures du système d’exploitation Windows. |
Plateforme cible | Universal |
En-tête | wdm.h (inclure Wdm.h, Ntddk.h, Ntifs.h) |
IRQL | IRQL <= DISPATCH_LEVEL (voir la section Remarques) |