Google arbeitet an einem neuen Be­triebs­sys­tem: Mit Fuchsia OS kehrt der Tech­no­lo­gie­kon­zern der Linux-Ar­chi­tek­tur den Rücken und setzt statt­des­sen auf den selbst­ent­wi­ckel­ten Micro-Kernel Zircon. Fuchsia könnte nicht nur das Desktop-Be­triebs­sys­tem Chrome OS ablösen, sondern auch das auf Mo­bil­ge­rä­te aus­ge­leg­te Android. Und das, obwohl sich Android heute quasi kon­kur­renz­los auf dem Markt etabliert hat.

Ist Google Fuchsia das Be­triebs­sys­tem der Zukunft? Wir haben das Projekt unter die Lupe genommen.

Was ist Google Fuchsia?

Fuchsia ist nicht nur eine Farbe zwischen Rot und Blau, sondern auch der Name eines modularen, rech­te­ba­sier­ten Echtzeit-Be­triebs­sys­tems, das Google seit 2016 vor den Augen der Öf­fent­lich­keit ent­wi­ckelt. Das System ist u. a. in C, C++, Dart, Go und Rust ge­schrie­ben und soll auf modernen 64-bit-Intel-ARM-Pro­zes­so­ren laufen.

Fakt

Bei einem Echtzeit-Be­triebs­sys­tem (Real-Time Operating System, RTOS) handelt es sich um ein Be­triebs­sys­tem, das in der Lage ist, au­gen­blick­lich bzw. in einer vorher de­fi­nier­ten Zeit­span­ne auf Er­eig­nis­se zu reagieren und Ver­ar­bei­tungs­er­geb­nis­se zu liefern.

Der Quellcode von Fuchsia OS steht unter Open-Source-Lizenz (u. a. BSD-, MIT-und Apache-Lizenz) und kann in Googles öf­fent­li­chen Git-Re­po­si­to­rys von jedermann ein­ge­se­hen und her­un­ter­ge­la­den werden. In­ter­es­sier­te finden hier auch eine um­fang­rei­che Do­ku­men­ta­ti­on des Projekts.

Der Do­ku­men­ta­ti­on zufolge ist Fuchsia OS glei­cher­ma­ßen für Smart­phones, Tablets, Laptops und Desktop-Computer geeignet. Mit Armadillo steht seit Mai 2017 ein auf Touch-Bedienung op­ti­mier­tes User-Interface (UI) mit gra­fi­scher Be­nut­zer­ober­flä­che zur Verfügung. Ein Desktop-UI für Fuchsia OS ent­wi­ckelt Google unter dem Ar­beits­ti­tel Capybara. Seitdem mehren sich die Gerüchte, Google arbeite an einem Ersatz für das nahezu kon­kur­renz­lo­se Android.

Wie funk­tio­niert Fuchsia OS?

Bei der Ent­wick­lung von Fuchsia OS be­schrei­tet Google gänzlich neue Wege. Man könnte sagen, der Konzern hat aus ver­gan­ge­nen Fehlern gelernt – ins­be­son­de­re in Bezug auf Ein­schrän­kun­gen und Probleme bei der Ak­tua­li­sie­rung und Mo­di­fi­ka­ti­on von Android und Chrome OS. Der zentrale Un­ter­schied zu den eta­blier­ten Google-Be­triebs­sys­te­men: Fuchsia OS ist von Grund auf modular aufgebaut. Dies zeigt sich nicht nur in einer modularen Sys­tem­ar­chi­tek­tur, sondern auch in einem völlig neuen Ver­ständ­nis davon, was eine Anwendung ist.

Modulares An­wen­dungs­de­sign

Google Fuchsia liegt ein modulares Design zugrunde, das mit dem Konzept der App bricht. Software-Einheiten werden als Packages (Pakete) be­zeich­net. Bei einem Paket handelt es sich um eine Auswahl an Dateien – u. a. Metadaten, Manifest-Dateien und aus­führ­ba­re Elemente. Letztere werden in der Google-Ter­mi­no­lo­gie Com­pon­ents (Kom­po­nen­ten) genannt.

