Applications
Le projet Electrolysis vise à isoler plusieurs
processus dans Firefox pour augmenter ses performances et sa sécurité.
Un travail en cours depuis plusieurs années, mais seulement disponible
dans le canal Developer. Firefox 48 marquera un premier vrai pas de
cette technologie vers le grand public.
Electrolysis est presque considéré comme une arlésienne par les aficionados de Firefox : évoquée depuis des années,
la technologie n’a jamais été diffusée auprès des utilisateurs. Son
absence se fait d’autant plus remarquer que le navigateur est
actuellement le seul à garder une structure monolithique, dans laquelle
un seul processus s’occupe de l’ensemble des opérations. Chrome et Edge,
par exemple, isolent chaque onglet dans un processus séparé.Un travail de longue haleine
Cette approche multiprocessus a principalement deux avantages et un défaut. D’abord, elle augmente la sécurité générale en interdisant certaines opérations par les sites. Chaque onglet ayant son propre espace mémoire isolé, certains mécanismes deviennent impossibles à exploiter. Sous réserve bien entendu qu’une faille ne permette pas de contourner cette isolation. Ensuite, les processus multiples tirent mieux parti des cœurs d’exécution du processeur. Le plantage d’un onglet ne doit pas entrainer le reste du navigateur dans la chute. Cependant, l’ensemble se fait au détriment de la consommation de mémoire vive, qui augmente mécaniquement.Mais Firefox a été conçu comme un programme monolithique. Changer de telles fondations casse logiquement le fonctionnement profond du navigateur. Voilà pourquoi Mozilla a pris son temps jusqu’à présent. Electrolysis, baptisé E10S, peut néanmoins se tester depuis plusieurs mois dans l’édition Developer de Firefox, dans lequel il est activé par défaut. Il n’était auparavant disponible que dans une branche séparée de développement, accessible uniquement depuis le serveur FTP de l’éditeur.
Electrolysis chez 1 % des utilisateurs avec Firefox 48
Firefox 48 est la première version à propulser véritablement E10S vers les utilisateurs, la bêta venant tout juste de paraître. Le développeur Asa Dotzler explique dans un billet de blog qu’il s’agira dans tous les cas d’un lancement en deux temps. Firefox 48 n’activera en effet Electrolysis que pour 1 % de la population. Selon Dotzler, cela permettra à Mozilla de doubler le nombre d’utilisateurs qui se serviront d’Electrolysis (en comptant les testeurs habituels).La suite dépendra des remontées : « Si nous rencontrons des problèmes, nous pouvons ralentir la diffusion, la mettre en pause ou même désactiver E10S pour ceux qui l’ont eu » avertit Asa Dotzler. Cet avertissement souligne un certain inconnu pour Mozilla. L’éditeur sait qu’Electrolysis peut entrainer des problèmes, parmi lesquels des chutes de performances dans certains cas, et surtout une cassure de la compatibilité avec des extensions.
Le développeur confirme en tout cas qu’E10S est certainement le plus gros changement effectué dans Firefox depuis les débuts du navigateur. Idéalement, si tout se passe bien pendant l’utilisation de Firefox 48 (surtout à l’arrivée de la version finale), c’est la mouture 49 qui marquera la généralisation de la technologie. On rappellera en outre que la version finale de Firefox 47 est disponible depuis peu.
Source.: