Share via


Función StorPortAllocateContiguousMemorySpecifyCacheNode (storport.h)

La rutina StorPortAllocateContiguousMemorySpecifyCacheNode asigna un intervalo de memoria no almacenada en caché físicamente contigua y no paginada.

Sintaxis

ULONG StorPortAllocateContiguousMemorySpecifyCacheNode(
  [in]           PVOID               HwDeviceExtension,
  [in]           SIZE_T              NumberOfBytes,
  [in]           PHYSICAL_ADDRESS    LowestAcceptableAddress,
  [in]           PHYSICAL_ADDRESS    HighestAcceptableAddress,
  [in, optional] PHYSICAL_ADDRESS    BoundaryAddressMultiple,
  [in]           MEMORY_CACHING_TYPE CacheType,
  [in]           NODE_REQUIREMENT    PreferredNode,
  [out]          PVOID               *BufferPointer
);

Parámetros

[in] HwDeviceExtension

Puntero a la extensión de dispositivo de hardware para el adaptador de bus host (HBA).

[in] NumberOfBytes

Número de bytes que se van a asignar.

[in] LowestAcceptableAddress

La dirección física más baja que es válida para la asignación. Por ejemplo, si el dispositivo solo puede hacer referencia a la memoria física en el intervalo de 8 MB a 16 MB, este valor se establecería en 0x800000 (8 MB).

[in] HighestAcceptableAddress

La dirección física más alta que es válida para la asignación. Por ejemplo, si el dispositivo solo puede hacer referencia a la memoria física por debajo de 16 MB, este valor se establecería en 0xFFFFFF (16 MB - 1).

[in, optional] BoundaryAddressMultiple

Dirección física múltiple que esta asignación no debe cruzar.

[in] CacheType

Tipo de caché deseado para la asignación.

[in] PreferredNode

Nodo preferido desde el que se debe realizar la asignación si las páginas están disponibles en ese nodo.

[out] BufferPointer

Variable que recibe la dirección inicial del bloque de memoria asignado. Tras la devolución de esta rutina, si esta variable es cero, no se encontró un intervalo contiguo para satisfacer la solicitud. Si esta variable no es NULL, contiene un puntero (por ejemplo, una dirección virtual en la parte no paginada del sistema) a la memoria físicamente contigua asignada.

Valor devuelto

La rutina StorPortAllocateContiguousMemorySpecifyCacheNode devuelve uno de los siguientes códigos de estado:

Código devuelto Descripción
STOR_STATUS_NOT_IMPLEMENTED
Esta función no se implementa en el sistema operativo activo.
STOR_STATUS_SUCCESS
La operación se realizó correctamente.
STOR_STATUS_INSUFFICIENT_RESOURCES
La operación no pudo asignar la memoria solicitada debido a recursos insuficientes.

Comentarios

Si se produce un error en la solicitud, BufferPointer se establecerá en NULL.

Requisitos

Requisito Value
Cliente mínimo compatible Disponible a partir de Windows 7.
Plataforma de destino Universal
Encabezado storport.h (incluya Storport.h)
IRQL <=DISPATCH_LEVEL
Reglas de cumplimiento de DDI StorPortIrql(storport)