Подробности о графическом стеке Freon, пришедшем на смену X11 в Chrome OS

9 марта 2015 года

В обсуждении выпуска Chrome OS 41 разработчики из компании Google поделились некоторыми подробностями реализации графического стека Freon, который пришёл на смену X-серверу в устройствах Chromebook Pixel, Acer C720, ASUS Chromebox, HP Chromebox, LG Chromebase, Acer Chromebox и Dell Chromebox. Переход на Freon позволил сократить энергопотребление, повысить производительность вывода видео и WebGL, уменьшить размер системы.

Вместо X-сервера Freon предоставляет компактную прослойку, позволяющую организовать прямое обращение из браузера к драйверам KMS и OpenGL ES. Подобное стало возможным благодаря применению классов Ozone, используемых в Chromium для абстрагирования вывода на различные оконные системы (например, развиваются прослойки для вывода через Wayland и Mir). Все операции вывода в Chrome OS ограничиваются браузером, который использует только одно окно X11, формируя содержимое экрана при помощи RendererViews и встроенного оконного менеджера Aura.

Aura берёт на себя функции оконного менеджера (Aura shell), работающего через собственный композитный сервер, использующий доступные средства GPU для ускорения графических операций, и графического тулкита (Aura UI) для формирования элементов интерфейса, предоставляя собственный набор виджетов, диалоговых окон, элементов управления и обработчиков событий. Из подсистем нижележащего графического стека (X11, Cocoa или Windows) затрагивается только вывод поверх корневого окна. Код вывода в Aura сведён к легко заменяемой абстрактной прослойке Ozone (Архивная копия от 18 августа 2016 на Wayback Machine).

Так как в Chrome OS допускается выполнение только web-приложений, которые выводят информацию через браузер, функции мультиплексирования окон X11 оказались излишними и появилась возможность организовать вывод напрямую, исключив звено с X-сервером. Таким образом, с введением Freon связка chrome+x11+drm/kms трансофрмировалась в chrome+drm/kms. Для работы текстовой консоли (Ctrl+Alt+F2), применяемой в режиме для разработчиков, в рамках проекта frecon подготовлена реализация консоли, работающая через KMS.

Из перспектив, которые открылись перед разработчиками после внедрения Freon и позволяют добиться увеличения производительности и времени автономной работы, отмечено задействование для композитинга аппаратных оверлеев ( Hardware overlay), поддержка выполнения частичных обновлений на платформах без их поддержки в драйверах OpenGL, возможность загрузки текстур без их промежуточного копирования (zero copy), поддержка работы с внешними экранами (уже имеется прототип c реализацией DisplayLink 2.0), сокращение задержек при вводе данных.

Источники править


 
 
Creative Commons
Эта статья содержит материалы из статьи «Подробности о графическом стеке Freon, пришедшем на смену X11 в Chrome OS», опубликованной OpenNET и распространяющейся на условиях лицензии Creative Commons Attribution (CC BY) — указание автора, источник и лицензию.
 
Эта статья загружена автоматически ботом NewsBots в архив и ещё не проверялась редакторами Викиновостей.
Любой участник может оформить статью: добавить иллюстрации, викифицировать, заполнить шаблоны и добавить категории.
Любой редактор может снять этот шаблон после оформления и проверки.

Комментарии

Викиновости и Wikimedia Foundation не несут ответственности за любые материалы и точки зрения, находящиеся на странице и в разделе комментариев.