Chrome перейшов на використання озонового шару в системах X11

Google-хром

Кілька днів тому Chrome надіслав усім користувачам стабільної гілки браузера зміну яка за замовчуванням активує новий код для організації виводу в системах з сервером X, заснований на використанні шар під назвою «озон» що абстрагується від взаємодії з графічною підсистемою.

Використання озону дозволяє надавати підтримку для X11 та Wayland в одній збірці Chromeбез прив’язки до певної графічної підсистеми.

Про озон

Озон - це шар абстракції платформи під віконною системою Aura який використовується для введення та низькорівневої графіки, тому абстракція підтримує основні системи, починаючи від вбудованих цілей SoC і закінчуючи новими альтернативними віконними системами до X11 у Linux, таких як Wayland або Mir для відображення Aura Chromium, забезпечуючи реалізацію інтерфейсу платформи.

Оскільки бажано, щоб Chrome використовувався у найрізноманітніших проектах, проводиться робота щодо полегшення переходу на нові платформи.

Для підтримки цієї мети Озон дотримується таких принципів:

  • Інтерфейси, а не ifdefs: Різниці між платформами усуваються шляхом виклику об'єкта, наданого платформою, через інтерфейс замість використання умовної компіляції. Внутрішні компоненти платформи залишаються інкапсульованими, а загальнодоступний інтерфейс діє як брандмауер між нейтральними верхніми шарами платформи (аура, мерехтіння, вміст тощо) та нижніми конкретними шарами платформи. 
  • Гнучкі інтерфейси: Інтерфейси платформи повинні інкапсулювати саме те, що потрібно Chrome від платформи, з мінімальними обмеженнями щодо реалізації платформи, а також мінімальними обмеженнями щодо використання верхніх шарів.
  • Час виконання для всіх платформ: щоб уникнути умовної компіляції у верхніх шарах, це дозволяє нам будувати кілька платформ в одній двійковій системі та пов'язувати їх під час виконання.
  • Просте розгалуження - багато портів починаються як форки, і багато з них згодом об’єднують свій код у потоці, інші матимуть довгий термін служби поза деревом. Це нормально, і ми повинні сприяти цьому процесу, щоб заохотити вилки.

Ось чому незалежність особливостей побудови графічного інтерфейсу на різних системах працює в Chrome він реалізований за допомогою власного міжплатформенного стека графіки Aura. Aura діє як віконний менеджер (оболонка Aura), працює через власний композитний сервер і використовує доступні інструменти графічного процесора для прискорення графічних операцій.

Для створення елементів інтерфейсу, використовується графічний інструментарій інтерфейсу Aura, який надає власний набір віджетів, діалогових вікон, елементів керування та обробників подій. З базових можливостей стеку графіки (X11, Wayland, Cocoa або Windows) використовується лише вихід у верхній частині кореневого вікна.

Усі конкретні операції з графічним стеком Linux зводяться до одного шару легкозамінний абстрактний озон. Поки що підтримка Ozone надається у вигляді опції, а за замовчуванням - це старий бекенд, закодований у X11.

Робота над перекладом версій X11 для використання озонового шару триває з 2020 року, а для користувачів поступове включення бекенда Ozone / X11 за замовчуванням розпочалося з випуском Chrome 92.

Тобто кілька днів тому новий бекенд був активований для всіх користувачів Chrome Linux. На додаток до X11 та Wayland ("–ozone-platform = wayland" та "–ozone-platform = x11"), Ozone також розробляє платформи для виведення через графічні драйвери KMS / DRM, графічний вивід ASCII за допомогою бібліотеки libcaca, рендеринг у PNG зображення (без голови) та потокове передавання через пристрої Chromecast.

Нарешті, згадується, що вищезазначений бекенд планується, який підтримує роботу лише через X11, буде припинено та врешті -решт буде видалено з кодової бази (Після того, як новий бекенд Ozone / X11 досяг паритету у функціональності та увімкнув його за замовчуванням, не було сенсу зберігати інший бекенд X11 у браузері.)

Фуенте: https://chromium.googlesource.com


Залиште свій коментар

Ваша електронна адреса не буде опублікований. Обов'язкові для заповнення поля позначені *

*

*

  1. Відповідальний за дані: Мігель Анхель Гатон
  2. Призначення даних: Контроль спаму, управління коментарями.
  3. Легітимація: Ваша згода
  4. Передача даних: Дані не передаватимуться третім особам, за винятком юридичних зобов’язань.
  5. Зберігання даних: База даних, розміщена в мережі Occentus Networks (ЄС)
  6. Права: Ви можете будь-коли обмежити, відновити та видалити свою інформацію.