Dans le cadre du projet Verso, un nouveau navigateur web est en cours de développement, basé sur le moteur Servo. Le code de Verso, tout comme celui de Servo, est écrit en Rust et distribué sous les licences MIT et Apache 2.0. Le navigateur est encore à un stade précoce de développement et, en plus des outils fournis par le moteur Servo pour le traitement du contenu web, propose une interface utilisateur simple. Des versions prêtes pour les tests sont publiées pour Linux (flatpak), Windows et macOS.
Le rendu dans Verso s'effectue grâce à un gestionnaire de composition propriétaire utilisant OpenGL et interagissant avec Servo par le biais des moyens de communication fournis par le framework Constellation. Actuellement, le travail se concentre sur la mise en œuvre du support d'une interface multi-fenêtres, utilisant différents contextes de rendu dans une seule instance du moteur Servo. Parmi les futurs développements du projet, il est prévu d'implémenter un mode multiprocessus, une isolation en sandbox pour toutes les plateformes et d'exploiter les fonctionnalités du framework multimédia Gstreamer.

Le projet Servo a été initialement développé par Mozilla, mais a ensuite été pris sous l'égide de la Linux Foundation. Le moteur se distingue par son support du rendu web multithread, le parallélisme des opérations sur le DOM (Document Object Model) et l'utilisation des mécanismes de programmation sûre fournis par le langage Rust. Servo a été conçu dès le départ pour prendre en charge la fragmentation du code DOM et le rendu en sous-tâches plus petites, qui peuvent être exécutées en parallèle et utiliser plus efficacement les ressources des CPU multicœurs. Des parties de Servo, telles que le moteur CSS multithread et le système de rendu WebRender, sont déjà intégrées dans Firefox.
Parmi les projets liés à Servo, on peut également mentionner la collaboration entre les développeurs de Servo et le système d'exploitation Redox, qui est développé en Rust et utilise le concept de micro-noyau. Il est rapporté que les équipes de Servo et Redox ont soumis une candidature conjointe pour obtenir une subvention NGI afin de porter le moteur JavaScript SpiderMonkey et Servo WebRender, améliorer les outils pour la cross-compilation de Servo et rédiger en Rust une pile pour le traitement des polices. Le rapport mentionne également l'inclusion dans Redox d'un serveur HTTP avec support HTTPS, écrit en Rust.
Source : opennet.ru
