Russian Fedora

cообщество русскоязычных участников
международного проекта Fedora

Wayland и мобильные приложения

Это архивная статья

Задолго до Android, было несколько попыток тащить линукс-дистрибутивы на мобильные платформы, но, само собой, из-за портянок на BASH вместо init-системы, отсутствия аудиосервера (ALSA должно ведь хватать всем), слабоинтегрированного в систему сервиса hotplug, а главное из-за недостатков иксов и отсутствия возможности реализовать интерфейс мобильной системы на базе существовавших в то время DE, закончилось это максимум энтузиастами со старым Debian на паре моделей от Nokia. И только с появлением Android, где переписали init-демон, где внедрили самописный sound-сервер, где отказались от X-сервера, где представили стандартную платформу вместо десяти альтернатив для каждого компонента, можно говорить об успешной открытой мобильной системе.

Конечно, есть еще Tizen и еще пара вариантов, но уже понятно, что это будут нишевые продукты (Tizen будет в автомобилях, Firefox OS в телефонах, раздаваемых бесплатно работникам Mozilla Foundation, один телефон на Sailfish купит Lennart Poettering, а больше ничего и не будет).

Одно уже наверное всем понятно, что уж где-где, а в мобильной области было просто глупо использовать X-сервер, однако научно доказано это не было. И наконец-то, дружественная нашему коммьюнити компания Collabora провела серию тестов, демонстрирующих преимущества отказа от технологии 1980х годов, единственное оставшееся рабочее применение которой, это запуск установщика базы Oracle на удаленном сервере.

Wayland, технология, представляемая на смену иксам, уже поставляется в миллионах компьютеров. Это телевизоры, автомобили, и многое другое.

Основное видимое отличие для пользователя, это "every frame is perfect". Потаскайте любое окошко в иксах - вы заметите, что перерисовывается оно странными кусками. В Wayland такого уже нет благодаря совершенно иной архитектуре, и, как результат, задержка перерисовки окна упала до нуля по сравнению с иксами: image0 Но не менее важное для мобильных клиентов, это низкое энергопотребление.

Система должна использовать все возможности оборудования на 100%. И тут Wayland, за счет ориентации на новые технологии, легко бьет иксы, которые наоборот искусственно ориентированы на совместимость со всевозможным оборудованием, в т.ч. разработанным в 1991 году. Из ядра поддержку уже выкидывают, а в иксах поддержка есть. Ну а иначе как запустить Emacs с монгольского хоста с FreeBSD под SunOS в Аргентине? Говоря серьезно, в иксах есть две проблемы с электричеством. Во-1, это протокол, рассчитанный на команды рисования, а не на графические буферы, которыми оперируют современные ускорители.

Т.е., например, чтоб декодировать картинку с помощью графического ускорителя, нужно скопировать ее в иксы, потратив память и заняв шину на перекачку многомегабайтного массива. Во-2 иксы в принципе не знают ничего о "canvas", создаваемом композитором (единственный вариант, это OpenGL ES, для которого приходится копировать массивы данных снова). В отличие от иксов, Wayland специально проектировался в расчете на современное оборудование, что позволяет создавать на его основе мультимедийные системы с пониженными требованиями по памяти и процессору (ваш новый Mercedes будет на 5 долларов дешевле!). Но главное, это за счет более эффективного использования ускорителей, Wayland потребляет примерно в два с половиной раза меньше энергии, чем иксы: image1 Результаты графиков получены на довольно современной системе на базе 32-битного ARM (видеочип MALI) - Samsung Chromebook 2, с Wayland и gstreamer. Использовалась и технология DMA-BUF.

Комментарии