Paginación de recursos de memoria de vídeo
A diferencia del modelo de controlador de pantalla de Microsoft Windows 2000, el modelo de controlador de pantalla de Windows Vista permite crear más recursos de memoria de vídeo que la cantidad total de memoria de vídeo física disponible, que luego se paginan dentro y fuera de la memoria de vídeo según sea necesario. En otras palabras, no todos los recursos de memoria de vídeo están en memoria de vídeo simultáneamente.
La GPU puede tener varios búferes DMA en su canalización. Los recursos de memoria de vídeo a los que hacen referencia estos búferes DMA activos deben estar en memoria de vídeo. Otros recursos de memoria de vídeo inactivos se pueden paginar en la memoria del sistema.
Antes de que el programador de GPU pueda llamar a la función DxgkDdiSubmitCommand del controlador de miniporte de pantalla para enviar un búfer DMA a la GPU, el programador debe asegurarse de que todos los recursos de memoria de vídeo usados por el búfer DMA están realmente en la memoria de vídeo. Si algunos recursos no están en memoria de vídeo, se deben paginar desde la memoria del sistema. El programador de GPU debe llamar al administrador de memoria de vídeo para encontrar espacio en la memoria de vídeo para transferir los datos de recursos de memoria de vídeo necesarios de la memoria del sistema a la memoria de vídeo. Cuando la demanda de memoria de vídeo es alta, el programador de GPU debe llamar al administrador de memoria de vídeo para transferir datos de recursos de memoria de vídeo inactivos a la memoria del sistema para dejar espacio para los datos de recursos de memoria de vídeo necesarios. Los búferes DMA de propósito especial que contienen los comandos para transferir datos entre vídeo y memoria del sistema se conocen como búferes de paginación. El administrador de memoria de vídeo llama a la función DxgkDdiBuildPagingBuffer del controlador de miniporte de pantalla para crear búferes de paginación en los que el controlador escribe comandos de transferencia de datos específicos del hardware.