Compartir a través de


Macro NdisAllocateFromNPagedLookasideList (ndis.h)

La función NdisAllocateFromNPagedLookasideList quita la primera entrada del encabezado de lista de aspecto dado. Si la lista de búsqueda está vacía actualmente, se asigna una entrada desde un grupo no paginado.

Sintaxis

void NdisAllocateFromNPagedLookasideList(
   _L
);

Parámetros

_L

Puntero al encabezado de la lista de aspecto desde el que se asignará la entrada. El autor de la llamada ya inicializó el encabezado de lista con Función NdisInitializeNPagedLookasideList .

Valor devuelto

None

Observaciones

Si la lista de búsqueda no está vacía, NdisAllocateFromNPagedLookasideList quita la primera entrada de la lista y devuelve su dirección al autor de la llamada. Si la lista de búsqueda está vacía, NdisAllocateFromNPagedLookasideList llama a la función Allocate , especificada en el parámetro Allocate de . Función NdisInitializeNPagedLookasideList , que el autor de la llamada especificó en la inicialización de lista, si existe, o asigna una entrada en nombre del autor de la llamada. NdisAllocateFromNPagedLookasideList devuelve NULL si la función Allocate proporcionada por el autor de la llamada, si existe, o si esta función no puede asignar una entrada no paginada.

Todas las entradas asignadas desde una lista de lookaside no paginadas tienen un tamaño fijo, que se especificó cuando el controlador llamó originalmente a NdisInitializeNPagedLookasideList. Por lo tanto, una lista de aspecto es especialmente útil para los controladores que deben asignar bloques de tamaño fijo en los que mantener el estado en respuesta a la demanda dinámica de E/S. Por ejemplo, cualquier controlador NDIS orientado a la conexión podría asignar las áreas de contexto de VC que necesita de una lista de aspecto a medida que se crean las máquinas virtuales y liberar cada entrada de nuevo en la lista de búsqueda con la Función NdisFreeToNPagedLookasideList , ya que cada VC se descompone.

Requisitos

Requisito Value
Cliente mínimo compatible Compatible con los controladores NDIS 6.0 y NDIS 5.1 (consulte NdisAllocateFromNPagedLookasideList (NDIS 5.1)) en Windows Vista. Compatible con controladores NDIS 5.1 (consulte NdisAllocateFromNPagedLookasideList (NDIS 5.1)) en Windows XP.
Plataforma de destino Escritorio
Encabezado ndis.h (incluya Ndis.h)
IRQL <= DISPATCH_LEVEL
Reglas de cumplimiento de DDI Irql_Miscellaneous_Function(ndis), NdisAllocateFromNPagedLookasideList(ndis), NdisAllocateFromNPagedLookasideList_InitFail(ndis)

Consulte también

NdisDeleteNPagedLookasideList NdisFreeToNPagedLookasideList NdisInitializeNPagedLookasideList