Сравнительно небольшой срок отделяет нас от анонса семейства новых операционных систем 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
Сегодня мы предлагаем вашему вниманию подробности о технике и принципе взаимодействия графических карт с новым поколением ОС Microsoft. Те, кто держит руку на пульсе развития современных технологий, полагаю уже в курсе, что все без исключения производители 3D графики объявили о поддержке нынешнего поколения своей графики в Windows Vista и плотном сотрудничестве с Microsoft в вопросе совместной разработки модели графических драйверов. Однако первым к нам попало описание наработок в этой области компании ATI. Ключевые изменения, конечно же, будут общими для всех графических драйверов под Windows Vista, но сегодня мы познакомимся с ними на примере и с учётом модели, реализованной компанией ATI.
Перед тем, как мы перейдем к рассмотрению новых возможностей, описанных в документе, для полноты взаимопонимания хотелось бы уточнить физический смысл нескольких терминов. Для кого-то эта информация конечно же избыточна, но зато в терминологии большинства наших читателей теперь уж точно не будет пробелов.
Ключевые термины
Графический драйвер - это программа, обеспечивающая взаимодействие между графической картой, операционной системой и приложениями, использующими ресурсы графики. Графические драйверы предыдущих версий Windows состояли из двух главных компонентов - 3D и 2D. В Windows Vista компонент 2D больше не требуется, так как рабочий стол Windows стал полностью трёхмерным.
Место графического драйвера в структуре ПК
Application Programming Interface (API) - Программный интерфейс приложения, обеспечивает взаимодействие компьютерной системы или приложения с другими приложениями, в результате чего осуществляются запросы на обслуживание и обмен данными.
В компьютерной графике используются два важнейших вида 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
Наиболее важным изменением в новой модели WDDM является вынос графического драйвера из пространства ядра в пространство пользователя. Основная цель этого изменения - максимально изолировать графический драйвер и выполняемые им функции от операционной системы и других приложений.
Модель WDDM по-прежнему состоит из двух основных компонентов, но уже под другими названиями: UMD (User Mode Driver) - драйвер пользовательского режима, и KMD (Kernel Mode Driver) - драйвер режима ядра. На рисунке ниже представлена схема модели драйверов ATI Windows Vista. Не углубляясь в технические детали WDDM, поясним вкратце, что такое UMD и KMD.
Графический драйвер ATI Windows Vista состоит из нескольких драйверов пользовательского режима (UMD), функций Direct3D и OpenGL для обработки 3-мерной графики, а также функций DXVA для обработки видео. Для Рабочего стола больше не требуется поддержки 2D-драйвера, так как в Windows Vista он стал полностью трёхмерным.
Драйверы UMD полностью отделены от драйвера режима ядра и аппаратных компонентов видеокарты. Для каждого приложения операционная система Windows Vista загружает отдельную копию драйвера UMD. Если приложение или драйвер UMD выполнит недопустимую операцию (что маловероятно), то будет закрыто только данное приложение, а операционная система Windows Vista останется работоспособной, и пользователь сможет продолжить работу.
Драйвер режима ядра (KMD) - это интерфейс между графическим драйвером и аппаратными компонентами видеокарты.
Важнейшее изменение, представленное в модели WDDM, состоит в том, что базовая часть драйвера режима ядра не так тесно привязана к операционной системе, как в XPDM. Это означает еще меньше шансов возникновения критических сбоев операционной системы в результате сбоев в драйвере KMD.
Комментарии (0)