Initiative zur Befreiung der Browser-Engine Servo von der Bindung an Mozilla SpiderMonkey

Die Entwickler des Browser-Engines Servo haben die Initiative zur Modularisierung vorgestellt und wollen von der Nutzung der nieder-level APIs des JavaScript-Engines SpiderMonkey, das von Mozilla entwickelt wird und in Servo für die Unterstützung von JavaScript und WebAssembly verwendet wird, absehen. In Zukunft plant Servo, auf eine höherstufige API und eine Abstraktionsschicht für die Interaktion mit JavaScript-Engines umzusteigen, was es ermöglichen wird, unsichere direkte Aufrufe zu SpiderMonkey-Code zu vermeiden, die in unsafe-Blöcken ausgeführt werden. Langfristig wird diese Änderung eine Abkehr von der strikten Bindung an SpiderMonkey ermöglichen und die Unterstützung anderer JavaScript- und WebAssembly-Engines, wie der V8-Engine, die in Chrome verwendet wird, sicherstellen.

Das Servo-Projekt ist in der Programmiersprache Rust geschrieben und zeichnet sich durch die Unterstützung des Multithread-Renderings von Webseiten, die Parallelisierung von DOM (Document Object Model)-Operationen und die Nutzung von Rusts Mechanismen für sicheres Programmieren aus. Ursprünglich wurde das Servo-Projekt von Mozilla entwickelt, hat aber später unter die Ägide der Linux Foundation gewechselt. Servo wurde von Anfang an mit der Unterstützung zur Aufteilung von DOM-Code und Rendering in kleinere Teilaufgaben entwickelt, die parallel ausgeführt werden können und die Ressourcen moderner Mehrkern-CPUs effizienter nutzen. In Firefox sind bereits einige Teile von Servo integriert, wie der Multithread-CSS-Engine und das Rendering-System WebRender.

Quelle: opennet.ru

60GB SSD 8Gb DDR4