Felipe

Karma: 12 puntos de 100

Miembro de Genbeta desde

Experto para 0 usuarios

Sin actividad desde hace un mes

Expertos de en Genbeta

no ha añadido ningún experto todavía

Felipe ha hecho 12 comentarios en Genbeta:

  • 0 brillantes
  • 1 interesantes
  • 11 normales
  • 0 flojos
  • 0 irrelevantes
23

En Google Chrome OS, sistema operativo para ultraportátiles

  • karma: 25 | normal
  • 08 de julio de 2009 a las 16:26
35

En Navegadores multiproceso

Hay un error de base, fundamental, en el artículo. El error es asumir que N procesos de la misma aplicación consumen N veces más recursos que un sólo proceso. Además de no ser cierto, es un error bastante grave (y también común), principalmente porque va en contra del diseño de cualquier sistema operativo moderno. En cualquier sistema operativo moderno, las páginas de código y datos (BSS y datos estáticos) son compartidas por todos los procesos de esa misma aplicación. De esa manera, si se pudieran ejecutar 4 copias de Firefox, las únicas páginas de memoria que no se comparten son aquellas asociadas al "heap" (montículo) y "stack" (pila). Este concepto es realmente importante, sobre todo en entornos de tiempo compartido, como sistemas Windows ejecutando servicios de escritorio remoto. Imaginad el nefasto rendimiento de un sistema similar si hubiera 100 usuarios conectados y dichos 100 usuarios ejecutaran Office al mismo tiempo, y etas 100 copias de Office no utilizaran compartición de páginas de código y datos así como técnicas de Copy-on-Write (COW). La única razón por la que muchas aplicaciones utilizan hilos y no procesos, como algunos servidores Web, es porque la creación, destrucción y cambio de contexto para hilos es mucho menos costosa (normalmente cambiar de un hilo a otro de un proceso no conlleva un cambio de contexto). La diferencia entre hilos y procesos es que los hilos comparten el espacio de memoria del proceso en el que viven, excepto la pila. El modelo multi-proceso de navegadores como Chrome hace más resistente el navegador a problemas, ya que se ciertas páginas como el montículo no se comparten entre procesos, de forma que un proceso no puede corromper las estructuras de datos de otro proceso (ni la pila, ni el montículo, a no ser que se utilice memoria compartida).
  • karma: 5 | normal
  • 23 de marzo de 2009 a las 13:22

Volver al perfil de Felipe »