Jump to content

Xgl

Xgl
Оригинальный автор(ы) Дэвид Ревман
Первоначальный выпуск 2 января 2006 г .; 18 лет назад ( 2006-01-02 )
Тип Дисплей-сервер
Веб-сайт сеть .архив .org /веб /20070605230047 /http: //www .freedesktop .org /неделя /Программное обеспечение / Xгл

Xgl — это устаревшая реализация сервера отображения, поддерживающая протокол X Window System, разработанная для использования преимуществ современных видеокарт через их драйверы OpenGL , расположенные поверх OpenGL . [1] Он поддерживает аппаратное ускорение всех приложений X, OpenGL и XVideo , а также графические эффекты с помощью оконного менеджера компоновки, такого как Compiz или Beryl . Проект был начат Дэвидом Ревеманом из Novell и впервые выпущен 2 января 2006 года. Он был удален. [2] с сервера X.org в пользу AIGLX 12 июня 2008 г.

Разработка Xgl началась в 2004 году. До его выпуска в 2006 году он разрабатывался открыто в публичных списках рассылки, хотя в течение последних нескольких месяцев разработка Xgl была частной. [3] В тот день исходный код Xgl был вновь открыт для публики. [4] [5] и включен в freedesktop.org вместе с серьезной реструктуризацией, позволяющей использовать более широкий спектр поддерживаемых драйверов дисплея. Серверные части X-сервера, используемые Xgl, включают Xglx и Xegl . В феврале 2006 года сервер получил широкую огласку после публичной демонстрации, на которой команда Novell по настольным компьютерам продемонстрировала рабочий стол с использованием Xgl с несколькими визуальными эффектами, такими как полупрозрачные окна и вращающийся трехмерный рабочий стол. [6] [7] [8] Эффекты сначала были реализованы в составном менеджере под названием glxcompmgr (не путать с xcompmgr), который теперь устарел, поскольку некоторые эффекты не могли быть адекватно реализованы без более тесного взаимодействия между оконным менеджером и составным менеджером. В качестве решения Дэвид Ревеман разработал Compiz , первый полноценный оконный менеджер OpenGL для X Window System. Позже, в сентябре 2006 года, Beryl оконный менеджер был выпущен как ответвление оригинального Compiz. Compiz и Beryl объединились еще в апреле 2007 года, в результате чего появилась Compiz Fusion .

Серверные части

[ редактировать ]

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

Xglx был первым сервером, реализованным для этой архитектуры. Он требует, чтобы уже существующий X-сервер работал поверх него, и использует GLX для создания окна OpenGL, которое затем использует Xgl, аналогично Xnest . Этот режим предназначен для использования только для разработки в будущем, поскольку нет необходимости требовать X-сервер для запуска Xgl поверх него.

На XDevConf 2006 (конференция по разработке X 2006 года) NVIDIA выступила с презентацией, утверждая, что это неправильное направление, поскольку многоуровневый сервер абстрагирует функции карт. Это значительно усложняет реализацию специфических возможностей драйвера, таких как поддержка 3D-очков и поддержка двух мониторов. [9]

Однако делегирование инициализации существующему X-серверу позволяет разработчикам сразу сосредоточиться на функциональности сервера, а не тратить значительное время на особенности взаимодействия с многочисленными видеооборудованием. На данный момент Xglx официально не поддерживает несколько мониторов, хотя это реализовано на Ubuntu Dapper/ATI/Nvidia (twinview).

Xegl был долгосрочной целью разработки X-сервера. [10] Он разделяет большую часть кода рисования с сервером Xglx, но инициализация объектов рисования OpenGL и управление контекстом обрабатываются API-интерфейсом EGL, разработанным Khronos (EGL — это независимый от оконной системы эквивалент API-интерфейсов GLX и WGL, которые соответственно позволяют Поддержка OpenGL в X и Microsoft Windows). Текущая реализация использует Mesa-solo для обеспечения рендеринга OpenGL непосредственно в фреймбуфер Linux или DRI для графического оборудования. По состоянию на май 2024 г. Xegl можно запустить только с использованием графического оборудования Radeon R200 , и разработка в настоящее время приостановлена. [11] Вполне вероятно, что так и останется до тех пор, пока сервер Xglx не зарекомендует себя и драйверы с закрытым исходным кодом не добавят поддержку API EGL, тогда он должен стать прозрачной заменой вложенного сервера Xglx.

Обоснование

[ редактировать ]

Структурирование всего рендеринга поверх OpenGL потенциально может упростить разработку видеодрайверов. Он убирает искусственное разделение 2D и 3D ускорения . Это выгодно, поскольку 2D-операции часто не ускоряются (что противоречит здравому смыслу, поскольку 2D является подмножеством 3D). [ нужна ссылка ]

Он также удаляет весь зависящий от драйвера код с самого X-сервера и позволяет ускорять операции компоновки и рендеринга независимо от графического драйвера.

Конкуренты

[ редактировать ]

