ChromeOS — это операционная система на базе Linux, разработанная Google.
Несколько дней назад Разработчики ChromeOS опубликовали информацию о новая работа, на которой они начали сосредотачиваться, которая лаКРОС (аббревиатура от Linux и Chrome OS), которая стремится отделить браузер Chrome от оконного менеджера и системного пользовательского интерфейса.
Поскольку изначально в Chrome OS веб-браузер, оконный менеджер, экран входа в систему и системный пользовательский интерфейс реализованы в одном исполняемом файле.
Это движение позволяет не связывать обновление Chrome с системным обновлением и обновить его по аналогии с браузером на обычной операционной системе.
Браузер lacros-chrome — это обычная сборка Chrome для Linux с расширенной поддержкой Wayland., так как в Chrome OS есть реализация сервера Wayland под названием exosphere. Он используется ARC (для запуска приложений Android) и Crostini (для запуска приложений Linux). Для генерации и обработки входных событий лакрос-хром использует озоновый слой, который абстрагирует взаимодействие с графической подсистемой, использующей бэкэнд с поддержкой клиента Wayland.
Цель проекта LaCROS — разделить элементы интерфейса браузера и системы на два разных бинарника: ash-chrome (интерфейс) и lacros-chrome (браузер).
Таким образом разработчики Chrome ищут что при разделении компонентов могут ли они быть разработаны отдельно и иметь свой собственный цикл выпуска, то есть новая версия системы не будет выпускаться каждые 4 недели, как это было раньше (это связано с циклом выпуска Chrome/Chromium), и что только браузер получает соответствующее обновление и другие компоненты системы обновляются по мере необходимости.
Основной подход заключается в переименовании существующего бинарного файла в ash-chrome с минимальными изменениями. Затем мы берем бинарный файл linux-chrome, улучшаем его совместимость с Wayland, заставляем его работать как веб-браузер в Chrome OS и отправляем его как бинарный файл lacros-chrome. Это позволяет выпускать два бинарных файла независимо друг от друга с некоторой затратой ресурсов/производительности. Ограничение API изначально будет полустабильным: оно допускает 1-2 вехи смещения выпуска. В будущем мы можем допустить большее количество предубеждений.
Оба бинарных файла собраны из репозитория Chromium git. Однако бинарники могут быть собраны в разных версиях. Например, версия лакроса, созданная из ветки М-101, могла работать поверх версии аша, созданной из ветки М-100.
С другой стороны, также упоминается, что путем разделения компонентов требуется, чтобы отчеты и исправления ошибок обрабатывались отдельно поскольку, например, упоминается, что:
- Ошибки Lacros должны храниться в разделе OS=Lacros.
- Ошибки в бинарном файле ash-chrome, которые влияют только на ash-chrome, должны быть помечены как OS=Chrome.
- Ошибки в двоичном файле lacros-chrome, которые влияют только на lacros-chrome, должны быть помечены как OS=Lacros.
- Ошибки в бинарном файле ash-chrome, влияющие на lacros-chrome, должны быть помечены тегами OS=Chrome и OS=Lacros. Они не должны блокировать выбросы золы хрома в краткосрочной перспективе, но должны блокировать выбросы золы хрома в долгосрочной перспективе.
Наконец, следует отметить, что Предполагается, что LaCROS включен по умолчанию для некоторых моделей Chromebook. с момента выпуска ChromeOS 116 (хотя упоминание в документации о том, что для включения Lacros необходимо установить экспериментальные флаги, было удалено).
Поскольку некоторые пользователи Chromebook упомянули, что у них в системе было два браузера, один из которых Chrome, а другой LaCROS, которые в основном одинаковы (Chrome), но с той разницей, что они не построены одинаково, поскольку они, как упоминалось, ChromeOS имеет интегрированный браузер ChromeOS (т. е. это один и тот же элемент), а LaCROS — это линуксовая автономная версия Chrome (т. е. дополнительный элемент системы).
Если вы интересно узнать об этом больше, вы можете проверить детали в следующем ссылка.