ExAllocateFromPagedLookasideList 函式 (wdm.h)

ExAllocateFromPagedLookasideList 例程會從指定的 lookaside 列表傳回分頁專案的指標,或傳回新配置的分頁項目指標。

語法

PVOID ExAllocateFromPagedLookasideList(
  [in, out] PPAGED_LOOKASIDE_LIST Lookaside
);

參數

[in, out] Lookaside

lookaside 列表 之PAGED_LOOKASIDE_LIST 結構的指標,呼叫端已使用 ExInitializePagedLoitisideList 初始化。

傳回值

如果可以配置專案,ExAllocateFromPagedLookasideList 會傳回專案的指標。 否則,它會傳回 NULL

備註

警告

從 Windows 11 22H2 版開始,此函式已從內嵌變更為匯出。 因此,如果您建置以最新版 Windows 為目標的驅動程式,則無法在舊版作業系統中載入。 若要在 Visual Studio 中變更目標 OS 版本,請選取 [組態屬性->驅動程式設定->一般]。

如果指定的 lookaside 清單不是空的, ExAllocateFromPagedLookasideList 會從清單中移除第一個專案,並傳回這個專案的指標。 否則,ExAllocateFromPagedLoativesideList 會呼叫在清單初始化或 ExAllocatePoolWithTag 中指定的配置例程,以傳回項目指標。

接著,呼叫端可以使用任何呼叫端決定的數據來設定傳回的專案。 呼叫端應該在不再使用 ExFreeToPagedLofreesideList 時釋放每個專案。

由於分頁外觀清單中的專案是從可分頁記憶體配置,因此不得在 IRQL >= DISPATCH_LEVEL存取這些專案。 您可以使用 ExAllocateFromNPagedLookasideList 來建立具有不可分頁專案的 Lookaside 清單。

在 Windows 2000 上,驅動程式必須使用 -D_WIN2K_COMPAT_SLIST_USAGE 參數,才能成功連結使用 ExAllocateFromPagedLookasideList 的程式代碼。

如需詳細資訊,請參閱使用 Lookaside 清單

規格需求

需求
最低支援的用戶端 從 Windows 2000 開始提供。
目標平台 Universal
標頭 wdm.h (包括 Wdm.h、Ntddk.h、Ntifs.h)
程式庫 NtosKrnl.lib
Dll NtosKrnl.exe
IRQL <= APC_LEVEL

另請參閱

ExAllocateFromNPagedLookasideList

ExFreeToPagedLofreesideList

ExInitializePagedLookasideList

PAGED_LOOKASIDE_LIST