В библиотеках Enlightenment появилась поддержка дисплейного сервера Wayland

В набор библиотек EFL (Enlightenment Foundation Library), компоненты которого составляют основу проекта Enlightenment 17, интегрирована поддержка возможности работы поверх дисплейного сервера Wayland, без использования промежуточных прослоек. Ранее возможность работы поверх Wayland была обеспечена для GTK+, Qt и Clutter, в разработке также находится экспериментальный бэкенд для SDL.

В настоящее время для Wayland реализована поддержка отрисовки клиентских приложений. Поверх Wayland уже могут работать клиентские приложения, использующие как низкоуровневый API Ecore-Evas, так и базирующихся на готовых виджетах Elementary. При запуске напрямую поверх Wayland подобные приложения корректно обрабатывают ввод, поддерживают изменение размера и перемещения окон. Поддерживается отрисовка с использованием совместного доступа к буферам Shared-memory и с использованием буферов OpenGL ES2. В первом случае рендеринг выполняется только силами CPU, т.е. может использоваться для оборудования, не поддерживающего OpenGL. Во втором случае для отрисовки привлекаются средства аппаратного ускорения OpenGL ES 2.

Создание отдельного композитного сервера для Wayland на базе наработок Enlightenment пока относится к планам на будущее (над создание сових композитных серверов для Wayland также работают проекты KWin и Compiz). После создания композитного сервера появился возможность бесшовной организации работы всего окружения Enlightenment только поверх Wayland, без использования протокола X11. Кроме того, планируется добавить поддержку Wayland в существующий код работающего на базе X11 композитного менеджера Enlightenment 0.17. Пока это лишь планы, но по мнению разработчиков Enlightenment для создания полнофункционального рабочего стола или пользовательского окружения для мобильных устройств потребуется внести дополнения в протокол Wayland.

Wayland отличается от X-сервера тем, что на уровне сервера выполняется только переадресация всех окон, а все операции рендеринга и управления окнами производятся на стороне клиента и передаются для обработки композитному серверу. Сервер не поддерживает API отрисовки и оперирует только с уже сформированными окнами, что позволяет избавится от двойной буферизации при использовании таких библиотек как EFL, GTK+, Qt и Clutter. Все операции отрисовки производятся силами дополнительных библиотек, например, OpenGL ES, FreeType и Cairo. Взаимодействие с аппаратным обеспечением, например, проведение инициализации, переключение видеорежимов (drm modesetting) и управление памятью (GEM) графических карт, может производиться напрямую через KMS-модуль, работающий на уровне ядра, что позволяет обойтись без привилегий суперпользователя. Для обеспечения совместимости с программами, использующими низкоуровневые библиотеки X11, подготовлен компонент XWayland, позволяющий запустить X.Org-сервер в роли клиента Wayland.



Источник:
http://www.opennet.ru/opennews/art.shtml?num=32818

<= Назад
Комментарии
]]> ipv6 ready Kiev LUGLinux4MeНостальгияЛичный сайт skeletora ]]>