Mozilla semble prêt à effectuer dans son navigateur afin que les onglets et les IU puissent s’exécuter sur des processus différents. La fonctionnalité a d’abord été en phase de test dans la version Nightly du navigateur.
« Dans les versions actuelles de Firefox sur ordinateur de bureau, le navigateur tout entier fonctionne dans un seul processus du système d'exploitation. En particulier, le JavaScript qui exécute l’interface utilisateur du navigateur (également connu sous le nom "chrome code" fonctionne dans le même processus que le code dans les pages Web (aussi connu comme "contenu" ou "contenu Web" » rappelle Mozilla.
La Fondation explique par la suite que « les futures versions de Firefox vont exécuter l'interface utilisateur du navigateur dans un processus distinct du contenu web. Dans la première itération de cette architecture, tous les onglets du navigateur vont s’exécuter dans le même processus, et l'interface utilisateur du navigateur quant à lui s’exécutera dans un processus différent. Dans les versions futures, nous nous attendons à avoir plus d'un processus de contenu. Le projet qui propose le multiprocessus de Firefox est appelé Electrolysis, et est parfois abrégé par e10s ».
Mozilla précise que les « pages web normales » ne seront pas affectées par le multiprocessus de Firefox. Cependant, « les personnes qui travaillent avec Firefox lui-même ou les développeurs d’extension Firefox en seront affectés si leur code s’appuie sur la faculté à pouvoir accéder au contenu web directement ». Pourquoi ? Parce qu’au lieu d’avoir accès au contenu directement, « chrome JavaScript devra utiliser message manager pour avoir accès à du contenu ». Raison pour laquelle, pour aider à la transition, Mozilla a pensé à développer des outils comme Cross Process Object Wrappers à l’intention des développeurs d’extensions. Un guide est même d’ores et déjà disponible pour les aider à travailler avec le multiprocessus de Firefox.
« Il y a trois raisons principales pour que Firefox puissent exécuter du contenu dans un processus séparé : la performance, la sécurité et la stabilité » explique Mozilla. Concernant la performance, la Fondation explique que l’objectif est de réduire ces moments où le navigateur semble brièvement planté lorsqu’il charge une page lourde, lorsque vous remplissez un formulaire ou même lorsque vous faites défiler une page. « La réactivité semble compter beaucoup plus que le débit sur le web aujourd’hui. Le plus gros de ce travail a été fait dans le cadre du projet Snappy ».
Du côté de la sécurité, Mozilla avance que, dans le multiprocessus de Firefox, les contenus de processus seront dans des sandbox. « Un processus de contenu qui se comporte bien n’aura pas accès au système de fichiers directement ; il devra demander au processus principal d’effectuer cette demande. À ce moment, le processus principal pourra vérifier que la demande est sans danger et qu'elle est logique. Par conséquent, le bac à sable pour les processus de contenu peut être très restrictif. Notre espoir est qu’avec cet arrangement il soit beaucoup plus difficile d’exploiter des failles dans la sécurité de Firefox ».
Pour la stabilité, Mozilla avance « qu’actuellement, un plantage du code exécutant une page web aura des répercussions sur le navigateur tout entier. Avec le multiprocessus de Firefox, seul le processus du contenu qui plante sera terminé »
Source : Mozilla Developper Network (Multiprocess Firefox), Mozilla Developper Network (Motivation)
Et vous ?
Qu'en pensez-vous ?
Mozilla prépare Firefox au multiprocessus dans le cadre du projet Electrolysis
Les onglets et l'IU vont s'exécuter sur des processus différents
Mozilla prépare Firefox au multiprocessus dans le cadre du projet Electrolysis
Les onglets et l'IU vont s'exécuter sur des processus différents
Le , par Stéphane le calme
Une erreur dans cette actualité ? Signalez-nous-la !