Fuchsia-Kom­po­nen­ten kommen dem, was wir heute als Apps be­zeich­nen, am nächsten. Jede Kom­po­nen­te erfüllt eine bestimmte Aufgabe und kann mit anderen Kom­po­nen­ten kom­bi­niert werden, um komplexe An­wen­dun­gen zu er­mög­li­chen. Zu den Be­stand­tei­len einer Kom­po­nen­te zählen eine Manifest-Datei sowie der zu­ge­hö­ri­ge Code. Kom­po­nen­ten laufen stets in einer eigenen Sandbox, greifen über Na­mens­räu­me auf Objekte zu und ver­öf­fent­li­chen diese über ein Ex­port­ver­zeich­nis. Bei Fuchsia OS stehen vor allem zwei Arten von Kom­po­nen­ten im Vor­der­grund: Models (Module) und Agents (Agenten).

Kom­po­nen­ten in der Rolle eines Agenten arbeiten im Hin­ter­grund und stellen Dienste für andere Kom­po­nen­ten bereit. Der Aufruf eines Agenten erfolgt entweder durch eine andere Kom­po­nen­te oder durch das System – bei­spiels­wei­se als Antwort auf bestimmte Trigger wie Push-Be­nach­rich­ti­gun­gen oder andere Vorgänge auf dem Bild­schirm.

Bei Modulen handelt es sich um Kom­po­nen­ten mit Be­nut­zer­schnitt­stel­le, die für den Nutzer sichtbar im Vor­der­grund aus­ge­führt werden. Jedes Modul innerhalb des Be­triebs­sys­tems wurde für eine bestimmte Aufgabe ent­wi­ckelt und ist ent­spre­chend ge­kenn­zeich­net, sodass es au­to­ma­tisch auf­ge­ru­fen werden kann, sobald es benötigt wird. Dies erfolgt anhand der Funktion des Moduls, die sich mithilfe so­ge­nann­ter Verbs (Verben) und Nouns (Nomen) be­schrei­ben lässt.

Jedes Modul umfasst eine Liste von Verben, die angeben, welche Arbeit das Modul erledigen kann, sowie eine Liste von Nomen, die für Entitäten stehen, mit denen ge­ar­bei­tet wird. Der Begriff Entity umfasst gemäß der Google-Ter­mi­no­lo­gie alle eindeutig iden­ti­fi­zier­ba­ren Personen, Orte, Dinge, Er­eig­nis­se oder Konzepte, die als struk­tu­rier­te Da­ten­ob­jek­te vorliegen, auf die verwiesen werden kann und die sich abrufen, prä­sen­tie­ren, ma­ni­pu­lie­ren oder frei­ge­ge­ben lassen.

In der Praxis gestaltet sich die Arbeit mit dem Echt­zeit­be­triebs­sys­tem Fuchsia somit fol­gen­der­ma­ßen: Sobald ein Nutzer eine Aktion ausführt, ermittelt Fuchsia OS au­to­ma­tisch das passende Modul für die Aufgabe. Dabei wird die ge­wünsch­te Aktion in eine Kom­bi­na­ti­on aus Verb und Nomen übersetzt. Das System ruft daraufhin eine Liste aller Module ab, die das ge­wünsch­te Verb un­ter­stüt­zen und filtert im nächsten Schritt nach dem Modul, das auch mit dem ge­wünsch­ten Nomen umgehen kann.

Verwandte Module lassen sich zu so­ge­nann­ten Storys grup­pie­ren. Storys kom­bi­nie­ren ver­schie­de­ne Aktionen und Aufgaben nach aktuellen An­for­de­run­gen und sollen Benutzern er­mög­li­chen, komplexe An­wen­dun­gen nach ihren eigenen Vor­stel­lun­gen und An­for­de­run­gen zu­sam­men­zu­stel­len.

Fazit

Mit dem modularen An­wen­dungs­kon­zept von Fuchsia OS verlagert Google den Schwer­punkt von Apps zu Aktionen und Inhalten. Statt wie bei klas­si­schen Be­triebs­sys­te­men von einer aktuell ver­wen­de­ten App werden Aufgaben bei Fuchsia von einer Gruppe von Kom­po­nen­ten in so­ge­nann­ten Storys erledigt, die über Module auf aktuell benötigte Res­sour­cen zugreifen.

