Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
Um segmento linear de espaço de abertura é semelhante a um segmento linear de espaço de memória. No entanto, o segmento de espaço de abertura é apenas um espaço de endereçamento e não pode conter bits.
Para armazenar os bits, as páginas de memória do sistema devem ser alocadas e o intervalo de espaço de endereço deve ser redirecionado para fazer referência a essas páginas. O driver de miniport de exibição em modo kernel (KMD) deve implementar a função DxgkDdiBuildPagingBuffer para os tipos de operação DXGK_OPERATION_MAP_APERTURE_SEGMENT e DXGK_OPERATION_UNMAP_APERTURE_SEGMENT a fim de lidar com o redirecionamento, e deve expor essa função conforme descrito em DriverEntry do Driver de Miniport de Exibição. Dxgkrnl chama DxgkDdiBuildPagingBuffer com o intervalo de espaço de endereço a ser redirecionado e o MDL que faz referência às páginas de memória física do sistema que foram alocadas.
O KMD normalmente realiza o redirecionamento do intervalo de espaço de endereço programando uma tabela de páginas, que é desconhecida para o gerenciador de memória de vídeo (VidMm).
O driver deve definir o sinalizador de campo de bits Aperture no membro Flags da estrutura DXGK_SEGMENTDESCRIPTOR para especificar um segmento de espaço de abertura linear. O driver também pode definir os seguintes sinalizadores de campo de bits para indicar outro suporte de segmento:
CpuVisible para indicar que o segmento é acessível pela CPU.
CacheCoherent para indicar que o segmento mantém a coerência do cache com a CPU para as páginas para as quais o segmento redireciona.
A figura a seguir mostra uma representação visual de um segmento linear abertura-espaço.