X сервер - Wayland

0
Ваша оценка: Нет

Wayland — протокол для организации графического сервера в Linux и других UNIX-подобных операционных системах. Wayland - это программный слой, работающий с видеокартой напрямую, в то время как Xorg для контакта с видеокартой вынужден использовать драйвера.

По мнению разработчиков, Wayland является работой над ошибками X.org, накопившимися за последние 26 лет. Кардинальное отличие от X.org заключается в том, что Wayland лишь управляет буферами (плоскостями) окон и возлагает всю отрисовку их содержимого на тулкиты (GTK, Qt и т. д.). API рисования (drawing API) полностью отсутствует. Все версии протокола строго определены, а само версионирование продумано. У X.org есть серьёзная проблема с версиями разных расширений, часто перекрещивавшимися или дополняющими, вместо того чтобы быть самодостаточными и исключающими. Функцию композиции буферов осуществляет референсный композитный менеджер Weston, использующий как OpenGL ES, так и программную отрисовку.

В состав Wayland также входит унифицированный протокол устройств ввода, предоставляющий одну виртуальную клавиатуру, одну виртуальную мышь и один tablet-интерфейс — разделяемые всеми приложениями. Wayland знает о состояниях устройств ввода и способен запоминать их: X.org не сохраняет состояния устройств (stateless-протокол), но может быть настроен через файлы конфигурации.

О Wayland его создатель отзывается так: «Wayland — новый графический сервер, который выполняет только крошечную часть функций Х, которые мы действительно используем, когда запускаем композитный рабочий стол. Wayland, по сути, — буферный менеджер (подобно DRI2 для X.org), обработчик входных данных. Весь рендеринг выполняется на клиентской стороне — так, как сегодня работает OpenGL, а задание режимов и другие аппаратные установки выполняются в ядре. Такой подход значительно упрощает организацию сервера».

Wayland использует уже существующие в ядре Linux технологии, такие как Kernel mode-setting (KMS), Direct Rendering Manager (DRM) и Graphics Execution Manager (GEM).

Разработка Wayland была начата Кристианом Хогсбергом (дат. Kristian Høgsberg), на тот момент сотрудником Red Hat, ныне членом «Центра открытых технологий Intel» (англ. Intel's Open Source Technology Center). Wayland является свободным ПО. Название Wayland происходит от города Вэйланд.

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

О Wayland его создатель отзывается так: «Wayland — новый графический сервер, который выполняет только крошечную часть функций Х, которые мы действительно используем, когда запускаем композитный рабочий стол. Wayland, по сути, — буферный менеджер (подобно DRI2 для X.org), обработчик входных данных. Весь рендеринг выполняется на клиентской стороне — так, как сегодня работает OpenGL, а задание режимов и другие аппаратные установки выполняются в ядре. Такой подход значительно упрощает организацию сервера».

Weston — это эталонная реализация композитного менеджера Wayland. Написан на языке Си, сначала был опубликован под лицензией GPLv2, позже вышел под MIT. Weston изначально создавался под API ядра Linux, поэтому официально поддерживает работу только с ядром Linux из-за зависимости от KMS, GEM и udev.

Weston использует GEM для обмена буферов между графическим сервером и приложениями. Для рендеринга может использовать OpenGL, cairo и pixman.

Тип приложения: библиотека
Сайт разработчика: http://wayland.freedesktop.org/
Что почитать?


Разместил: vikos 30 Январь 2011 в 15:06