A Google elkezdte terjeszteni az új, Fuchsia operációs rendszerre épülő firmware-t a 2019 óta forgalomban lévő Nest Hub Max okos képkockákhoz. Az első lépésben a Fuchsia alapú firmware a Google Preview Program résztvevőihez fog eljutni, és ha a tesztelés során nem merülnek fel váratlan problémák, a firmware-t a többi Nest Hub Max felhasználóra is alkalmazni fogják.
A Nest Hub Max képkocka a második fogyasztói eszköz lett, amely a Fuchsia operációs rendszerrel van felszerelve. Az első Fuchsia alapú firmware-t egy évvel ezelőtt a Nest Hub kapta, amely kisebb képernyővel rendelkezik, és nem tartalmaz beépített kamerát, amely a megfigyelőrendszer és a biztonsági funkciókhoz használatos. Annak ellenére, hogy az operációs rendszer a firmware-ben megváltozott, a felhasználói felület és a funkcionalitás teljesen megmaradt, és a végfelhasználók nem fognak észrevenni különbségeket, mivel a felület a Flutter keretrendszerre épül, és el van absztrahálva az alacsony szintű komponensektől. A Nest Hub Max eszközök, amelyek a fényképkeret, a multimédiás rendszer és az okosotthon irányításához szükséges felület funkcióit kombinálják, korábban Cast felületen és Linux kernelen alapuló firmware-t használtak.
A Fuchsia operációs rendszert a Google 2016 óta fejleszti, figyelembe véve az Android platform skálázhatósági és biztonsági hiányosságait. A rendszer a Zircon mikrokernelre épül, amely az LK projekt alapjaira épül, és különböző eszköztípusokra, beleértve az okostelefonokat és a számítógépeket, való alkalmazásra lett kiterjesztve. A Zircon kiterjeszti az LK-t a folyamatok és a megosztott könyvtárak, a felhasználói szint, az objektumkezelő rendszer és a capability alapú biztonsági modell támogatásával. A meghajtók olyan dinamikus könyvtárakként valósulnak meg, amelyek felhasználói térben működnek, a devhost folyamat tölti be őket, és az eszközkezelő (devmg, Device Manager) irányítja őket.
A Fuchsia saját grafikus felületet készített Dart nyelven, a Flutter keretrendszer használatával. A projekt részeként fejlesztik a Peridot felhasználói felület építő keretrendszert, a Fargo csomagkezelőt, a libc standard könyvtárat, az Escher renderelő rendszert, a Magma Vulkan-illesztőprogramot, a Scenic összeállító menedzsert, a MinFS, MemFS, ThinFS (Go nyelven írt FAT) és Blobfs fájlrendszereket, valamint az FVM partíciókezelőt. Az alkalmazásfejlesztéshez támogatott nyelvek közé tartozik a C/C++, Dart, a rendszerszintű komponensekben pedig Rust, a hálózati veremben Go, a build rendszerben pedig Python használata is megengedett.

A betöltés során egy rendszermenedszer működik, amely tartalmazza az appmgr-t az alap programkörnyezet létrehozásához, a sysmgr-t a betöltési környezet kialakításához és a basemgr-t a felhasználói környezet beállításához és a rendszerbe való belépés szervezéséhez. A biztonság érdekében egy fejlett sandbox-izolációs rendszert kínál, amelyben az új folyamatok nem férnek hozzá a kernel objektumaihoz, nem tudnak memóriát allokálni és nem tudnak kódot futtatni; az erőforrásokhoz való hozzáférést egy névtér rendszer határozza meg, amely meghatározza a rendelkezésre álló jogosultságokat. A platform keretrendszert biztosít a sandboxban futó programokat képviselő komponensek létrehozásához, amelyek más komponensekkel IPC-n keresztül léphetnek interakcióba.
Forrás: opennet.ru
