Petr Hosek, die bij Google het team leidt dat verantwoordelijk is voor build-systemen, compilers en ontwikkelaarstools, heeft het eerste apparaat gepresenteerd dat zal worden geleverd met het Fuchsia-besturingssysteem. De firmware op basis van Fuchsia zal beschikbaar komen voor de slimme fotolijsten van Nest Hub als onderdeel van een experimentele update voor deelnemers aan het Google Preview Program.
Als er tijdens de proefimplementatie geen onvoorziene problemen optreden, zal de firmware op basis van Fuchsia ook worden toegepast op de apparaten van andere Nest Hub-gebruikers, die geen verschillen zullen opmerken omdat de interface, gebouwd met het Flutter-framework, hetzelfde blijft; alleen de lage niveau componenten van het besturingssysteem zullen veranderen. Eerder werd bij de in 2018 uitgebrachte Google Nest Hub-apparaten, die functies combineren van fotolijsten, multimedia-systemen en interfaces voor smart home beheer, firmware op basis van de Cast-shell en de Linux-kernel gebruikt.
Laten we niet vergeten dat Google sinds 2016 werkt aan het Fuchsia-project, een universeel besturingssysteem dat kan werken op elk type apparaat, van werkstations en smartphones tot ingebouwde en consumentenelektronica. De ontwikkeling houdt rekening met de ervaring die is opgedaan bij de creatie van het Android-platform en houdt rekening met tekortkomingen op het gebied van schaalbaarheid en beveiliging.
Het systeem is gebaseerd op de microkernel Zircon, die is ontwikkeld op basis van het LK-project en is uitgebreid voor gebruik op verschillende klassen apparaten, waaronder smartphones en persoonlijke computers. Zircon breidt LK uit met ondersteuning voor processen en gedeelde bibliotheken, gebruikersniveau, objectverwerking en een beveiligingsmodel op basis van capability. Stuurprogramma's worden geĆÆmplementeerd als dynamische bibliotheken die in de gebruikersruimte werken, geladen door het devhost-proces en beheerd door de apparaatbeheerder (devmg, Device Manager).
Voor Fuchsia is een eigen grafische interface ontwikkeld, geschreven in Dart met het Flutter-framework. Het project ontwikkelt ook het framework voor gebruikersinterface Peridot, de pakketbeheerder Fargo, de standaardbibliotheek libc, het renderingssysteem Escher, de Vulkan-driver Magma, de compositormanagement Scenic, de bestandssystemen MinFS, MemFS, ThinFS (FAT in Go) en Blobfs, evenals de partitiebeheerder FVM. Voor applicatieontwikkeling wordt ondersteuning geboden voor de talen C/C++, Dart, en in systeemcomponenten is ook gebruik van Rust toegestaan, in de netwerkstack Go, en in het buildsysteem Python.

Tijdens het opstartproces wordt een systeemmanager gebruikt, die appmgr omvat voor het aanmaken van de initiƫle software-omgeving, sysmgr voor het vormen van de opstartomgeving en basemgr voor het configureren van de gebruikersomgeving en het organiseren van de inlogprocedure. Voor beveiliging wordt een geavanceerd sandbox-isolatiesysteem aangeboden, waarin nieuwe processen geen toegang hebben tot kernelobjecten, geen geheugen kunnen toewijzen en geen code kunnen uitvoeren. Voor toegang tot bronnen wordt een naamruimtesysteem toegepast, dat de beschikbare bevoegdheden bepaalt. Het platform biedt een framework voor het creƫren van componenten die programma's zijn die in hun eigen sandbox draaien en met andere componenten kunnen communiceren via IPC.
Bron: opennet.ru