Die folgende Grafik ver­deut­licht das modulare Konzept, das der Ent­wick­lung von An­wen­dun­gen für Fuchsia OS zugrunde liegt.

Modulare Sys­tem­ar­chi­tek­tur

Ein modularer Ansatz liegt auch der System-Ar­chi­tek­tur von Fuchsia OS zugrunde. Das Be­triebs­sys­tem umfasst vier mehr oder weniger un­ab­hän­gi­ge Ebenen mit je eigenen Aufgaben: Zircon, Garnet, Peridot und Topaz.

Zircon

Zircon (ehemals Magenta) stellt die Basis des neuen Google-Be­triebs­sys­tems dar, ist streng genommen jedoch kein Teil von Fuchsia OS und könnte prin­zi­pi­ell auch bei anderen Be­triebs­sys­te­men zum Einsatz kommen.

Zircon enthält den Kernel von Fuchsia OS, den Ge­rä­te­ma­na­ger, die meisten Core- und First-Party-Ge­rä­te­trei­ber sowie Low-Level-Sys­tem­bi­blio­the­ken wie libc und launchpad. Darüber hinaus bietet Zircon mit FIDL (Fuchsia Interface De­fi­ni­ti­on Language) ein Protokoll für die In­ter­pro­zess­kom­mu­ni­ka­ti­on. FIDL ist pro­gram­mier­spra­chen­un­ab­hän­gig, verfügt jedoch über An­bin­dun­gen zu populären Pro­gram­mier­spra­chen wie C, C++, Dart, Go und Rust.

Als Basis von Fuchsia OS ver­mit­telt Zircon den Hardware-Zugriff für nach­fol­gen­de Ebenen, erstellt Software-Abs­trak­tio­nen über den gemeinsam genutzten Hardware-Res­sour­cen und dient als Plattform für die hard­ware­na­he Software-Ent­wick­lung (Low-Level). Zircon ist aus dem Projekt Little Kernel (LK) her­vor­ge­gan­gen, das als Boot­loa­der (Start­pro­gramm) für Android fungiert.

Garnet

Garnet ist die erste Fuchsia-spe­zi­fi­sche Sys­tem­ebe­ne, die auf Zircon aufbaut. Hier werden diverse Sys­tem­diens­te auf Ge­rä­te­ebe­ne sowie Netzwerk-, Medien- und Gra­fik­diens­te zur Verfügung gestellt – bei­spiels­wei­se für die Software-In­stal­la­ti­on, für die System-Ad­mi­nis­tra­ti­on und die Kom­mu­ni­ka­ti­on mit anderen Systemen. Garnet enthält u. a. den Grafik-Renderer Escher, das Pa­ket­ver­wal­tungs- und Ak­tua­li­sie­rungs­sys­tem Amber sowie den Text- und Code-Editor Xi.

Peridot

Peridot ist die Be­triebs­sys­tem­ebe­ne von Fuchsia OS, auf der die modularen An­wen­dun­gen (s. o.) verwaltet und nach aktuellen Nut­zer­an­for­de­run­gen zu­sam­men­ge­stellt werden. Kern­kom­po­nen­ten von Peridot sind Ledger und Maxwell.

  • Ledger: Bei Ledger handelt es sich um ein cloud­ba­sier­tes Spei­cher­sys­tem (Dis­tri­bu­ted Storage System), das jeder Fuchsia-Kom­po­nen­te (Module oder Agenten) einen separaten Da­ten­spei­cher zur Verfügung stellt. Dieser wird über ver­schie­de­ne Geräte hinweg syn­chro­ni­siert. Das er­mög­licht es einem Anwender, auf einem Fuchsia-Gerät genau da wei­ter­zu­ma­chen, wo er auf einem anderen Fuchsia-Gerät aufgehört hat. Ledger wird im Google-Account des Anwenders gesichert.
  • Maxwell: Mit Maxwell hat Google eine Kom­po­nen­te in Fuchsia OS in­te­griert, die Anwendern als künst­li­che In­tel­li­genz zur Seite steht. Wie für Fuchsia üblich, ist auch Maxwell modular aufgebaut. Das KI-System besteht aus einer Reihe von Agenten, die die Aktionen des Nutzers sowie die von ihm ver­wen­de­ten Inhalte ana­ly­sie­ren, im Hin­ter­grund passende In­for­ma­tio­nen ermitteln und Vor­schlä­ge an das Be­triebs­sys­tem wei­ter­ge­ben – bei­spiels­wei­se welche Module oder Storys passend zum Nut­zer­ver­hal­ten zum je­wei­li­gen Zeitpunkt geladen werden sollten. Auch der Google-Sprach­as­sis­tent ist Teil der KI-Kom­po­nen­te, der im Rahmen des Fuchsia-Projekts unter dem Codenamen Kronk wei­ter­ent­wi­ckelt wird.
