Оригинал материала: https://3dnews.ru/173005

Графические драйверы ATI Catalyst в операционной системе Windows Vista

Перевод: Александр Захаров
Редактор: Владимир Романченко

Сравнительно небольшой срок отделяет нас от анонса семейства новых операционных систем Windows Vista компании Microsoft. "Небольшой" - разумеется, по сравнению с тем периодом времени, который прошёл с анонса Windows XP.

Да, уже через несколько месяцев семейство операционных систем Windows Vista перестанет фигурировать в новостях с оговоркой "Бета-версия" и появится в рознице. Новое поколение операционной платформы от Microsoft обещает быть значительным шагом вперед по сравнению с предыдущими версиями Windows. Уже сейчас в числе значительных изменений называют более эффективный механизм поиска документов непосредственно с Рабочего стола, новый движок браузера Internet Explorer, усовершенствованные средства безопасности, новый дизайн медиа плеера Windows Media Player и т.п. И всё же наиболее существенным и радикальным изменением интерфейса обещает стать новый дизайн Рабочего стола Windows, который будет полностью 3-мерным.

Рабочий стол Windows, показанный на иллюстрации ниже, представляет собой полноценное 3D приложение, в котором реализованы полупрозрачные рамки окон, возможность предварительного просмотра из панели задач в реальном времени, трёхмерный же органайзер окон, применены всевозможные динамические эффекты освещения.

Безусловно, для обработки столь мощной 3D графической оболочки пользовательского интерфейса в компьютере с операционной системой Windows Vista должна быть современная видеокарта приличной мощи, более того, графическое "железо" должно сочетаться с операционной системой Windows Vista, то есть, обладать идеально подогнанными драйверами.


 Новый Рабочий стол Windows в стиле 3D

Новый Рабочий стол Windows в стиле 3D

Сегодня мы предлагаем вашему вниманию подробности о технике и принципе взаимодействия графических карт с новым поколением ОС Microsoft. Те, кто держит руку на пульсе развития современных технологий, полагаю уже в курсе, что все без исключения производители 3D графики объявили о поддержке нынешнего поколения своей графики в Windows Vista и плотном сотрудничестве с Microsoft в вопросе совместной разработки модели графических драйверов. Однако первым к нам попало описание наработок в этой области компании ATI. Ключевые изменения, конечно же, будут общими для всех графических драйверов под Windows Vista, но сегодня мы познакомимся с ними на примере и с учётом модели, реализованной компанией ATI.

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

Ключевые термины

Графический драйвер - это программа, обеспечивающая взаимодействие между графической картой, операционной системой и приложениями, использующими ресурсы графики. Графические драйверы предыдущих версий Windows состояли из двух главных компонентов - 3D и 2D. В Windows Vista компонент 2D больше не требуется, так как рабочий стол Windows стал полностью трёхмерным.


 Место графического драйвера в структуре ПК

Место графического драйвера в структуре ПК

Application Programming Interface (API) - Программный интерфейс приложения, обеспечивает взаимодействие компьютерной системы или приложения с другими приложениями, в результате чего осуществляются запросы на обслуживание и обмен данными.


 Application Programming Interface

В компьютерной графике используются два важнейших вида API - Direct3D и OpenGL. Стандарт Direct3D создан Microsoft, а OpenGL - разработка консорциума экспертов отрасли. API-функции Direct3D и OpenGL предоставляют стандартный набор элементов управления, используемые графическим приложением для взаимодействия с видеокартой, поддерживающей все возможности API. Графический драйвер как правило обладает двумя компонентами для поддержки API Direct3D и OpenGL.

API-функции Direct3D являются неотъемлемой частью API-системы Windows под названием DirectX (последняя версия - DirectX 9). Туда же входит ещё одно важнейшее подмножество - API-функция DXVA (DirectX Video Acceleration). DXVA обрабатывают инструкции графического процессора, позволяющие воспроизводить видео высокой четкости (High Definition) на персональном компьютере.

GDI (Graphics Device Interface), интерфейс графических устройств - это компонент операционной системы Microsoft Windows, отвечающий за прорисовку графических объектов на двухмерном (2D) рабочем столе Windows. Для прорисовки 3D объектов компонент GDI не используется. В Windows XP компонент GDI теснее взаимодействует с видеокартой с помощью 2D драйверов. В Windows Vista компонент GDI уже не привязан к графической карте, так как рабочий стол полностью 3-мерный.

Графический ускоритель (видеокарта) - аппаратное решение, состоит из двух основных компонентов: графического процессора, "мозга" графического ускорителя, и графической памяти, отвечающей за хранение данных и участвующей в процессе обсчета данных графическим процессором.

WDDM (Windows Display Driver Model), модель графических драйверов Windows - новая архитектура графических драйверов для работы в Windows Vista. Система WDDM имеет ряд преимуществ по сравнению с предыдущей версией, XPDM (Windows XP Driver Model), она более стабильна, в ней реализованы улучшенные средства безопасности и, что более важно, поддерживается графическая оболочка нового Рабочего стола Windows Vista.

Графические драйверы предыдущих поколений Windows

