No se como se lo hacen, pero desde Google siempre consiguen sorprendernos sacándose de la manga proyectos que cambian el paradigma existente en ciertos sectores. Gmail fue un ejemplo de ello en los gestores de correo electrónico vía web.
Native Client quiere hacer algo parecido con Flash, Java,... ofreciendo una nueva manera de ejecutar código en el lado del cliente a través del navegador. Pero lo hace de una manera distintas: en lugar de ofrecer una máquina virtual permitirá a los desarrolladores que ejecuten directamente código nativo en el ordenador.
Actualmente, las aplicaciones web no pueden acceder a toda la potencia que ofrecen los ordenadores. Vemos como cada vez tenemos ordenadores más potentes, pero capas y más capas intermedias provocan que esta potencia se vea reducida a los mismos niveles con los que trabajábamos hace años.
La idea de Native Client es poder aprovechar el aumento de velocidad en los ordenadores desde la web. Esto permite ejecutar aplicaciones que, aunque ahora son factibles, pueden resultar demasiado pesadas, como editores de imágenes, juegos 3D,...
La arquitectura de Native Client es la de un compilador y un entorno de seguridad. El código se desarrolla en C o C++, se descarga a través del navegador y desde allí se compila y se ejecuta, tras pasar una serie de pruebas de seguridad que aseguren que no es capaz de afectar al resto del sistema.
Esto último será el factor más complicado de controlar, aunque la idea de Google es que la comunidad les ayude a hacerlo. Para ello, han lanzado Native Client como un sistema de código abierto y gratuito, además de ser independiente del navegador y del sistema operativo.
De momento funciona en Windows, Mac OS X y Linux, con los navegadores Firefox, Safari, Opera y Google Chrome, pero también quieren ofrecerla para otras plataformas hardware como ARM y PPC.
Es pronto para saber todavía hacia donde va a evolucionar esto, pero desde luego si estuvieran desarrollando un sistema operativo basado en web (algo rumoreado pero que yo no me creo), esta sería una de las mejores maneras de aumentar su potencia sin depender de soluciones de otros fabricantes como es el caso de Java o Flash.
Más información | Native Client.
Ver 6 comentarios
6 comentarios
Zaraka
#1 Debemos vivir en mundos diferentes.
black_ice
El problema de todo esto es los problemas se seguridad que puedan traer, es decir, un agujero puede ser un completo desastre con sólo visitar una web malintencionada…
Me recuerda mucho a ActiveX, y eso no me gusta…
Un saludo
vaya torzon que llevo
No creo que triúnfe, Java y Flash están demasiado arraigados, incluso Shockwave que parece estar en la sombra sigue siendo muy usado
Además según leí no hace mucho Java es algo más lento que C, pero no mucho. De hecho de lo último grande que han programado en Java … el emulador de PSP llamado JPCSP, y la verdad tiene una optimización similar a Potemkin que hasta ahora era el único que ejecutaba algún juego comercial y está programado en C
Además el Flash ejecuta juegos 3D sin mayor problema en ordenadores baratones, y en la última versión optimiza la renderización 3D por hardware
Creo que aún siendo de Google, va a ser otro proyecto enviado a la papelera, como el otro par de decenas de proyectos de Google que no han triunfado
albertopinoblanco
(algo rumoreado pero que yo no me creo)→ La realidad te despertó: Chrome OS
81124
Me parece bien!. Flash y Silverlight son plataformas precompiladas y obligan al uso de herramientas propietarias para su desarrollo. Native Client es de código libre y permite programar lo que se desee desde un plugin para proceso de tareas intensivas en CPU hasta juegos 3D acelerados por OpenGL. Lo unico que me preocupa es la seguridad. Habra que probarlo muy bien para asegurar que traer un codigo binario no pueda inyectar algo que comprometa la privacidad de la computadora local.