Аппаратное ускорение операций 2D-черчения на протяжении многих лет было общей функцией многих оконных систем (включая X11). Новинкой Xgl и подобных систем является использование API, специально разработанных для 3D-рендеринга, для ускорения 2D-операций рабочего стола. До принятия в X11 сглаженного рисования использование API-интерфейсов 3D-рендеринга для 2D-рендеринга настольных компьютеров было нежелательным, поскольку такие API не обеспечивали гарантии рендеринга с точностью до пикселя, которые являются частью исходного определения протокола X11.

Аппаратно-ускоренный рендеринг окон и рабочего стола OpenGL, ограниченный использованием OpenGL для композиции текстур, используется в Mac OS X в технологии под названием Quartz Extreme , начиная с Mac OS X v10.2 . Quartz 2D Extreme является усовершенствованием этой функции и более сопоставим с Xgl. Как и Xgl, Quartz 2D Extreme обеспечивает ускорение OpenGL для всех операций 2D-рисования (а не только для компоновки рабочего стола) и поставляется с Mac OS X v10.4 , но по умолчанию отключен в ожидании формального объявления о готовности к производству. Core Animation является продолжением этой разработки для Leopard ( Mac OS X v10.5 ).

Было разработано несколько интерфейсов рабочего стола на основе 3D API, совсем недавно OpenCroquet и Project Looking Glass компании Sun Microsystems [1] ; они используют преимущества 3D-ускорения для программного обеспечения, созданного в их собственной среде, но, похоже, не ускоряют существующие настольные 2D-приложения, отображаемые в их среде (часто с помощью таких механизмов, как VNC ).

Microsoft разработала аналогичную технологию на основе DirectX , названную DWM , как часть своей операционной системы Windows Vista . Эта технология была впервые продемонстрирована публично на конференции Microsoft PDC в октябре 2003 года.

Доступность

[ редактировать ]

По состоянию на май 2006 г. Xgl X Server (и связанные с ним компоненты, включая менеджер компоновки Compiz и связанные с ним графические инструменты настройки) поставляется не по умолчанию в одном основном дистрибутиве Linux, SUSE 10.1, и включен в Frugalware Linux или SUSE Linux Enterprise Desktop 10. Xgl может довольно легко настроить для Ubuntu 6.06 LTS (Dapper Drake) и 6.10 (Edgy Eft), а также для Freespire с помощью бинарных пакетов из неофициальных репозиториев . Xgl также доступен в виде наложенного пакета в Gentoo Linux и в виде PKGBUILD для Arch Linux .

Mandriva Linux 2007 включает официальные пакеты для запуска Compiz с использованием Xgl и AIGLX . Mandriva предоставляет drak3d — инструмент для настройки 3D-рабочего стола в два клика.

Ubuntu 6.10 «Edgy Eft» и более поздние версии по умолчанию используют AIGLX , а не Xgl.

Xgl был удален из X11R7.5 в 2009 году, поскольку это неподдерживаемый серверный вариант. [12]

См. также

[ редактировать ]
  1. ^ ХОПФ, МАТТИАС (2006). «BEYOND EYE CANDY: рабочий стол с ускорением OpenGL, Xgl и Compiz» . Журнал Линукс . 68 : 24–26 . Проверено 6 февраля 2017 г.
  2. ^ «xorg/xserver — X-сервер» . Cgit.freedesktop.org . Проверено 24 января 2022 г.
  3. ^ «ALGIX, Nvidia, XGL и метасити» . Архивировано из оригинала 8 марта 2006 года . Проверено 24 января 2022 г.
  4. ^ Карстен Хайцлер (8 января 2006 г.). «Вопрос: Xserver/композитное поведение» . Lists.freedesktop.org . Проверено 24 января 2022 г.
  5. ^ «Код Novell XGL опубликован [LWN.net]» . Lwn.net . Проверено 24 января 2022 г.
  6. ^ «Novell публикует код Xgl — Slashdot» . Linux.slashdot.org . 8 февраля 2006 г. Проверено 24 января 2022 г.
  7. ^ «Удобство использования | SUSE Linux Enterprise Desktop» . xgl.opensuse.org . Архивировано из оригинала 29 июня 2012 года . Проверено 6 июня 2022 г.
  8. ^ «Ресурсы OpenSUSE XGL» . Opensuse.org . Архивировано из оригинала 4 апреля 2006 года . Проверено 24 января 2022 г.
  9. ^ «Использование существующей платформы загружаемых драйверов XFree86/X.Org для создания составного рабочего стола X» (PDF) . Скачать.nvidia.com . Проверено 24 января 2022 г.
  10. ^ Смирл, Джон (30 августа 2005 г.). «Состояние графики Linux» . Проверено 18 февраля 2016 г.
  11. ^ «cgit.freedesktop.org http виртуальный хост git» . Gitweb.freedesktop.org
  12. ^ «7,5» . Х.орг . Проверено 24 января 2022 г.
[ редактировать ]
Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: 49434f1d8d71c55d7460ce76f2dc5d5a__1715617020
URL1:https://arc.ask3.ru/arc/aa/49/5a/49434f1d8d71c55d7460ce76f2dc5d5a.html
Заголовок, (Title) документа по адресу, URL1:
Xgl - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)