Мы никоим образом не стремимся углубляться в технические детали моделей драйверов или их архитектуры, но для лучшего понимания новых возможностей модели WDDM необходимо уяснить смысл двух ключевых понятий. Важнейшими для понимания являются понятия "пространство ядра" и "пространство пользователя".

Ядро драйвера взаимодействует непосредственно с аппаратной частью, то есть, с компонентами видеокарты - графическим процессором и графической памятью. В Windows XP ядро драйвера фактически рассматривается как часть операционной системы, что логически может приводить к критическим сбоям всей системы из-за ошибок графического драйвера. В свою очередь пользовательское пространство графического драйвера не имеет прямого обращения к компонентам графической карты и также изолировано от операционной системы, что обеспечивает стабильность и безопасность системы в целом. В модели драйверов Windows XP, представленной на схеме ниже, используется лишь малая часть пользовательского пространства драйвера, а основная часть графического драйвера (Direct3D - для поддержки 3D-графики и драйвер дисплея для поддержки 2D-графики) выполняется в пространстве ядра. Только компонент OpenGL драйвера расположен в пользовательском пространстве.

Графические драйверы Windows Vista


 Графические драйверы Windows Vista

Наиболее важным изменением в новой модели WDDM является вынос графического драйвера из пространства ядра в пространство пользователя. Основная цель этого изменения - максимально изолировать графический драйвер и выполняемые им функции от операционной системы и других приложений.

Модель WDDM по-прежнему состоит из двух основных компонентов, но уже под другими названиями: UMD (User Mode Driver) - драйвер пользовательского режима, и KMD (Kernel Mode Driver) - драйвер режима ядра. На рисунке ниже представлена схема модели драйверов ATI Windows Vista. Не углубляясь в технические детали WDDM, поясним вкратце, что такое UMD и KMD.


 схема модели драйверов ATI Windows Vista

Графический драйвер ATI Windows Vista состоит из нескольких драйверов пользовательского режима (UMD), функций Direct3D и OpenGL для обработки 3-мерной графики, а также функций DXVA для обработки видео. Для Рабочего стола больше не требуется поддержки 2D-драйвера, так как в Windows Vista он стал полностью трёхмерным.

Драйверы UMD полностью отделены от драйвера режима ядра и аппаратных компонентов видеокарты. Для каждого приложения операционная система Windows Vista загружает отдельную копию драйвера UMD. Если приложение или драйвер UMD выполнит недопустимую операцию (что маловероятно), то будет закрыто только данное приложение, а операционная система Windows Vista останется работоспособной, и пользователь сможет продолжить работу.

Драйвер режима ядра (KMD) - это интерфейс между графическим драйвером и аппаратными компонентами видеокарты.

Важнейшее изменение, представленное в модели WDDM, состоит в том, что базовая часть драйвера режима ядра не так тесно привязана к операционной системе, как в XPDM. Это означает еще меньше шансов возникновения критических сбоев операционной системы в результате сбоев в драйвере KMD.

Важнейшим из преимуществ модели WDDM является поддержка трёхмерной графической оболочки Рабочего Стола Windows Vista - Windows Aero. Для поддержки Windows Aero в операционной системе должен быть установлен графический драйвер WDDM и мощная видеокарта с аппаратной поддержкой DirectX 9. Оболочка Windows Aero представляет собой такое же 3D приложение, как, например, любая 3D-игра. Менеджер Рабочего стола Windows (Desktop Windows Manager) или DWM, показанный на рисунке ниже, отвечает за прорисовку и точное формирование трёхмерных объектов пользовательского интерфейса. Одно из преимуществ 3-мерной оболочки Рабочего стола заключается в том, что каждое окно (будь то окно приложения, браузера Internet Explorer или редактора Блокнот) обрабатывается как автономная поверхность, и пользователь может располагать окна одно над другим без перерисовки нижележащих. В Windows XP вся Рабочий стол и все окна воспринимаются системой как единая двухмерная плоскость. При перемещении окон происходит непрерывная перерисовка каждого окна или области Рабочего стола под перемещаемым окном, что приводит к потере четкости и значительному расходу вычислительных ресурсов.


 Desktop Windows Manager

Другим важнейшим преимуществом модели WDDM является то, что после установки драйвера перезапуск системы не требуется, то есть, после установки свежей версии ATI Catalyst теперь не понадобится привычный рестарт системы. К плюсам модели WDDM также можно отнести более эффективное управление видеоподсистемой. WDDM определяет приоритеты рабочих процессов и оптимально распределяет нагрузку на графический процессор и между приложениями, обеспечивая максимум производительности. Компания ATI последовательно доводит версии видеодрайверов Windows Vista с целью улучшения распределения ресурсов графического процессора между несколькими приложениями.

Перенос значительной части графического драйвера в пространство пользователя позволил снять целый ряд ограничений, свойственных модели XPDM. Драйверы в модели XPDM не только страдают от ограниченных возможностей доступа к системным службам, но и вынуждены работать в ограниченном пространстве, занятом компонентами графического драйвера. В результате переполнения графического драйвера XPDM в пространстве ядра запуск некоторых приложений бывает невозможным из-за недостаточного объема памяти. В пространстве пользователя драйвера такие ограничения, свойственные пространству ядра, отсутствуют. То есть, модель WDDM является более стабильной платформой - как для операционной системы, так и для приложений.

