Fuchsia Friday: Четыре слоя Fuchsia

Описывая организацию кода Fuchsia, Google использует метафору «слоеного пирога». Fuchsia — это название проекта в целом и, предположительно, готового продукта, но под капотом он разделен на 4 отдельных слоя. В Fuchsia Friday на этой неделе мы подробно рассмотрим каждый слой и то, что о них известно.

Первый слой, основа, на которой построен Fuchsia, называется Zircon. Zircon (ранее Magenta) — это новое ядро, разработанное Google, которое в основном отвечает за доступ к оборудованию и связь между программным обеспечением.

Проще говоря, Zircon для Fuchsia — это как Linux для Android. Точно так же, как существует множество операционных систем, построенных на ядре Linux — Ubuntu, Android, Red Hat и даже Chrome OS — в конечном итоге могут появиться и другие системы, построенные на Zircon, помимо Fuchsia.

Реклама — прокрутите дальше для получения контента

Первый специфический для Fuchsia слой, построенный на Zircon, называется Garnet. Garnet содержит различные низкоуровневые компоненты, необходимые каждой ОС, включая драйверы устройств (сеть, графика и т. д.) и установку программного обеспечения. Самые интересные компоненты на этом уровне — это Escher (графический рендерер), Amber (обновлятор Fuchsia, который мы подробно рассмотрели на прошлой неделе) и Xi Core, который является базовым движком текстового и программного редактора Xi (официально анонсированного ранее в этом году).

Peridot — это следующий уровень, который в основном отвечает за модульный дизайн приложений Fuchsia (который стоит освежить в памяти). Два других основных компонента Peridot напрямую связаны с модулями. Ledger сохраняет ваше местоположение в приложениях/модулях на разных устройствах и синхронизируется с вашей учетной записью Google. (Подробнее о Ledger) Maxwell — это более сложная тема, которую мы скоро рассмотрим, но достаточно сказать, что Maxwell — это «интеллект», который делает Fuchsia волшебным. (Частью этого интеллекта является «Kronk», он же Google Assistant)

Topaz — это верхний слой «пирога», и он, скорее всего, повлияет на вас больше всего. Topaz — это место, где реализована поддержка Flutter, и с поддержкой Flutter появляется множество великолепных приложений, в основном демо-версий, которые однажды превратятся в полнофункциональные приложения, которыми вы будете пользоваться каждый день. Самым впечатляющим на данный момент, конечно же, является Armadillo, основной UI и домашний экран Fuchsia.

Приложения, включенные в слой Topaz, похожи на стандартные приложения Android. Это будут ваши основные приложения, такие как Контакты, Музыка, Проводник и текстовый редактор Xi (визуальный интерфейс в Topaz подключается к бэкенду в Garnet). Все, что вам нужно и чего нет в комплекте, можно просто установить.

Многоуровневая архитектура Fuchsia, на первый взгляд, кажется больше предназначенной для организации команд, чем для чего-либо еще. Она также помогает разделить код на более легко читаемые части. Однако причины глубже. Производители оборудования также смогут иметь свои собственные слои. Я считаю, что это означает, что компании смогут заменить один (или несколько) из четырех слоев собственным или модифицированным вариантом.

Большинство производителей телефонов настраивают пользовательский интерфейс Android, чтобы отличаться от конкурентов, вместо того чтобы использовать стандартную эстетику Google. Возможность замены слоя еще раз показывает, что Google извлекает уроки из своего опыта с Android. Они облегчают производителям внедрение своих настроек пользовательского интерфейса без ущерба для остальной системы. Samsung, например, может заменить стандартный Topaz версией с темой TouchWiz.

Кроме того, команда Android вряд ли могла предвидеть, что такая компания, как Amazon, будет сильно модифицировать ОС для устройств Kindle Fire. Такая же задача упрощается благодаря слоям Fuchsia. Замените Google Cloud и Google Assistant в Peridot на Amazon Web Services и Alexa. И, конечно же, замените Topaz языком дизайна Amazon. Все это, при этом наслаждаясь функциями и обновлениями безопасности стандартных Zircon и Garnet Fuchsia.

В целом, повторяющаяся тема Fuchsia — это усвоение уроков, которые команде Android пришлось выучить на собственном горьком опыте. Разделение Fuchsia на слои, которые только наращиваются, должно помочь обеспечить возможность обновлений и единство по сравнению с фрагментированной экосистемой Android. Конечно, компании по-прежнему смогут игнорировать эту архитектуру. Время покажет, будет ли план команды Fuchsia успешным.

Если у вас есть вопросы о том, как будет работать Fuchsia, задавайте их в комментариях или в Twitter. Возможно, вы найдете ответы в будущей статье!

Fuchsia Friday — это еженедельная серия, в которой мы погружаемся в исходный код Fuchsia и интерпретируем, что текущее состояние ОС может означать для готового продукта. Вся информация в этой статье является предположениями, основанными на имеющихся данных, и может быть изменена.

Читайте больше в нашей серии Fuchsia Friday:


Смотрите 9to5Google на YouTube для получения дополнительных новостей: