Compartir a través de


Función ExAllocateFromPagedLookasideList (wdm.h)

La rutina ExAllocateFromPagedLookasideList devuelve un puntero a una entrada paginada de la lista de lookaside especificada o devuelve un puntero a una entrada paginada recién asignada.

Sintaxis

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

Parámetros

[in, out] Lookaside

Puntero a la estructura PAGED_LOOKASIDE_LIST de la lista de búsqueda, que el autor de la llamada ya inicializó con ExInitializePagedLookasideList.

Valor devuelto

ExAllocateFromPagedLookasideList devuelve un puntero a una entrada si se puede asignar una. De lo contrario, devuelve NULL.

Observaciones

Cautela

A partir de Windows 11, versión 22H2, esta función cambió de insertada a exportada. Como resultado, si compila el controlador destinado a la versión más reciente de Windows, no se cargará en versiones anteriores del sistema operativo. Para cambiar la versión del sistema operativo de destino en Visual Studio, seleccione Propiedades de configuración->Configuración del controlador->General.

Si la lista de búsqueda dada no está vacía, ExAllocateFromPagedLookasideList quita la primera entrada de la lista y devuelve un puntero a esta entrada. De lo contrario, ExAllocateFromPagedLookasideList llama a la rutina Asignar especificada en la inicialización de lista o ExAllocatePoolWithTag para devolver un puntero de entrada.

A continuación, el autor de la llamada puede configurar la entrada devuelta con cualquier dato determinado por el autor de la llamada. El autor de la llamada debe liberar cada entrada con ExFreeToPagedLookasideList cuando ya no esté en uso.

Dado que las entradas de una lista de apariencia paginada se asignan desde la memoria paginable, no se debe tener acceso a ellas en un IRQL >= DISPATCH_LEVEL. Puede usar exAllocateFromNPagedLookasideList para crear una lista de lookaside con entradas no paginables.

En Windows 2000, los controladores deben usar el modificador -D_WIN2K_COMPAT_SLIST_USAGE para vincular correctamente el código que usa ExAllocateFromPagedLookasideList.

Para obtener más información, vea Using Lookaside Lists.

Requisitos

Requisito Valor
cliente mínimo admitido Disponible a partir de Windows 2000.
de la plataforma de destino de Universal
encabezado de wdm.h (include Wdm.h, Ntddk.h, Ntifs.h)
biblioteca de NtosKrnl.lib
DLL de NtosKrnl.exe
irQL <= APC_LEVEL

Consulte también

ExAllocateFromNPagedLookasideList

ExFreeToPagedLookasideList

ExInitializePagedLookasideList

PAGED_LOOKASIDE_LIST