共用方式為


ExAllocatePoolPriorityUninitialized 函式 (wdm.h)

此例程是 ExAllocatePoolWithTagPriority的包裝函式和取代選項。

ExAllocatePoolPriorityUninitialized 配置指定類型的集區內存。

語法

PVOID ExAllocatePoolPriorityUninitialized(
  __drv_strictTypeMatch(__drv_typeExpr)POOL_TYPE PoolType,
  SIZE_T                                         NumberOfBytes,
  ULONG                                          Tag,
  EX_POOL_PRIORITY                               Priority
);

參數

PoolType

要配置的集區內存類型。 如需可用集區內存類型的描述,請參閱 POOL_TYPE

您可以使用 wdm.h中定義的 POOL_RAISE_IF_ALLOCATION_FAILURE 旗標來執行位 OR,以修改列舉值。 如果無法滿足要求,此旗標會導致引發例外狀況。 不建議使用此旗標,因為成本高昂。

同樣地,您可以使用 POOL_COLD_ALLOCATION 旗標來修改 PoolTypewdm.h,做為核心的提示,從可能快速分頁的頁面配置記憶體。 若要盡可能減少常駐集區內存的數量,您不應該經常參考這些配置。 POOL_COLD_ALLOCATION 旗標只是諮詢。

NumberOfBytes

要配置的位元元組數目。

Tag

要用於已配置記憶體的集區標籤。 如需詳細資訊,請參閱 ExAllocatePoolWithTag的 Tag 參數。

Priority

指定此要求優先順序的 EX_POOL_PRIORITY 列舉值。

傳回值

ExAllocatePoolPriorityUninitialized 如果可用集區中的記憶體不足而無法滿足要求,除非指定POOL_RAISE_IF_ALLOCATION_FAILURE,否則會傳回 NULL。 否則,例程會傳回所配置記憶體的指標。

言論

ExAllocatePoolPriorityUninitialized 配置的記憶體未初始化。 如果核心模式驅動程式要讓使用者模式軟體看到記憶體,則核心模式驅動程序必須先將這個記憶體設為零(以避免洩漏潛在的特殊許可權內容)

如需其他指引,請參閱 ExAllocatePoolWithTagPriority 的<<備註> 一節。

要求

要求 價值
最低支援的用戶端 需要適用於 Windows 10 版本 2004 的 WDK。 以 Windows 7 和更新版本的 Windows作系統為目標。
目標平臺 普遍
標頭 wdm.h (包括 Wdm.h、Ntddk.h、Ntifs.h)
連結庫 NtosKrnl.lib
DLL NtosKrnl.exe
IRQL <= DISPATCH_LEVEL (請參閱一節)
DDI 合規性規則 HwStorPortProhibitedDDIs、IrqlExAllocatePool、IrqlExFree2、SpNoWait、StorPortStartIo

另請參閱

ExAllocatePoolWithTagPriority

ExAllocatePoolPriorityZero