Функция 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.
Возвращаемое значение
None
Remarks
Внимание!
Начиная с Windows 11 версии 22H2 эта функция изменилась со встроенной на экспортируемую. В результате, если вы создаете драйвер, предназначенный для последней версии Windows, он не сможет загрузиться в более старых версиях ОС. Чтобы изменить целевую версию ОС в Visual Studio, выберите Свойства конфигурации-Параметры> драйвера-Общие>.
ExFreeToPagedLookasideList — это взаимное выражение ExAllocateFromPagedLookasideList. Она освобождает запись, выделенную вызывающим объектом, обратно в список просмотра вызывающего абонента или в выстраиваемом пуле, когда эта запись больше не используется.
Ту же запись можно перераспределить или выделить другую запись позже с последующим вызовом ExAllocateFromPagedLookasideList. Пользователь списка lookaside может динамически выделять и освобождать такие записи, пока не вызовет ExDeletePagedLookasideList. ExDeletePagedLookasideList освобождает все невыполненные записи в списке, прежде чем очищает состояние системы для заданного списка lookaside и возвращает элемент управления.
Если указанный список lookaside еще не достиг максимального количества записей, определяемого системой, ExFreeToPagedLookasideList вставляет указанную запись в начало списка. В противном случае буфер в entry освобождается обратно в выстраиваемый пул с помощью предоставленной вызывающей стороной бесплатной подпрограммы, которая была настроена при инициализации списка lookaside или ExFreePool.
В Windows 2000 драйверы должны использовать параметр -D_WIN2K_COMPAT_SLIST_USAGE , чтобы успешно связать код, использующий ExFreeToPagedLookasideList.
Дополнительные сведения см. в статье Использование lookaside Списки.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Доступно начиная с Windows 2000. |
Целевая платформа | Универсальное |
Верхняя часть | wdm.h (включая Wdm.h, Ntddk.h, Ntifs.h) |
Библиотека | NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | <= APC_LEVEL |
См. также раздел
ExAllocateFromPagedLookasideList