Este concepto había sido sólo considerado por Mozilla, pero Microsoft hizo lo suyo al implementar algo similar en Internet Explorer y Google se les adelantó con Chrome, en el cual cada página se carga como un proceso individual y separada del proceso “general” del navegador, por lo que si llegase a pasar que un plug-in haga “caer” a su proceso, no arrastrará consigo al navegador, que es un proceso aparte, ni a otras páginas, que también son procesos aparte. Además, cada una de las páginas corre bajo un proceso de sandbox propio, que permite aislar el espacio de memoria que usa cada proceso para que ciertas vulnerabilidades no comprometan el sistema por completo, algo que también comparte Safari en su versión para OS X Snow Leopard.
Mozilla advierte que implementar el proyecto “Electrolysis” en Firefox no será trivial, ya que muchos componentes que conforman la estructura misma del sistema tendrán que ser modificados para funcionar bajo este nuevo sistema. Por ejemplo, uno de los puntos más críticos será hacer que ciertos componentes compartidos puedan ser vistos por los procesos individuales sin que esto suponga problemas de estabilidad, rendimiento o seguridad. Este sistema se denominará Comunicación Interproceso (IPC). Documentación sobre la posible implementación de todo esto se puede encontrar aquí.
Parte del código para hacer todo esto posible se basará en el código de Chromium, la versión Open Source de Chrome, y no se descarta que componentes más importantes -como el Network Stack- puedan ser reemplazados a favor de tener nuevas versiones más similares a las del código de Chromium. Se está trabajando arduamente para tener nightly-builds listos para ser probados por los desarrolladores antes de que esto llegue al público en general, aunque se advierte que las versiones de Mac OS X van a tardar algo más, por lo que se pide ayuda a desarrolladores que conozcan la plataforma Mac.
En el Blog de Mozilla tienen una demo sobre cómo verá el usuario final todas estas nuevas características, y en donde podemos observar que cuando ocurre un error durante el procesamiento de una página, esta simplemente se va a blanco y se ofrece volverla a cargar en vez de producir una caída general del navegador.
Sin duda buenas noticias para todos aquellos que alguna vez hemos visto como se pierden textos completos que iba a postear en el blog y que me había demorado una hora en escribir trabajos y páginas por la culpa de algún plug-in inestable, una página con errores, o cualquier cosa de esas que sólo ocurren por los misterios de la computación y que hacen morir a nuestro navegador y nuestros sueños.
No hay comentarios:
Publicar un comentario