Mozilla hat eine Betaversion von Firefox 15 veröffentlicht. Im Rahmen des Projekts "Memshrink" hat Mozilla die Speichernutzung von Erweiterungen deutlich optimiert, was Firefox auch schneller machen soll. Zudem gibt es neue Entwicklerwerkzeuge und die Möglichkeit, PDFs ohne Plugins anzuzeigen.
Seit geraumer Zeit arbeitet Mozilla mit dem Projekt "Memshrink" daran, die Speichernutzung von Firefox zu verbessern. Der große Speicherhunger hat Firefox viel Kritik eingebracht, belegte der Browser doch gern mal mehr als 1 GByte Speicher. Das macht nicht nur den Browser selbst langsam, sondern kann den ganzen Rechner ausbremsen, da dieser dadurch viel swappen muss.
Firefox 15 macht in Bezug auf die Speichernutzung nun große Fortschritte, vor allem wenn der Browser lange läuft oder Erweiterungen verwendet werden. Mozilla hat sich dabei vor allem um Erweiterungen gekümmert, die "Speicher leaken", also im Laufe der Zeit immer mehr Speicher belegen, da sie ungenutzte Speicherbereiche nicht korrekt wieder freigeben. Dieses Verhalten soll Firefox 15 weitgehend abstellen, ohne dass die Erweiterungen angepasst werden müssen. Zuvor hatte Mozilla diverse ähnliche Fehler in Firefox selbst beseitigt, womit die Erweiterungen aber zum größten Problem wurden.
Viele Erweiterungen leaken SpeicherEntsprechende Probleme verursachen nicht nur exotische Erweiterungen. Mozilla hat solche Probleme in populären Erweiterungen wie Adblock Plus, Video Downloadhelper, Greasemonkey und Firebug ausgemacht, in sehr kleinen wie It's All Text und Image Zoom sowie in denen großer Unternehmen wie McAfees Siteadvisor und der Yahoo-Toolbar. Zwar wurden mittlerweile die meisten dieser Erweiterungen korrigiert, es zeigt sich aber, dass das Problem weit verbreitet ist. In 90 Prozent der Fälle sind sogenannte Zombie Compartments für die steigende Speicherbelegung verantwortlich.
Die Folgen der enormen Speichernutzung bekommen Nutzer auf unterschiedliche Art und Weise zu spüren: Lange Aussetzer, die bei der Garbage Collection und Cycle Collection entstehen, Verzögerungen bei Standardoperationen wie dem Scrollen und Wechseln von Tabs, extreme Einbrüche in der Arbeitsgeschwindigkeit des Systems durch die Auslagerung von Speicherbereichen auf die Festplatte (Swapping) und Abstürze, wenn einem System der freie Speicher ausgeht, vor allem auf Windows- und ARM-Systemen.
Um gegen dieses Problem vorzugehen, war es aber zunächst notwendig Werkzeuge zu schaffen, mit denen sich die Verursacher der hohen Speicherauslastung ermitteln ließen. Erste solche Werkzeuge wurden mit Firefox 4 eingeführt, ein weiterer wichtiger Schritt erfolgte mit Firefox 11, so dass mehr Entwickler und auch Nutzer wichtige Hinweise liefern konnten, um das Problem einzugrenzen und anzugehen.
Im ersten Schritt wurden mehrere Dutzend Erweiterungen korrigiert, doch es gibt viel mehr Firefox-Erweiterungen, die zudem nicht alle auf Mozillas AMO-Seite gehostet werden. Daher hat sich Mozilla entschlossen, eine allgemeine Lösung für das Problem in Firefox zu integrieren. Am häufigsten entstehen die sogenannten "Zombie Compartments", wenn Referenzen zur DOM-Strukturen in einer Website erhalten bleiben, nachdem diese bereits geschlossen wurde. Firefox 15 kann dieses Verhalten erkennen und die entsprechenden Referenzen löschen.
Daten belegen deutliche VerbesserungDie Idee ließ sich einfacher als zunächst gedacht umsetzen und die Telemetriedaten von Firefox zeigen einen deutlichen Rückgang sogenannter "Ghost Windows" bei Nutzern der Firefox Nigthly Builds, seitdem der entsprechende Patch integriert wurde. Das Auftreten von Ghost Windows korreliert stark mit dem Auftreten von Zombie Compartments.
Mozilla-Entwickler Nicholas Nethercote hat sich angeschaut, wie sich die Änderungen im konkreten Beispiel mit McAfees SiteAdvisor 3.4.1 auswirken. Via Membench hat er die Belegung des physischen Speichers durch Firefox beim automatischen Öffnen von 150 Websites in 150 Tabs gemessen, so wie ihn Windows 7 angibt. Das Ergebnis: Mit 150 offenen Tabs belegte Firefox 14 mit der Erweiterung 1.730 MByte Speicher, bei Firefox 15 waren es 1.793 MByte. Der entscheidende Unterschied wird aber erst nach dem Schließen der 150 Tabs sichtbar: Bei Firefox 14 sank der Wert nur auf 1.531 MByte, bei Firefox 15 aber auf 374 MByte. Diverse Nutzer bestätigen ähnliche Erfahrungen.
Native PDF-UnterstützungNaben der optimierten Speichernutzung bietet Firefox 15 eine native PDF-Unterstützung, die auf pdf.js basiert: Die Javascript-Bibliothek wandelt PDF-Dateien per Javascript um, so dass der Browser sie direkt anzeigen kann.
Für Webentwickler interessant sein dürfte der in Firefox 15 integrierte Javascript-Debugger, der nur minimal negative Auswirkungen auf die Geschwindigkeit von Javascript-Anwendungen haben soll. Der Javascript-Debugger kann dabei auch über ein lokales Netzwerk genutzt werden um Apps auf anderen Geräten, beispielsweise einem Android-Smartphone, mit Firefox zu untersuchen.
Zudem stehen eine neue Layout-Ansicht und die Responsive-View zur Verfügung. Der von Paul Rouget entwickelte Responsive Mode kann über das Webentwickler-Menü von Firefox aufgerufen werden und ermöglicht es, die Größe einer Website beliebig zu verändern. Dabei zeigt Firefox die Größe in Pixeln an und ermöglicht es, auch gezielt bestimmte Auflösungen anzugeben. Die Darstellung der Website wird an die zur Verfügung stehende Fläche dynamisch angepasst, so dass Entwickler leicht testen können, wie ihre Website bei kleineren Auflösungen aussieht.
Die neue Layout-View ist Teil des Inspectors, der ebenfalls über das Webentwickler-Menü aufgerufen wird. Er zeigt eine visuelle Darstellung der Größe eines Elements der Webseite an, so dass leicht erkennbar ist, wie sich die Gesamtgröße aus Rändern, Abständen und dem eigentlichen Element zusammensetzt.
Im Rahmen der Implementierung des Performance API wurde zudem die Zeitmessung von Firefox verbessert, so dass der Browser nun Zeiten auf eine Tausendstelsekunde genau messen kann.
Auch der Javascript-JIT-Compiler Jaegermonkey wurde weiter verbessert, was die Ausführung von Javascript weiter beschleunigen soll.
Bessere HTML5-UnterstützungÜber HTML5-Audio-Tag kann Firefox 15 auch Dateien im Opus-Format abspielen, das kurz davor ist, von der IETF als Internetstandard verabschiedet zu werden.
Auch wurde die CSS-Eigenschaft "word-break" implementiert. Damit kann festgelegt werden, ob ein Zeilenumbruch in Texten zugelassen wird.
Im Zusammenhang mit WebGL unterstützt Firefox 15 komprimierte Texturen und experimentell kann WebGL auch in der Androidversion des Browsers genutzt werden.
Die Beta von Firefox 15 steht ab sofort unter mozilla.org/firefox/beta für Windows Linux und Mac OS X zum Download bereit.
Quelle:
www.golem.de