Компания Google започна разпространението на ново фърмуер, базирано на операционната система Fuchsia, за умните фоторамки Nest Hub Max, произвеждани от 2019 година. В първия етап фърмуерът на база Fuchsia ще започне да се доставя на участниците в програмата Google Preview Program, и ако по време на пробното внедряване не възникнат непредвидени проблеми, фърмуерът ще бъде приложен и на устройствата на останалите потребители на Nest Hub Max.
Фоторамката Nest Hub Max стана второто потребителско устройство, оборудвано с операционната система Fuchsia. Първият фърмуер на база Fuchsia година по-рано получи моделът Nest Hub, който се отличава с по-малък екран и липса на вградена видеокамера, която се използва в системата за видеонаблюдение и сигурност. Въпреки смяната на операционната система във фърмуера, потребителският интерфейс и функционалността са напълно запазени и крайните потребители не трябва да забелязват разлики, тъй като интерфейсът е построен на базата на фреймуърка Flutter и е абстрахиран от нискоуровневите компоненти. Преди това в устройствата Nest Hub Max, съчетаващи функции на рамка за снимки, мултимедийна система и интерфейс за управление на интелигентен дом, беше прилаган фърмуер на база обвивка Cast и ядро Linux.
ОС Fuchsia се развива от компанията Google от 2016 година, имайки предвид недостатъците в областта на мащабируемостта и сигурността, които съществуват в платформата Android. Системата се основава на микроядрото Zircon, базирано на разработки от проекта LK, разширено за приложение на различни класове устройства, включително смартфони и персонални компютри. Zircon разширява LK с поддръжка на процеси и споделени библиотеки, ниво на потребителя, система за обработка на обекти и модел за осигуряване на сигурност, базиран на capability. Драйверите се реализират като динамични библиотеки, работещи в пространството на потребителя, зареждани от процеса devhost и управлявани от мениджъра на устройства (devmg, Device Manager).
За Fuchsia е подготвен собствен графичен интерфейс, написан на езика Dart с използване на фреймворка Flutter. Проектът също така развива фреймворка за изграждане на потребителски интерфейси Peridot, пакетния мениджър Fargo, стандартната библиотека libc, системата за рендериране Escher, Vulkan драйвера Magma, композитния мениджър Scenic, файловите системи MinFS, MemFS, ThinFS (FAT на езика Go) и Blobfs, както и мениджъра на партиции FVM. За разработка на приложения се предоставя поддръжка за езиците C/C++, Dart, в системните компоненти е разрешено да се използва и Rust, в мрежовия стек Go, а в системата за изграждане - езика Python.

В процеса на зареждане се използва системен мениджър, включващ appmgr за създаване на начална програмна среда, sysmgr за формиране на зареждаща среда и basemgr за настройка на потребителската среда и организиране на вход в системата. За осигуряване на безопасност се предлага напреднала система за sandbox изолация, при която новите процеси нямат достъп до обектите на ядрото, не могат да отделят памет и не могат да стартират код, а за достъп до ресурсите се прилага система от пространства с имената, която определя наличните правомощия. Платформата предоставя фреймворк за създаване на компоненти, представляващи програми, изпълнявани в собствен sandbox, които могат да взаимодействат с други компоненти чрез IPC.
Източник: opennet.ru
