Función VideoPortAllocateContiguousMemory (video.h)
La función VideoPortAllocateContiguousMemory está obsoleta en Windows 2000 y versiones posteriores. Los controladores de minipuerto de vídeo deben usar VideoPortAllocateCommonBuffer en su lugar.
VideoPortAllocateContiguousMemory asigna un intervalo de memoria físicamente contigua y alineada con caché del grupo no paginado.
Sintaxis
VIDEOPORT_DEPRECATED VIDEOPORT_API PVOID VideoPortAllocateContiguousMemory(
[in] IN PVOID HwDeviceExtension,
[in] IN ULONG NumberOfBytes,
[in] IN PHYSICAL_ADDRESS HighestAcceptableAddress
);
Parámetros
[in] HwDeviceExtension
Puntero a la extensión del dispositivo del controlador de minipuerto.
[in] NumberOfBytes
Especifica el tamaño en bytes del bloque de memoria contigua que se va a asignar.
[in] HighestAcceptableAddress
Especifica la dirección física válida más alta que el controlador de miniporte puede usar. Por ejemplo, si un dispositivo solo puede hacer referencia a la memoria física en los 16 MB inferiores, este valor se establecería en 0x00000000FFFFFF.
Valor devuelto
VideoPortAllocateContiguousMemory devuelve la dirección virtual base de la memoria asignada, si la llamada se realiza correctamente. Si no se puede satisfacer la solicitud, se devuelve NULL .
Comentarios
Se puede llamar a VideoPortAllocateContiguousMemory para asignar un bloque contiguo de memoria física para un búfer interno a largo plazo.
Un controlador de minipuerto que debe usar memoria contigua solo debe asignar lo que necesita durante la inicialización del controlador, ya que es probable que el grupo no paginado se fragmente a medida que se ejecuta el sistema. Si el controlador de minipuerto se descarga, debe desasignar la memoria. Las asignaciones contiguas se alinean en un múltiplo entero del tamaño de la línea de caché de datos del procesador para evitar problemas de caché y coherencia.
Requisitos
Requisito | Value |
---|---|
Cliente mínimo compatible | Disponible en Windows 2000 y versiones posteriores de los sistemas operativos Windows. |
Plataforma de destino | Escritorio |
Encabezado | video.h (incluir Video.h) |
Library | Videoprt.lib |
Archivo DLL | Videoprt.sys |
IRQL | PASSIVE_LEVEL |