Les dĂ©veloppeurs du moteur de navigateur Servo ont lancĂ© une initiative visant Ă renforcer la modularitĂ© et Ă se distancier de l'utilisation des API bas niveau du moteur JavaScript SpiderMonkey, dĂ©veloppĂ© par Mozilla et utilisĂ© dans Servo pour assurer la prise en charge de JavaScript et de WebAssembly. Ă l'avenir, Servo prĂ©voit de migrer vers des API de niveau supĂ©rieur et une couche dâabstraction pour interagir avec les moteurs JavaScript, ce qui permettra d'Ă©liminer les appels directs non sĂ©curisĂ©s au code de SpiderMonkey, rĂ©alisĂ©s dans des blocs unsafe. Ă long terme, ce changement permettra de se libĂ©rer de l'attachement strict Ă SpiderMonkey et d'assurer la prise en charge d'autres moteurs JavaScript et WebAssembly, comme le moteur V8 utilisĂ© dans Chrome.
Le projet Servo est Ă©crit en Rust et se distingue par la prise en charge du rendu web multiprocessus, le parallĂ©lisme des opĂ©rations sur le DOM (Document Object Model) et l'utilisation des mĂ©canismes de programmation sĂ©curisĂ©e offerts par Rust. Le projet Servo a Ă©tĂ© initialement dĂ©veloppĂ© par Mozilla, mais est ensuite passĂ© sous le patronage de la Linux Foundation. Servo a Ă©tĂ© conçu dĂšs le dĂ©part pour prendre en charge la dĂ©composition du code DOM et le rendu en sous-tĂąches plus petites, qui peuvent ĂȘtre exĂ©cutĂ©es en parallĂšle, maximisant ainsi l'utilisation des ressources des CPU multi-cĆurs. Certaines parties de Servo, comme le moteur CSS multiprocessus et le systĂšme de rendu WebRender, sont dĂ©jĂ intĂ©grĂ©es dans Firefox.
Source : opennet.ru
