I componenti necessari per la compilazione del browser Chrome per il sistema operativo Fuchsia sono stati rimossi dal repository del progetto Chromium. Si osserva che il supporto per Fuchsia in Chrome era un esperimento che ora è stato interrotto. È stato specificato che la causa della cessazione del supporto è la chiusura del programma di sviluppo di Fuchsia per workstation. Il supporto per i componenti browser WebEngine e WebRunner per Fuchsia continuerà, ma non sarà fornito un browser Chrome completo e autonomo. È probabile che lo sviluppo futuro di Fuchsia si concentri solo su dispositivi consumer, come sistemi di automazione domestica, cornici digitali intelligenti e altoparlanti.
Fuchsia si basa su un microkernel chiamato Zircon, sviluppato a partire dalle fondamenta del progetto LK, ampliato per l'uso su diverse classi di dispositivi, tra cui smartphone e computer personali. Zircon estende LK con il supporto per processi e librerie condivise, livello utente, sistema di gestione degli oggetti e un modello di sicurezza basato su capacitivity. I driver sono implementati come librerie dinamiche eseguite nello spazio utente, caricate dal processo devhost e gestite dal gestore dei dispositivi (devmg, Device Manager).
Per Fuchsia è stato preparato un’interfaccia grafica proprietaria, scritta in linguaggio Dart utilizzando il framework Flutter. Il progetto include anche lo sviluppo del framework Peridot per la creazione di interfacce utente, del gestore pacchetti Fargo, della libreria standard libc, del sistema di rendering Escher, del driver Vulkan Magma, del gestore composito Scenic, dei file system MinFS, MemFS, ThinFS (FAT in linguaggio Go) e Blobfs, così come del gestore di partizioni FVM. Per lo sviluppo di applicazioni è fornito supporto per i linguaggi C/C++, Dart; nei componenti di sistema è consentito l’uso di Rust, nello stack di rete di Go e nel sistema di build il linguaggio Python.
Durante il processo di avvio, viene utilizzato un gestore di sistema che include appmgr per creare l'ambiente di programmazione iniziale, sysmgr per formare l'ambiente di avvio e basemgr per configurare l'ambiente utente e organizzare l'accesso al sistema. Per garantire la sicurezza, è previsto un avanzato sistema di isolamento sandbox, in cui i nuovi processi non hanno accesso agli oggetti del kernel, non possono allocare memoria e non possono eseguire codice, mentre per accedere alle risorse viene applicato un sistema di spazi dei nomi che definisce i diritti di accesso disponibili. La piattaforma offre un framework per la creazione di componenti, che sono programmi eseguiti nel proprio sandbox e che possono interagire con altri componenti tramite IPC.
Fonte: opennet.ru
