Документация
ОС Аврора 5.0.1

Графика

На рисунке представлена архитектура пользовательского интерфейса и графики в ОС Аврора.

Архитектура графики

Графическое представление в ОС Аврора осуществляется с помощью Qt и выполняется через протокол Wayland. Wayland является протоколом взаимодействия между композитором и клиентами, в состав которого входит унифицированный протокол взаимодействия устройств ввода, предоставляющий виртуальную клавиатуру, виртуальную мышь и tablet-интерфейс — разделяемые всеми приложениями.

Аппаратно ускоренная работа с графикой обеспечивается библиотекой Mesa 3D, которая предоставляется OpenGL ES 3.2 (система Embedded Open Graphics Library) и EGL (Embedded-System Graphics Library).

Сборка в ядре Mesa использует LLVMpipe для быстрого программного рендеринга (визуализации) без подключения аппаратных специфичных драйверов.

Wayland использует подсистемы ядра Linux, такие как KMS (Kernel mode-setting) и DRM (Direct Rendering Manager).

В качестве композитора в ОС Аврора используется Lipstick. Подробное описание функций Lipstick приведено в статье «Композитор».

Протокол Wayland позволяет композитору отправлять входные события на клиентскую сторону и клиентской стороне отправлять уведомления композитору:

  1. Модуль evdev получает событие и отправляет его композитору.
  2. Композитор в своем графе сцены находит окно, которому следует доставить данное событие и определяет тип трансформации, который следует применить к объекту.
  3. Путём обратной трансформации композитор транслирует экранные координаты в локальные для данного окна.
  4. Рендеринг выполняется на клиентской стороне, при этом клиент только отправляет запрос композитору, чтобы указать область, которая была обновлена.
  5. Композитор собирает запросы с клиентской стороны, а затем пересобирает экран.
  6. Композитор загружает новую страницу с помощью вызова ioctl, адресованного KMS.

Мы используем cookies для персонализации сайта и его более удобного использования. Вы можете запретить cookies в настройках браузера.

Пожалуйста ознакомьтесь с политикой использования cookies.