Функция ExAllocatePoolUninitialized (wdm.h)
Эта подпрограмма является оболочкой и заменой для ExAllocatePoolWithTag.
Для поддержки версий Windows до Windows 10 версии 2004 используйте ExAllocatePoolUninitialized или ExAllocatePoolZero.
Для поддержки Windows 10 версии 2004 и более поздних используйте ExAllocatePool2.
Синтаксис
PVOID ExAllocatePoolUninitialized(
__drv_strictTypeMatch(__drv_typeExpr)POOL_TYPE PoolType,
SIZE_T NumberOfBytes,
ULONG Tag
);
Параметры
PoolType
Определяет параметр POOL_TYPEPoolType.
NumberOfBytes
Определяет параметр SIZE_TNumberOfBytes.
Tag
Определяет тег параметра ULONG.
Комментарии
Используйте эту оболочку, если вы хотите явно не обнулять выделенный диапазон памяти.
Драйвер должен обращаться к памяти только в пределах выделяемого им диапазона байтов. Доступ к памяти за пределами этого диапазона может привести к повреждению пула и аварийному завершению работы системы.
Память, которую выделяет ExAllocatePoolUninitialized , не инициализирована. Драйвер режима ядра должен сначала обнулить эту память, если он собирается сделать ее видимой для программного обеспечения в пользовательском режиме (чтобы избежать утечки потенциально привилегированного содержимого).
Дополнительные рекомендации см. в разделе Примечания в ExAllocatePoolWithTag .
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Требуется WDK для Windows 10 версии 2004. Предназначен для Windows 7 и более поздних версий операционной системы Windows. |
Целевая платформа | Универсальное |
Верхняя часть | wdm.h (включая Wdm.h, Ntddk.h, Ntifs.h) |
IRQL | IRQL <= DISPATCH_LEVEL (см. раздел "Примечания") |