Поделиться через


Поддержка системы и драйверов для изменяемой панели

В настоящее время дискретный графический процессор (GPU) обычно имеет только небольшую часть буфера кадров, доступную через шину PCI. Для совместимости с 32-разрядными ОС дискретные GPU обычно требуют регион ввода-вывода размером 256 МБ для буферов кадров, и именно так их настраивает встроенное ПО.

В GPU, поддерживающих изменяемый базовый регистр адресов (BAR), Windows пересматривает размер ПАНЕЛИ GPU после инициализации встроенного ПО в модели драйвера дисплея Windows (WDDM) версии 2 и более поздних версий. Дополнительные сведения о изменяемой панели см. в спецификации возможности изменяемой панели в библиотеке спецификаций PCI SIG.

GPU, поддерживающий изменяемый размер bar, должен обеспечивать возможность отображения и отображения статического изображения во время перепрограммирования панели. Отображение не должно быть пустым, а затем создавать резервную копию во время этого процесса. Важно обеспечить плавный переход от образа, отображаемого встроенного ПО, образа загрузчика и первого образа, созданного драйвером режима ядра. Обратите внимание, что во время повторного переговора транзакция PCI не будет выполняться по отношению к GPU.

Это повторное согласование в основном невидимо для драйвера режима ядра. При успешном согласовании драйвер режима ядра будет наблюдать, что размер панели GPU был изменен до максимального размера, чтобы предоставить всю виртуальную память дискретного GPU.

После успешного изменения размера драйвер режима ядра должен предоставить диспетчеру видеопамять один сегмент памяти CPUVisible . Диспетчер видеопамяти сопоставляет виртуальные адреса ЦП непосредственно с этим диапазоном, когда ЦП требуется доступ к содержимому сегмента памяти.