Les informations sur le développement viennent de sortir que les développeurs de Google effectuent et c'est qu'ils travaillent déjà à pouvoir migrer le navigateur Chrome vers Fuchsia OS.
Ya que Fuchsia fournit déjà un moteur de navigateur basé sur la base de code Chromium utilisée pour exécuter des applications Web autonomes, les développeurs mentionnent que Chrome n'est pas encore disponible en tant que produit autonome complet pour Fuchsia, car la plate-forme a été principalement développée pour l'IoT et les appareils grand public comme Nest Hub.
Mais cette situation et en retour, puisque le développement des capacités de Fuchsia a déjà commencé, visait à l'utiliser comme plate-forme de bureau. Cela inclut un ensemble de modifications qui permettent de pousser un navigateur Chrome complet vers Fuchsia.
Dans les plans qui se font connaître, mentionnez que déjà en Fuchsia ils préparent la version initiale de Chrome pour le lancement de Chrome 94 (qui devrait sortir le 21 septembre).
Pour la partie des travaux de migration, les développeurs mentionnent que cela se fait progressivement, puisqu'au départ, il est possible de construire une version simplifiée dans laquelle l'implémentation de certaines fonctionnalités est remplacée par des stubs.
Au fur et à mesure que la portabilité progresse, les stubs sont remplacés par des versions fonctionnelles du code spécifique au Fuchsia. Par exemple, Chrome adapte la barre d'état système pour Fuchsia, télécharge des fichiers, Click To Call, travaille avec des supports amovibles, synchronise, répertoires personnalisés, applications PWA, affiche les informations de charge de la mémoire et du processeur et importe les paramètres d'autres navigateurs.
Rappelons que Fuchsia OS est développé par Google depuis 2016, en tenant compte des lacunes dans le domaine de la mise à l'échelle et de la sécurité sur la plate-forme Android. Le système est basé sur le micronoyau Zircon, qui est basé sur les développements du projet LK, étendu pour une utilisation dans diverses classes d'appareils, y compris les smartphones et les ordinateurs personnels.
Le micronoyau Zircon il se caractérise par l'extension de LK avec prise en charge des processus et des bibliothèques partagées, niveau utilisateur, gestion des objets et modèle de sécurité basé sur les capacités. Les pilotes sont implémentés en tant que bibliothèques d'espace utilisateur dynamiques chargées par le processus devhost et gérées par le gestionnaire de périphériques devmg.
Pour Fuchsia a développé sa propre interface graphique écrite en langage Dart, en utilisant le framework Flutter, en plus du projet développant également le framework Peridot UI, le gestionnaire de packages Fargo, la bibliothèque standard libc, le système de rendu Escher, le pilote Magma Vulkan, le gestionnaire composite Scenic, MinFS , MemFS, ThinFS (FAT en langage Go), et les systèmes de fichiers Blobfs, ainsi que les partitions FVM.
Pour le développement d'applications, Le support C/C++ est disponible (merci à la libc), Dart fournit également et Rust il est également autorisé dans les composants du système, dans la pile réseau GO et dans le système de construction la langue python.
L'administrateur système est utilisé pour le processus de démarrage, qui comprend appmgr qui permet de créer l'environnement logiciel initial, sysmgr pour créer l'environnement de démarrage et basemgr pour configurer l'environnement utilisateur et organiser la connexion.
De la part du la sécurité est proposée un système d'isolation sandbox avancé, dans lequel les nouveaux processus n'ont pas accès aux objets du noyau, la mémoire ne peut pas être allouée et le code ne peut pas être exécuté, et un système d'espace de noms est utilisé pour accéder aux ressources déterminées par les autorisations disponibles.
La plate-forme fournit un cadre pour la création de composants, qui sont des programmes qui s'exécutent dans votre bac à sable et qui peuvent interagir avec d'autres composants via IPC.
Enfin si vous souhaitez en savoir plus, vous pouvez vérifier les détails dans le message d'origine à le lien suivant.