Hinweis

Kronk ist bislang die einzige Kom­po­nen­te von Fuchsia OS, die nicht als Open-Source-Projekt ent­wi­ckelt wird.

Topaz

Topaz ist die System-Ebene von Fuchsia OS, auf der die Anwender mit dem Be­triebs­sys­tem in­ter­agie­ren. Hier werden die Be­nut­zer­schnitt­stel­len der Kom­po­nen­ten dar­ge­stellt, die auf den dar­un­ter­lie­gen­den Ebenen definiert wurden: sowohl die grafische Be­nut­zer­ober­flä­che mit Home-Screen – je nach Gerät Armadillo oder Capybara – als auch die visuellen Frontends der Module. Auch Googles platt­form­über­grei­fen­des Open-Source-Mobil-App-Framework Flutter ist auf dieser System-Ebene in­te­griert. Es ist somit davon aus­zu­ge­hen, dass Anwender mit Fuchsia OS zukünftig auch Apps anderer Systeme ausführen und benutzen können – bei­spiels­wei­se Android- oder iOS-Apps.

Die Vor- und Nachteile von Fuchsia OS im Überblick

Dem modularen Ansatz ent­spre­chend haben die Ent­wick­ler von Fuchsia OS die Sys­tem­ar­chi­tek­tur in einzelne Bereiche mit spe­zi­el­len Aufgaben auf­ge­teilt. Dies sorgt nicht nur für eine bessere Les­bar­keit des Codes, sondern wirkt sich ins­be­son­de­re auf die An­pass­bar­keit und Ak­tua­li­sie­rung des Be­triebs­sys­tems aus. So löst Google u. a. das Update-Problem, mit dem Android seit längerem zu kämpfen hat.

Fakt

Das Android-Ökosystem kämpft mit einem Update-Problem. Ein Blick auf das of­fi­zi­el­le Dis­tri­bu­ti­on-Dashboard zeigt: Neue Versionen des Be­triebs­sys­tems ver­brei­ten sich nur langsam. Ein Problem, das man bei der Kon­kur­renz nicht kennt. Während bei Apple Hard- und Software aus einem Hause kommen und ohne Ver­zö­ge­rung angepasst werden können, muss jedes Android-Update zunächst von den ver­schie­de­nen Hardware-Her­stel­lern umgesetzt werden.

Darüber hinaus kommt die modulare Sys­tem­ar­chi­tek­tur den Ver­triebs­part­nern von Google entgegen, die Fuchsia OS nach eigenen Vor­stel­lun­gen anpassen oder erweitern möchten.

Hardware-Her­stel­ler haben die Mög­lich­keit, einzelne Ebenen des Be­triebs­sys­tems mit eigenen Produkten aus­zu­tau­schen, ohne dass sich dies auf die Funk­tio­na­li­tät der anderen Ebenen auswirkt. Samsung bei­spiel­wei­se könnte Topaz durch eine selbst ent­wi­ckel­te Be­nut­zer­ober­flä­che im Stil von TouchWiz ersetzen. Amazon hätte die Mög­lich­keit, auf Peridot und den Google-Sprach­as­sis­ten­ten zu ver­zich­ten und Fuchsia OS statt­des­sen mit einem AWS-basierten App-Modul inklusive Alexa aus­zu­stat­ten.

In beiden Fällen könnten Ge­rä­te­her­stel­ler in­di­vi­dua­li­sier­te Versionen von Fuchsia OS anbieten, ohne die Funk­tio­nen von Zircon und Garnet sowie die of­fi­zi­el­len Update-Zyklen für diese Ebenen zu be­ein­träch­ti­gen.

