Mozillas Quantum Project är en ny motor för Firefox
För några dagar sedan introducerade Mozilla sitt nya projekt, "Quantum", som syftar till att tillhandahålla en ny, särskilt förbättrad motor för webbläsaren Firefox. Den kommer att vara Gecko-baserad och bör ge många förbättringar till Geckos prestanda, tack vare ökad samtidighet och parallellitet, minskad latens och bättre tillförlitlighet som tillhandahålls av Rustkodspråket och dess funktioner.
Quantum är grovt uppdelat i fyra distinkta projekt.
Quantum CSS-projektet kommer att ersätta Geckos CSS-motor med den från Servo. Servo är Geckos långsiktiga ersättare baserad på en modern, högpresterande, parallelliserad arkitektur.
Quantum DOM-projektet kommer att göra Gecko mer lyhörd, särskilt när det finns många bakgrundsflikar öppna. När Quantum DOM är klar, kommer JS-kod för olika flikar (och möjligen olika iframes) att köras i separata schemalagda trådar; koden för vissa bakgrundsflikar kommer aldrig att köras alls.
Annons
Quantum Compositor flyttar Geckos kompositör till sin egen process. Eftersom grafikdrivrutinens instabilitet är en viktig källa till Firefox-krascher förväntar vi oss att flytta kod som interagerar med GPU: n till sin egen process kommer att göra Firefox mer stabil.
Slutligen kommer Quantum Rendering att ersätta Geckos grafikdelsystem med det från Servo, kallat WebRender. Servo använder GPU: n mer effektivt än Gecko gör, driver den mer som ett spel än en webbläsare.
Dessa projekt befinner sig i olika stadier av fullständighet. Quantum Compositor har kommit ganska långt medan Quantum Rendering precis har börjat. Det råder fortfarande en hel del osäkerhet kring projekten.
Quantum DOM
Quantum DOM kommer att köra JavaScript-koden för olika flikar i parallella trådar, vilket gör det möjligt att öka webbläsarens prestanda med många öppna flikar. För att växla mellan trådar kommer en speciell schemaläggare att användas för att ändra kontexten smidigt i farten. Många förbättringar kommer att fånga tunga skript och oändliga loopar i Javascript-koden.
Kvantflöde
Quantum Flow är en del av Quantum-projektet dedikerat till avancerade optimeringar av webbläsarens användargränssnitt.
Se följande video:
Källa: Bill McCloskeys blogg.