Подготовка к работе с новой моделью графических драйверов

Компанией ATI еще задолго до появления WDDM разработан ряд новых технологических решений для оптимизации графических драйверов. Вот некоторые из них.

GPU Recover - технология восстановления работоспособности графического процессора после сбоев, была впервые представлена в октябре 2003 года и стала первым шагом в сторону повышения стабильности операционной системы Windows. Технология GPU Recover позволяет отследить момент "зависания" графического акселератора и восстанавливать его работу путем ресета графического процессора, без перезагрузки операционной системы.

Как уже отмечалось ранее, графические драйверы предыдущих моделей имеют большую вероятность возникновения ситуации критического сбоя, так как графический драйвер находится в пространстве ядра. Модель WDDM предусматривает перенос большей части графического драйвера из пространства ядра в пространство пользователя, что существенно снижает вероятность возникновения критических сбоев.


Enhanced Memory Management (улучшенное управление памятью) Еще одним важнейшим преимуществом модели WDDM является перенос управления графической памятью из графического драйвера в операционную систему Windows Vista. Несмотря на это ядро драйвера по-прежнему должно тесно взаимодействовать с Windows Vista. Для наиболее эффективного управления ресурсами памяти и достижения максимальной производительности очень важным условием является тесное оптимизированное взаимодействие графического драйвера с менеджером памяти операционной системы Windows Vista.

Для работы с XPDM в ATI разработали собственный менеджер памяти - VCAM (Virtual Command and Memory Management), примерная схема которого показана на рисунке ниже. VCAM работает как главный менеджер распределения памяти между компонентами драйверов ATI Direct3D и ATI OpenGL и компонентами видеокарты.


 примерная схема VCAM

Усовершенствования в графических драйверах Windows Vista

И ещё несколько слов о ряде усовершенствований WDDM, появившихся в результате тесного сотрудничества ATI и Microsoft.

Security (средства безопасности)

В графических драйверах ATI для Windows Vista заложена функциональность, полностью защищающая графические приложения от влияния сторонних приложений. Механизм защиты блокирует прямой доступ приложениям к определенным компонентам видеокарт ATI. Приложениям, обращающимся к компонентам видеокарт ATI, будет предоставлен безопасный доступ к графической памяти, как показано на схеме ниже.


Механизм безопасности, реализованный ATI, призван сыграть ключевую роль в поддержке таких приложений как в частности воспроизведение HD-контента, в том числе с дисков HD-DVD и Blu-ray, ибо без качественной защиты от атак нежелательных приложений воспроизведение HD-контента компьютерной системой (в частости, связкой видеокарты и программного обеспечения) будет невозможной.

Распараллеливание для многоядерной обработки графики

Параллельная обработка графики многоядерными графическими системами является технологией ATI, ныне ставшей частью модели WDDM в Windows Vista. В основе этой технологии лежит простой принцип: видеокарты ATI воспринимаются моделью WDDM как набор программных ядер (3D, видео и т.п.), которые благодаря их оптимальному использованию обеспечивают максимальную производительность.


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

Для систем ATI CrossFire поддержка модели программных ядер дает значительное увеличение производительности видеоподсистемы. В операционной системе Windows Vista будет заложена "родная" поддержка работы системы с несколькими видеокартами - технология ATI Linked Adapter. Эта технология воспринимает несколько графических видеокарт как единый ресурс (GPU и память), благодаря оптимальному распределению рабочей нагрузки между графическими процессорами и пулом графической памяти будет обеспечиваться дополнительный прирост производительности.

Заключение

Новая модель драйверов ATI для Windows Vista предполагает значительно более высокий уровень производительности, стабильности, поддержку более удобного пользовательского интерфейса. Графический драйвер ATI Windows Vista полностью совместим со всеми видеокартами, поддерживающими DirectX 9 - в настольных, встроенных, мобильных компьютерах и рабочих станциях.

Сводная таблица преимуществ драйверов ATI для Windows Vista


Новые возможности
Преимущества для пользователей ATI
Новая модель драйверов - Windows Display Driver Model (WDDM)
Рабочий стол Windows в стиле 3D
После установки свежей версий ATI Catalyst перезагрузка системы не требуется
Более стабильная работа в среде Windows Vista
Более высокий уровень производительности в приложениях
GPU Recover
Удобное восстановление после сбоев в драйверах (при малой вероятности их возникновения)
Улучшенное управление памятью
Оптимизация механизма VCAM, выполненная ATI, позволила улучшить управление памятью в Windows Vista
Улучшенные средства безопасности
Возможность воспроизводить защищенный контент нового поколения – диски HD-DVD и Blu-ray на компьютерах с Windows Vista
Поддержка параллельных программных ядер обработки графики
Максимальная эффективность использования ресурсов видеокарт, – более высокое качество изображения в системах с несколькими видеокартами (CrossFire)


Оригинал материала: https://3dnews.ru/173005