Vorteile Nachteile
Die modulare Sys­tem­ar­chi­tek­tur von Fuchsia OS er­mög­licht es Google zukünftig, Si­cher­heits-Updates deutlich schneller aus­zu­rol­len, als dies bei Android der Fall war. Google macht Ledger zu einer Kern­kom­po­nen­te von Fuchsia OS. Ledger steuert die Syn­chro­ni­sa­ti­on von An­wen­dun­gen über ver­schie­de­ne Geräte hinweg und bindet das System damit eng an die Cloud.
Dank des modularen Aufbaus haben Hardware-Her­stel­ler die Mög­lich­keit, einzelne Sys­tem­ebe­nen von Fuchsia OS durch eigene Bausteine zu ersetzen – ohne dass die anderen Ebenen davon in ihrer Funktion be­ein­träch­tigt werden.

Stand der Ent­wick­lung

Fuchsia OS nimmt langsam Gestalt an, ist von der Markt­rei­fe aber noch weit entfernt. Auch ein of­fi­zi­el­les Release-Datum hat Google bisher nicht be­kannt­ge­ge­ben. Erste Hardware-Tests fanden Me­di­en­be­rich­ten zufolge bereits statt. Als erster Ge­rä­te­her­stel­ler, der Fuchsia OS testen konnte, hat Huawei das neue Be­triebs­sys­tem er­folg­reich auf dem Honor Play gebootet. In dem Smart­phone ist der Huawei-Chip Kirin-970 verbaut, der auch in anderen Geräten des Her­stel­lers zum Einsatz kommt – bei­spiels­wei­se im Mate 10, Mate 20 und Mate 20 Pro.

Fuchsia-OS-Demo

Schon im Ent­wick­lungs­sta­di­um kann Fuchsia OS als APK (Android Package) kom­pi­liert und auf Android-Smart­phones und -Tablets in­stal­liert werden. Wie das aussieht, zeigt die Fuchsia-OS-Demo-Version des por­tu­gie­si­schen IT-Studenten Manuel Goulão.

Wer die Fuchsia-OS-Demo im Browser aufruft, gelangt auf eine Website, die den Start­bild­schirm des Be­triebs­sys­tems zeigt. Dieser begrüßt den Benutzer mit einem Hin­ter­grund­bild und der aktuellen Uhrzeit. Darüber hinaus stehen drei Buttons zur Verfügung: ein Button, der die WiFi-Ein­stel­lun­gen öffnet, der Login-Button für re­gis­trier­te Benutzer sowie ein Guest-Login.

Die Demo er­mög­licht bisher nur die Anmeldung als Gast.

An­ge­mel­de­te Benutzer gelangen auf den Home-Screen von Fuchsia OS, der sämtliche In­for­ma­ti­on auf einer Seite anzeigt.

Pro­mi­nen­tes­tes Element auf dem Home-Screen ist ein Fenster in der Bild­schirm­mit­te, das die Google-Such­leis­te, den Google-Sprach­as­sis­ten­ten sowie die auf dem Gerät in­stal­lier­ten An­wen­dun­gen enthält.

Startet man eine App (die die Demo nur als Dummy zur Verfügung stellt), zeigt sich, dass Google sich für eine fens­ter­ba­sier­te Be­nut­zer­ober­flä­che ent­schie­den hat.

Ein Klick auf das Be­nutz­er­bild in der Mitte des Home-Screens öffnet ein Menü mit oft ver­wen­de­ten Ein­stel­lun­gen.

Aus­führ­lich getestet wurde Fuchsia OS auch von den Re­dak­teu­ren von Ars Technica, die die Vorab-Version auf einem Pixelbook zum Laufen gebracht haben. Folgendes Video zeigt das Ergebnis des Tests:

Google Workspace
Ihr Büro in der Tasche
  • Alle Google-Apps zentral und online für flexibles Arbeiten
  • Nutzung von Gmail mit Ihrer Domain von IONOS
  • Inklusive prio­ri­sier­tem Google-Support
Zum Hauptmenü