Prozesstrennung als Stabilitäts- und Performanceboost

Firefox 53 – Project Quantum feiert Premiere

Firefox 53 – Project Quantum feiert Premiere

Prozesstrennung als Stabilitäts- und Performanceboost

Firefox 53 – Project Quantum feiert Premiere


Mit der gestern veröffentlichten Version 53 von Firefox halten erstmals Elemente aus dem Project Quantum Einzug in Mozillas Browser. Der sogenannte Graphics Compositor, Kernstück der Browser-Engine, läuft ab sofort in einem separaten, vom Firefox-Hauptprozess getrennten Prozess.\r\n

Die aktuelle Version 53 von Firefox hat einige einschneidende Veränderungen im Gepäck. So bleiben Nutzer von älteren Betriebssystemen bei dieser Version außen vor. Anwender, die noch Windows und Vista sowie 32-Bit-Versionen von Mac OS X im Einsatz haben, können Version 53 nicht installieren (hier gibt’s alle Infos zum Plattform-Support). Sicherheitsupdates für diese OS erhält nur noch die ESR-Version von Firefox 52.

Project Quantum – Prozesstrennung als Stabilitäts- und Performanceboost

Die gewichtigste Neuerung ist jedoch die Tatsache, dass Mozillas erstmals Teile aus dem vor einem halben Jahr angekündigten Project Quantum in die neue Firefox-Version eingebaut hat. Hinter Project Quantum steckt Mozillas neue Rendering-Engine, die auf Mozillas eigens entwickelter Programmiersprache Rust basiert. Sie soll die Performance auf Desktop- und Mobilgeräten „erheblich“ verbessern.

Mit dem sogenannten Quantum Compositor soll vor allem die Grafikstabilität durch den Einsatz der sogenannten Compositor Process Separation erhöhen. Dabei läuft das Kernstück der Browser-Engine, der sogenannte Graphics Compositor, ab sofort in einem separaten Prozess – getrennt vom Firefox-Hauptprozess. Der Compositor soll dabei ähnlich den Ebenen in Photoshop arbeiten: Alle im Browser errechneten Grafik-Ebenen werden in einem Bild vereint („flattening“). Entscheidend für die erhöhte Geschwindigkeit ist aber vor allem, dass der Quantum Compositor über den Grafikprozessor läuft und nicht über den Hauptprozessor. Auch Crashes sollen so verringert werden: Stürzt der Graphics Compositor ab, hängt sich dank Prozesstrennung nicht der gesamte Firefox auf. Mozilla Developer Advocate Dan Callahan beschreibt die Funktionsweise des Quantum Compositor so:

Compositors are responsible for flattening all of the various elements on a webpage into a single image to be drawn on the screen. Firefox can now run its compositor in a completely separate process from the main Firefox program, which means that Firefox will keep running even if the compositor crashes—it can simply restart it.

Laut Firefox-Entwickler Anthony Hughes gab es in Praxistests danke des Quantum Compositor zehn Prozent weniger Abstürze. Weitere Erläuterungen zu den technischen Hintergründen sind im Blog-Post von Anthony Hughes nachzulesen.

Lesen Sie auch „Firefox Developer Edition 54 mit vielen Neuerungen erschienen

Neue WebExtension-Features

WebExtensions sind Browser-Add-ons für Firefox, Chrome, Opera und Edge. Mit Firefox 53 werden WebExtensions nun auch mit diversen, bereits verfügbaren Chrome-APIs kompatibel sein, als da wären:

  • Das browsingData API für das Löschen des Browser-Cache, der Cookies, des Verlaufs, der Downloads, etc.
  • Das identity API ermöglicht Add-ons für den Request von OAuth2-Tokens (mit Erlaubnis des Nutzers) und soll das Sign-in mit Add-ons vereinfachen.
  • Das storage.sync API ermöglicht das Speichern von Nutzereinstellungen in Firefox Sync.
  • Das webRequest.onBeforeRequest API kann ab sofort auf den Request Body zugreifen, zusätzlich zu den Headers.
  • Das contextMenus API unterstützt jetzt das Hinzufügen von Menüs zu Browser-und Page-Actions.

Neue CSS-Features: positioned CSS Masks und Flow-Root

Firefox 53 unterstützt die sogenannten positioned CSS Masks. Sie ermöglichen das teilweise oder komplette Ausblenden von visuellen Elementen auf einer Webpage. Erreicht wird dies, indem Bilder oder Grafiken mit vordefinierten Maskierungen überlagert werden. Je nachdem, wie diese Maskierungen konfiguriert werden, ist festgelegt, welche Teile des Bildes sichtbar sind. Zahlreiche Properties des Maskierung funktionieren ähnlich wie die äquivalenten background-*Properties.

Außerdem unterstützt Firefox den neuen display: flow-root-Value, mit dem sich ähnliche Ergebnisse wie mit clearfix erreichen lassen. Allerdings wird bei Flow-Root ein Standard-CSS-Wert statt eines Pseudo-Elements oder anderen Hacks eingesetzt.

Ausführliche Infos für Entwickler hat das Firefox-Team im Post „Firefox 53 for Developers“ zusammengefasst.

Weitere Firefox-Neuerungen

Darüber hinaus spendierten die Mozilla-Entwickler dem Firefox 53 zwei neue Kompakt-Themes namens „Compact Light“ und „Compact Dark“ tragen. Und: Neben diversen anderen UI-Verbesserungen erhielten die Standard <video> und <audio> Controls einen neuen Look.

Die kompletten Release Notes enthalten alle Änderungen, Neuheiten und Bugfixes. Die diversen Firefox-53-Versionen gibt es als Download bei Mozilla. Windows-Nutzer können ab sofort bei der Installation zwischen der 32-Bit und der 64-Bit-Version wählen.

 

 

 

Christoph Ebert, Redakteur


Weitere Artikel zu diesem Thema