Historias
Slashboxes
Comentarios
 

Ventajas e inconvenientes de los navegadores multiproceso

editada por inniyah el 23 de Marzo 2009, 09:53h   Printer-friendly   Email story
desde el dept. nueva-generación-de-navegadores
Tras la inclusión del concepto de los procesos múltiples en el navegador por parte de Google Chrome le ha seguido Internet Explorer 8. En Genbeta nos hacen un análisis sobre las ventajas e inconvenientes de los navegadores multiproceso. Su principal punto débil es que necesitan más recursos para ejecutar lo mismo que los navegadores monoproceso. A cambio obtenemos un navegador más seguro, en el que si una web se cuelga, el resto de las que se estén visualizando pueden seguir adelante, y en el que el uso de memoria será más eficiente si hacemos un uso prolongado del mismo, abriendo y cerrando pestañas. Chrome abre incluso un proceso diferente para los plugins, que son probablemente la parte más inestable y la parte menos segura de los navegadores.

Historias relacionadas

[+] Creación de extensiones para Google Chrome 35 comentarios
dirson cuenta en su bitácora que Google invita a los desarrolladores a crear las primeras extensiones para Chrome: «Hace unas pocas semanas os contábamos que en breve el navegador 'Google Chrome' comenzaría a soportar extensiones 'Add-ons' para que los usuarios pudiesen personalizar la aplicación y multiplicar su posibilidades. Uno de los aciertos que han hecho posible la popularidad de Firefox ha sido permitir estas extensiones, y ahora Google quiere animar a la Comunidad a que cree ya las primeras para 'Google Chrome', y por eso ha lanzado este documento en el que se proponen ideas para algunos 'Add-ons' que se pueden comenzar ya a realizar. En el mencionado documento no se fija ninguna fecha para que podamos ver las primeras extensiones para 'Google Chrome' aunque, como os asegurábamos hace dos semanas, el navegador dejerá de ser 'beta' el próximo mes de enero, lo que puede coincidir con este hito de los primeros 'Add-ons'».
[+] El futuro de Google Chrome 62 comentarios
ldeseta nos cuenta: «El ingeniero de software Lars Bak de Google nos cuenta sobre el futuro de Google Chrome (traducción de la entrevista original), el novedoso navegador web que pretende ganarse una posición en un mercado muy competitivo. En la entrevista, Lars explica los objetivos de Chrome, el motor JavaScript v8, y comenta sobre si Safari 4 les copió algunas características.»
[+] Publicado Internet Explorer 8 55 comentarios
mig21 nos cuenta: «vía OSNews leo que Microsoft anuncia la disponibilidad de la versión final del Internet Explorer 8. En teoría Microsoft se ha centrado en esta versión de Explorer en un mejor respeto por los estándares, en la seguridad y en hacer "las tareas online típicas más rápido y más fácil". El uso masivo dirá. También se pude leer en diversos medios en castellano suy tembién se hace eco de la noticia en su bitácora.
Este hilo ha sido archivado. No pueden publicarse nuevos comentarios.
Mostrar opciones Umbral:
Y recuerda: Los comentarios que siguen pertenecen a las personas que los han enviado. No somos responsables de los mismos.
  • Pequeño desliz

    (Puntos:2)
    por eregardrgn (39282) el Lunes, 23 Marzo de 2009, 10:41h (#1135534)
    ( Última bitácora: Martes, 06 Octubre de 2009, 10:32h )

    Editor: creo haber encontrado una errata en:

    ventajas e inconvenientes de los navegadores multiproceso. Su principal punto débil es que necesitan más recursos para ejecutar lo mismo que los navegadores multiproceso

    Supongo que quieres decir más recursos para ejecutar lo mismo que los navegadores monoproceso .

    --
    ¡Me da igual la realidad! La teoría dice que no es posible.
  • Abstracto

    (Puntos:2)
    por wel (3628) el Lunes, 23 Marzo de 2009, 10:53h (#1135539)
    ( http://barrapunto.com/ | Última bitácora: Viernes, 03 Octubre de 2008, 19:51h )

    De hecho, tras un tiempo usando el navegador abriendo y cerrando pestañas, el uso de memoria será incluso más eficiente que un navegador convencional.[...]Por muy bueno que sea un navegador, el SO siempre será más eficiente, simplemente porque dispone de más herramientas.
    ¿Dispone de más herramientas? Un poco abstracto, ¿no? Es más, dudo que sea una razón de peso para comparar la eficiencia de uno y otro.
    --
    Apuñalo gatitos con bollitos de crema. Razón aquí.
  • por Ed Hunter (702) el Lunes, 23 Marzo de 2009, 12:35h (#1135566)

    En realidad la mayoría de los supuestos inconvenientes que aparecen mencionados a los navegadores multiproceso (que se puede generalizar a todas las aplicaciones en realidad) son básicamente problemas del sistema operativo más que del "paradigma" en si mismo.

    Es decir, que si consumen mucha más memoria debido a que cada proceso debe de tener una copia de la instancia, en realidad es un problema del gestor de memoria que no la gestiona correctamente y no se da cuenta que dos páginas de memoria son idénticas y que por tanto las pueden compartir los dos procesos sin problemas mientras ninguno de los dos no la modifiquen (entonces debería saltar una excepción de acceso de memoria, y entonces si que debería duplicar la página en cuestión, dando una a cada uno de los procesos y dejando que el proceso que lo solicitó pueda modificar dicha página). Así deberían funcionar los gestores de memoria modernos y de esta forma se reduce el consumo global de memoria (sobre todo teniendo en cuenta que la mayor parte de la memoria compartida será código ejecutable y esta raramente se modifica).

    De hecho si se mira por ejemplo Apache, que puede funcionar con procesos diferenciados o por hilos, en los sistemas UNIX apenas hay diferencias apreciables entre usar unos u otros (las hay, por supuesto, sino en UNIX simplemente no existirían los hilos y siempre se usarían procesos), y de hecho hasta versiones modernas del servidor en UNIX casi siempre se empleaban exclusivamente procesos, mientras que en Windows, dónde si que se penaliza mucho el uso de procesos en lugar de hilos, Apache suele funcionar en modo multihilo.

    Así que en realidad supongo que si los navegadores web han sido tradicionalmente multihilo y no multiproceso ha sido para no penalizar las versiones para Windows (a final de cuentas, las mayoritariamente usadas), a la espera que Microsoft corrigiese su sistema operativo (o que la potencia bruta de los nuevos procesadores hiciese despreciable la diferencia entre los dos sistemas dentro del rango en el que puede trabajar un navegador).

    Además hay otra cuestión. Los hilos son claramente efectivos respecto a los procesos cuando los hilos comparten los datos a los que acceder, por ejemplo, en un procesador de textos, dónde un hilo se dedica a "maquetar" el texto, otro (o el mismo) a recibir la entrada de texto del usuario, y otro es el corrector ortográfico y/o gramatical. Al final todos los hilos están trabajando sobre los mismos datos: el documento que esta editando el usuario. En cambio en el navegador cada pestaña (proceso) tiene un documento normalmente independiente del de las demás pestañas (procesos) por lo que la comunicación entre procesos puede ser mínima, y se puede emplear técnicas diferentes a la simple compartición del espacio de memoria.

  • Estupidez

    (Puntos:1, Inspirado)
    por pobrecito hablador el Lunes, 23 Marzo de 2009, 14:08h (#1135584)
    "Y ni siquiera he hablado de los procesadores multinúcleo: un navegador multiproceso puede aprovecharlos más que los actuales multihilo, y si cada vez tenemos más núcleos habrá que explotarlos más."

    Con eso ha desacreditado todo su artículo.
    • Re:Estupidez de eviche (Puntos:2) Lunes, 23 Marzo de 2009, 15:30h
    • 1 respuesta por debajo de tu umbral de lectura actual.
  • Ya se ha hablado de eso antes

    (Puntos:1, Informativo)
    por pobrecito hablador el Lunes, 23 Marzo de 2009, 15:50h (#1135601)
    En geeks.ms encontre un articulo sobre esto justamente: http://geeks.ms/blogs/luisguerrero/archive/2008/09 /02/Google_2D00_Chrome.aspx [geeks.ms]
  • El artículo es un despropósito

    (Puntos:1, Inspirado)
    por pobrecito hablador el Martes, 24 Marzo de 2009, 10:36h (#1135704)
    Escrito por un aficionado, supongo.

    Lo más obvio es que se necesitan más recursos para ejecutar lo mismo que en navegadores monoproceso, ya que como he comentado antes muchos datos se guardan varias veces en memoria. Esto es algo malo de por sí, pero no creo que sea algo excesivamente notable con la cantidad de memoria que tenemos hoy en día.

    La informática es una ciencia, funciona porque está basada en unos principios matemáticos sólidos. Aquí no cabe pensar, creer o que dé igual. Guardar lo mismo en memoria varias veces está mal, incumple normas básicas de la informática. Y da igual que tengas 128kb que 4Gb de RAM. Que sea multiproceso no implica que deba estar mal programado, los datos identicos no deben estar repetidos en memoria

    De hecho, tras un tiempo usando el navegador abriendo y cerrando pestañas, el uso de memoria será incluso más eficiente que un navegador convencional

    Demuéstralo. Esa afirmación por si sola es falsa. Dependerá de si está bien o mal programada la aplicación

    Que dos webs estén completamente aisladas respecto a sí mismas y respecto al SO significa que es mucho más difícil infectarse con software malicioso

    Sacado de la manga, ¿alguna explicación de porqué se dice eso? ¿porqué al ser multiproceso está más aislado del SO? ¿qué quiere decir con más aislado?

    Y ni siquiera he hablado de los procesadores multinúcleo: un navegador multiproceso puede aprovecharlos más que los actuales multihilo, y si cada vez tenemos más núcleos habrá que explotarlos más.

    Sin comentarios. Aquí demuestra que sus conocimientos son limitados. Alguien debería explicarle que un proceso multihilo puede ejecutarse en varios núcleos del procesador, además de forma más sencilla y eficiente que varios procesos a la vez

    En general, todo se reduce a que los navegadores multiproceso no se degradan con la misma facilidad que los tradicionales.

    Los programas informáticos no son entes orgánicos que cambien por sí mismos. Un programa no 'se degrada'. En todo caso un programa mal programado, valga la redundancia, sufrirá problemas de rendimiento al realizar muchas operaciones de reserva y liberación de bloques de memoria. Pero mal o bien programado puede estar un programa multihilo o multiproceso. Es como afirmar que un motor de 6 cilindros es mejor que uno de 4 cilindros, dependerá del motor. No se puede generalizar

    Un navegador multiproceso puede ser más eficiente que uno monoproceso y multihilo, que no lo dudo, pero la demostración debe ser algo más científica y menos a la ligera, con comentarios de barra de bar.

  • Re:Bueno entonces...

    (Puntos:1, Informativo)
    por pobrecito hablador el Lunes, 23 Marzo de 2009, 10:48h (#1135537)
    Cosa que ya se puede hacer:

    -no-remote
            Don't connect to a running iceweasel instance.
    [ Padre ]
  • por pobrecito hablador el Lunes, 23 Marzo de 2009, 12:07h (#1135558)
    Sí, pero la compartición de memoria entre varios procesos no deja de ser más aparatosa y costosa.

    Además, no hay que olvidar que tener varios procesos implica un PCB para cada uno de ellos.

    Para estas cosas es mejor usar threads, sinceramente. Otra cosa es que los diseñadores quieran trabajar menos y dejar completamente a manos del SO la gestión de memoria.
    [ Padre ]
  • Re:Bueno entonces...

    (Puntos:5, Informativo)
    por tunic (293) el Lunes, 23 Marzo de 2009, 12:20h (#1135563)
    ( http://barrapunto.com/ | Última bitácora: Domingo, 04 Abril de 2010, 23:48h )
    No sé si me estoy equivocando, pero creo que Konqueror funciona separando ventanas en procesos.

    Cada ventana es un proceso diferente, de forma que si cruje alguna pestaña de esa ventana solo se cierra esa ventana, dejando el resto tranquilas. Incluso el plugin de flash debe ser un proceso separado, por que a veces falla, da un aviso de error (como esos de que el programa se va a cerrar) pero solo deja de funcionar el objeto flash, la pestaña afectada sigue funcionando.

    También es bastante normal; Konqueror es la navaja suiza de KDE, navegador de archivos y navegador web: si por una puñetera pestaña que produce un error se te cierran todas las ventanas web y de exploración de archivos te puede dar un síncope (a mi por lo menos, que muchas veces tengo muchas ventanas de esas abiertas).

    Me suena que en Firefox si falla una ventana o pestaña se cierran todas las ventanas de Firefox, ¿no?
    [ Padre ]
  • Re:Interesante artículo

    (Puntos:4, Inspirado)
    por tunic (293) el Lunes, 23 Marzo de 2009, 12:28h (#1135564)
    ( http://barrapunto.com/ | Última bitácora: Domingo, 04 Abril de 2010, 23:48h )
    Es curioso como justo en este artículo, en el que no se menciona la pobre puntuación del IE 8 en el test Acid 3, tengas que venir tú a decir que al pobre IE 8 siempre lo acusan de no pasar medianamente bien el test Acid 3.

    [ Padre ]
  • Re:Bueno entonces...

    (Puntos:3, Interesante)
    por eviche (41664) el Lunes, 23 Marzo de 2009, 16:28h (#1135606)
    Multiproceso y multihilo no son mutuamente excluyentes. De hecho en este caso están usando ambos.

    Si piensas usar multihilo en C++, te recomiendo Boost.Thread: http://www.boost.org/doc/libs/1_38_0/doc/html/thre ad.html [boost.org]

    [ Padre ]
  • por spok (2400) el Lunes, 23 Marzo de 2009, 21:50h (#1135646)
    ( http://barrapunto.com/~spok/bitacora | Última bitácora: Jueves, 07 Septiembre de 2006, 20:43h )
    No voy a hacer click en el mensaje porque me da la sensación de que es un intento de usar el "efecto barrapunto" para ganar clicks en una web apestosa.

    Peero, si lo que dices fuera verdad sería difusión de pornografía infantil, y posiblemente barrapunto recibiría un agradable mensaje de un juez pidiendo cualquier dato para identificarte a través de tu ISP y hacerte una visita personal.

    Repito que apostaría que es simplemente un intento estúpido de ganar puntos, pero no juguemos con cosas serias o no nos quejemos luego si tenemos el ojete del tamaño de una tubería.

    --

    Dicen que me río de todo y me burlo de todo, porque me río de ellos y me burlo de ellos y ellos creen serlo todo

    [ Padre ]
  • por inimputable (37172) el Martes, 24 Marzo de 2009, 21:35h (#1135831)
    Y en castellano cómo se dice?
    [ Padre ]
  • 6 respuestas por debajo de tu umbral de lectura actual.