Поделиться через


Функция ExFreeToPagedLookasideList (wdm.h)

Подпрограмма ExFreeToPagedLookasideList возвращает страничные записи в заданный список lookaside или в пул страниц.

Синтаксис

void ExFreeToPagedLookasideList(
  [in, out] PPAGED_LOOKASIDE_LIST Lookaside,
  [in]      PVOID                 Entry
);

Параметры

[in, out] Lookaside

Указатель на структуру PAGED_LOOKASIDE_LIST для списка lookaside, который вызывающий объект уже инициализирован с помощью ExInitializePagedLookasideList, который вызывающий объект уже инициализирован с ExInitializePagedLookasideList.

[in] Entry

Указатель на запись для освобождения. Вызывающий объект получил этот указатель из предыдущего вызова ExAllocateFromPagedLookasideList.

Возвращаемое значение

Никакой

Замечания

Осторожность

Начиная с Windows 11 версии 22H2 эта функция изменилась с встроенной на экспорт. В результате, если вы создаете драйвер, предназначенный для последней версии Windows, он не сможет загрузиться в более ранних версиях ОС. Чтобы изменить целевую версию ОС в Visual Studio, выберите "Свойства конфигурации">"Параметры драйвера">"Общие".

ExFreeToPagedLookasideList является взаимной ExAllocateFromPagedLookasideList. Он освобождает запись, выделенную вызывающим абонентом, обратно в список lookaside абонента или в пул страниц, когда эта запись больше не используется.

Ту же запись можно перераспределить или выделить другую запись позже с последующим вызовом ExAllocateFromPagedLookasideList. Пользователь списка lookaside может выделить и освободить такие записи динамически, пока не вызовет ExDeletePagedLookasideList. ExDeletePagedLookasideList освобождает все выдающиеся записи в списке, прежде чем очистить состояние системы для заданного списка lookaside и возвращает элемент управления.

Если указанный список lookaside еще не достиг системного максимального количества записей, ExFreeToPagedLookasideList вставляет указанную запись в начале списка. В противном случае буфер записи освобождается обратно в пул страниц с помощью процедуры, предоставленной вызывающим бесплатной, которая была настроена при инициализации списка lookaside или ExFreePool.

В Windows 2000 драйверы должны использовать параметр -D_WIN2K_COMPAT_SLIST_USAGE для успешного связывания кода, использующего ExFreeToPagedLookasideList.

Дополнительные сведения см. в разделе Using Lookaside Lists.

Требования

Требование Ценность
минимальные поддерживаемые клиентские Доступно начиная с Windows 2000.
целевая платформа Всеобщий
заголовка wdm.h (include Wdm.h, Ntddk.h, Ntifs.h)
библиотеки NtosKrnl.lib
DLL NtosKrnl.exe
IRQL <= APC_LEVEL

См. также

ExAllocateFromPagedLookasideList

ExDeletePagedLookasideList

ExInitializePagedLookasideList

PAGED_LOOKASIDE_LIST