La inquietud principal que motivo este post es sencilla.. Estamos en el preámbulo de que los Browsers actuales se conviertan en los próximos grandes procesadores de información? Identificada la inquietud como sencilla, ahora veamos qué tan complicada es su respuesta..
Procesamiento Distribuido
Una de las primeras cosas que se encuentran en una busqueda sencilla sobre este tema son estándares que en su descripción te ponen a pensar en la posibilidad de una súper computadora ejecutándose en internet con procesamiento casi imposible de dimensionar tomando recursos de cada computadora conectada a la red y a su red, algo parecido a la computadora Skynet que nos presentan en la saga Terminator, pero sin los modelos que rezan “hasta la vista babe”.
La realidad sería algo mucho más sobrio para bien de la humanidad, por lo pronto estándares como el RPC (Remote Procedure call) se presenta como un método de procesamiento distribuido que permite invocar funciones y procedimientos escritos cada uno pudiendo estar en lenguajes de programación diferentes, que serían ejecutados de manera remota desde una maquina diferente como un solo proceso, bajo la modalidad de presentación XML, es decir WEB.
Imagínense pues una aplicación con funciones creadas en distintos lugares, en distintos lenguajes de programación, siendo ejecutadas de manera remota, con una sola, en cualquier plataforma y soporte tipo SOAP…
Es más o menos lo que conocemos hoy en dia no? Pero lo hacemos totalmente WEB? Que tienen los navegadores actuales para realizar esto?
Fuera INTEL-AMD, entra JavaScript??
En las presentaciones de cada uno de los principales navegadores a la comunidad de programadores, por parte de las empresas que los crean, siempre el foco principal lo obtiene el motor JavaScript, según muchos foros hay acuerdo en que los presentan con gráficos y estadísticas dignas de una presentación para productos de INTEL o AMD. A continuación una recopilación principales navegadores y sus ultimos motores presentados:
Evolución de los navegadores
Los navegadores hace unos años prácticamente descargaban HTML (texto e imágenes) y nos lo presentaban en nuestras pantallas, luego se inició el proceso de incluirles plugings que eran capacidades de otras aplicaciones para que estos puedan realizar tareas más dinámicas. Ya en el día de hoy, nos presentan un poderoso conjunto de aplicaciones que nos permiten arrastrar elementos, disfrutar de aplicaciones de correo electrónico del tipo Gmail que nada le envidia a un Mail Client que corre localmente, jugar juegos en el navegador, ver videos, Streaming y es solo e inicio.
Hoy en día los Navegadores están integrados como pocas aplicaciones a la red y lo hacen ejecutando aplicaciones de manera estandarizada sin importar el sistema operativo. Solo con las diferencias de velocidad proporcionadas por sus respectivos motores de Java.
Visión Google
Google por el empuje que dio con sus conceptos presentados y materializados en el reléase de Chrome tiene una parte protagonista en esta tendencia. Entre las cosas originales y destacadas que presento Google están:
“Una pestaña, un Proceso
Cada pestaña se ejecuta sobre un proceso por lo que la caída de una de ellas no será motivo para cortar el proceso del navegador y reiniciarlo. Además gráficamente podemos movilizar una pestaña transportándola a otra instancia del navegador Chrome y ubicando su proceso en otro conjunto de procesos. O dejarla en el aire creando su propio grupo de procesos.
Administrador de Tareas:
Como consecuencia de la presencia de procesos Google Chrome provee de un Task Manager que permite monitorear los niveles de descarga, medidas de consumo de CPU y Memoria RAM. Este administrador también nos permite cortar un proceso. Nuestra principal motivación para emplear este aniquilador de procesos será un sitio web del que no obtenemos respuesta o que sobrecarga al sistema.”
Adicional a esto todos conocemos el paso presentado por Google de su navegador corriendo en una maquina sin sistema operativo pudiendo hoy en dia hacer casi todas las operaciones, siendo esta una modalidad de mucho potencial para temas como:
- · Cloud Computing
- · Terminales “brutas”de trabajo (ThinClient)
- · Virtualización
- · SOA
- · Entre otros.
Donde estamos ahora
Recientemente tenemos un movimiento de las cuotas de mercados, próximos releases, y tendencias sobre nuevas funciones - avances.
Market Share actual de Web Browsers
Conclusión
Los navegadores con su motor propio de JavaScript pretenden funcionar con un principio similar al de máquinas virtuales, permitiéndoles hacer las veces de CPU y llevar las posibilidades a un próximo nivel, ya IE9 promete aceleración grafica integrándose muy de lleno con la tarjeta de video del equipo, lo que lleva la definición visual a otro nivel. La evolución de estos, indiscutiblemente nos llevaría a una convergencia de computación entre dispositivos de distintas plataformas, llevar la colaboración masiva, llevarla a otro nivel.
“Hasta la Vista…