Uso del modelo de búfer DMA del contrato garantizado
El modelo de controlador de pantalla para Windows Vista garantiza el tamaño de los búferes DMA y las listas de ubicaciones de revisión para un dispositivo de representación. Una lista de ubicación de revisión contiene las direcciones de memoria física de los recursos a los que hacen referencia los comandos en el búfer DMA.
En el modo de contrato garantizado, el controlador de pantalla en modo de usuario es consciente del tamaño exacto del búfer DMA y la lista de ubicaciones de revisión que está disponible para la traducción cuando el controlador de pantalla en modo de usuario rellena los búferes de comandos y llama a pfnRenderCb para enviarlos al controlador de miniporte de pantalla. Después de cada llamada a pfnRenderCb, el controlador de pantalla en modo de usuario recibe el tamaño del búfer DMA y la lista de ubicaciones de revisión que está disponible para la traducción siguiente (es decir, la siguiente llamada a pfnRenderCb).
El administrador de memoria de vídeo garantiza que no recorte los búferes de DMA y las listas de ubicaciones de revisión de ese dispositivo hasta que se complete la siguiente traducción. El controlador de minipuerto de pantalla debe poder traducir un búfer de comandos en exactamente un búfer DMA y una lista de ubicaciones de revisión. Si esta traducción no es posible, el búfer de comandos en modo de usuario es, por definición, no válido. El controlador de minipuerto de pantalla no puede devolver el estado que indica que está fuera del espacio del búfer DMA y de las listas de ubicaciones de revisión durante la traducción; al hacerlo, el administrador de memoria de vídeo comprueba el sistema porque el administrador de memoria no cumple los requisitos del contrato DMA garantizado.