Google Native Client; Google reinventa el modelo de los Applets
jueves, marzo 25, 2010 at 8:23AM
La idea es prácticamente similar a la de los Applet Java, sólo que el código no se termina ejecutando una máquina virtual, sino que se traduce al código máquina y es ejecutado directamente por el sistema operativo. En el servidor habría una representación intermedia entre el código fuente y el ejecutable final a la que llaman "bitecode" (qué originales). El navegador web se bajaría ese bitecode y lo transformaría a código nativo, qué sería lo que finalmente ejecutaría el equipo.
Por supuesto, en la traducción se podría inspeccionar el código y asegurarse de que no hace cosas raras, proporcionando un modelo de seguridad similar al actualmente empleado por los Applet Java. Básicamente, la idea de Google es la misma que la de los Applet, sólo que la máquina virtual sería "todo JIT y nada intérprete".
No tengo claro que esto sea una buena estrategia a seguir. Por un lado, requiere que todos los fabricantes de navegadores web lo soporten, o en su defecto que el usuario se baje algún tipo de plugin. Por otro lado, no tengo muy seguro de cómo de efectivos era un modelo de seguridad en el cual una vez realizada la traducción al código máquina no hay ningún tipo de "supervisión" de un entorno de ejecución, como sucede con la máquina virtual Java. ¿Qué pasa si el código máquina se manipula asimismo para transformarse y hacer cosas diferentes? ¿O si se le da por ejecutar áreas que inicialmente se suponía que eran áreas de datos?
La única forma en la que creo que esto podría funcionar es si Google proporciona los compiladores diferentes para las aplicaciones. Uno que compile a HTML, css y JavaScript, y otro que compile a bitecode. La aplicación funcionaría aunque el navegador no tenga soporte para Native Client. Pero sería más rápida si el navegador lo soporta.
¿Cual es son vuestras opiniones sobre este proyecto?
j2ee 
Reader Comments