Fuchsia OS is al begonnen met uitrollen naar Nest Hub-apparaten

Petr Hosek , hoofd van het Google-team dat verantwoordelijk is voor buildsystemen, compilers en ontwikkeltools, heeft onlangs het eerste apparaat onthuld dat wordt geleverd met het Fuchsia-besturingssysteem. De op Fuchsia gebaseerde firmware zal geleidelijk worden uitgerold naar Nest Hub slimme fotolijsten als onderdeel van een experimentele update voor leden van het Google Preview-programma.

Er wordt vermeld dat, als er zich tijdens de testimplementatie geen onvoorziene problemen voordoen , de op Fuchsia gebaseerde firmware zal worden toegepast op de apparaten van andere Nest Hub-gebruikers . Zij zullen geen verschil merken, aangezien de interface, gebouwd met het Flutter-framework, hetzelfde blijft. Alleen de onderliggende besturingssysteemcomponenten zullen veranderen.

Eerdere Google Nest Hub-apparaten die sinds 2018 zijn uitgebracht, combineren de functies van een fotolijst, multimediasysteem en interface voor slimme huisbediening, maakten gebruik van Cast-shell-gebaseerde firmware en de Linux-kernel.

Ter herinnering: in het kader van Project Fuchsia ontwikkelt Google sinds 2016 een universeel besturingssysteem dat op elk type apparaat kan draaien, van werkstations en smartphones tot embedded systemen en consumententechnologie. Bij deze ontwikkeling wordt rekening gehouden met de ervaring die is opgedaan met de ontwikkeling van het Android-platform en worden tekortkomingen op het gebied van schaalbaarheid en beveiliging aangepakt.

Het systeem is gebaseerd op de Zircon-microkernel, die zelf is gebaseerd op ontwikkelingen van het LK-project en is uitgebreid voor gebruik op verschillende soorten apparaten, waaronder smartphones en pc's. Zircon breidt LK uit met ondersteuning voor gedeelde processen en bibliotheken, beheer op gebruikersniveau, objectverwerking en een op mogelijkheden gebaseerd beveiligingsmodel. Stuurprogramma's worden geïmplementeerd als dynamische gebruikersruimtebibliotheken die worden geladen door het devhost-proces en beheerd door de apparaatbeheerder (devmg).

For Fuchsia heeft een eigen grafische gebruikersinterface ontwikkeld, geschreven in Dart, met behulp van het Flutter-framework. Het project ontwikkelt ook het Peridot UI-framework, de Fargo-pakketbeheerder, de libc-standaardbibliotheek, het Escher-renderingsysteem, de Magma Vulkan-driver, Scenic Composer, MinFS, MemFS, ThinFS (FAT in Go) en Blobfs-bestandssystemen, evenals FVM-partitionering. Het maakt ook de ontwikkeling van mobiele applicaties voor iOS en Android mogelijk. Rendering wordt afgehandeld door de Escher-component, die werkt via de Vulkan-grafische API.

De gebruikersomgeving is verdeeld in twee componenten: Armadillo en Armadillo User Shell. Armadillo is een draagbare applicatie die op elk Flutter-compatibel platform kan draaien, inclusief Android en iOS (er is een demoversie als APK-bestand voor Android beschikbaar, waarmee je de interface kunt testen zonder Fuchsia te installeren). Armadillo User Shell is een interface bovenop de Armadillo-applicatie die tools biedt voor interactie met Fuchsia-services via FIDL-interfaces en voor het organiseren van de gebruikersomgeving bovenop de systeemcomponenten van Fuchsia OS.

Voor applicatie-ontwikkeling, ondersteuning voor C/C++, Dart is voorzien, Rust is ook toegestaan ​​in de systeemcomponenten, in de netwerkstack: Ve en in het Python-taalbouwsysteem.

Het opstartproces gebruikt de systeembeheerder, die appmgr omvat om de initiële softwareomgeving te creëren, sysmgr om de opstartomgeving te creëren en basemgr om de gebruikersomgeving te configureren en de login te organiseren.

Om de veiligheid te waarborgen, wordt een geavanceerd sandbox-isolatiesysteem voorgesteld, waarin nieuwe processen geen toegang hebben tot kernelobjecten, geen geheugen kunnen toewijzen en geen code kunnen uitvoeren. Een naamruimtesysteem wordt gebruikt om toegang te krijgen tot resources en de beschikbare machtigingen te bepalen. Het platform biedt een raamwerk voor het creëren van componenten, dit zijn programma's die in hun eigen sandbox draaien en via IPC met andere componenten kunnen communiceren.


Voeg dit toe als voorkeursbron in Google.