Wayland

Матеріал з Вікіпедії — вільної енциклопедії.
Перейти до: навігація, пошук
Wayland
Wayland Display Server logo
Wayland demo 2.png
Автор(и) Kristian Høgsberg
Перший випуск 0.85 / 9 лютого 2011; 1166 днів тому
Стабільний випуск 1.4 (24 січня 2014; 86 днів тому)
Написано на C
Операційна система Unix-like
Стан розробки активний
Тип графічний сервер
Ліцензія MIT
Сайт wayland.freedesktop.org

Waylandграфічний сервер для Linux та інших UNIX-подібних операційних систем, що складається з протоколу, механізму міжпроцесної взаємодії та бібліотек. Розробка Wayland була розпочата Крістіаном Гоґсбергом (Kristian Høgsberg), членом «Центру відкритих технологій Intel» (Intel's Open Source Technology Center) і співробітником Red Hat. Wayland є вільним ПЗ[1][2][3].

Основні принципи[ред.ред. код]

The Wayland display server protocol relys on EGL

Wayland використовує вже існуючі в ядрі Linux технології, такі як Kernel mode-setting (KMS), Direct Rendering Manager (DRM) і Graphics Execution Manager (GEM). Також до складу Wayland входить власний вбудований композитний менеджер (згодом виокремлений в окремий проект Weston), який використовує OpenGL ES. Сервер Wayland його творець характеризує так: «Wayland — новий сервер дисплея, який виконує тільки крихітну частину тих функцій X Window System, які ми фактично використовуємо, коли запускаємо композитний робочий стіл. Wayland — це, по суті, буферний менеджер (подібно до того, чим DRI2 є для X.org), обробник вхідних даних. Весь рендеринг виконується на стороні клієнта — так, як сьогодні працює OpenGL, а завдання режимів та інші апаратні установки виконуються в ядрі. Такий підхід дозволяє значно спростити організацію сервера».

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

У рамках супутнього проекту Weston розвивається один з прототипів реалізації композитного сервера. Підкреслюється, що це лише одна з реалізацій (за аналогією з віконними менеджерами), оскільки в ролі композитного сервера може виступати будь-який інший продукт, що підтримує протокол Wayland. Наприклад, ведеться робота із забезпеченню підтримки Wayland в таких існуючих композитних менеджерах для X11, як KWin і Compiz. Композитний сервер Weston може працювати з використанням DRM-модуля ядра Linux, поверх X11 або поверх іншого композитного сервера Wayland.

Використання[ред.ред. код]

Підтримка прямої роботи c Wayland вже реалізована для бібліотек Gtk3+, Qt 5, SDL, Clutter і EFL (Enlightenment Foundation Library).

  • Wayland мав використовуватися в створюваній Intel і Nokia операційній системі MeeGo[4]
  • Марк Шаттлворт анонсував у своєму блозі, що Ubuntu, можливо, буде використовувати Wayland замість X.org для свого середовища робочого столу Unity[5] Попередні пакети з Wayland вже включені до складу репозиторія universe і можуть бути випробувані користувачами Ubuntu 11.04. Іншим важливим кроком вперед є забезпечення підтримки запуску Compiz поверх Wayland. Проте за найоптимістичнішими оцінками в базову версію Ubuntu Wayland може бути інтегрувати не раніше випуску 12.10, запланованого на жовтень 2012 року.[6]
  • Графічна система дистрибутива Fedora буде переведена на Wayland[7]

Виноски[ред.ред. код]

  1. Офіційний сайт
  2. Michael Larabel (November 03, 2008) Wayland: A New X Server For Linux
  3. Kristian Høgsberg (2010-11-22). «Wayland license clarification». wayland-devel mailing list. Архів оригіналу за 2012-04-08. Процитовано 2010-11-23. 
  4. Michael Larabel (2010-09-16). «Where Wayland May First Appear In Use By A Distro». Архів оригіналу за 2013-07-09. 
  5. Марк Шаттлворт (2010-11-04). «Unity on Wayland». Марк Шаттлворт. Архів оригіналу за 2011-08-24. Процитовано 2010-11-04. 
  6. Ubuntu начнет использовать дисплейный сервер Wayland как минимум через полтора года
  7. The Fedora Plans For Wayland

Посилання[ред.ред. код]