¿Por qué los navegadores web usan tanta RAM?

“aunque todo lo que hacen es mostrar algo de HTML y JavaScript”

Golpea el clavo en la cabeza con este último. En mi opinión, JavaScript arruinó la web, como un navegador de información.

HTML no es responsable de la acumulación de memoria. También está insinuando, diga imágenes * (referenciadas desde HTML) y son parte del problema con muchas de ellas en una página, digamos GIF animado, pueden agregar mucha RAM (y uso de CPU), pero la mayoría NO El problema (tampoco lo es el video).

Creo que JavaScript es el principal problema.

JavaScript lo cambia todo, al hacer que cada pestaña sea un programa y su navegador web una “plataforma”, API, en efecto un sistema operativo (ver, por ejemplo, Chrome OS, donde está “todo” lo que tiene).

Los sistemas operativos tradicionales, incluidos los navegadores, no tienen control sobre la cantidad de RAM (incluidas las pérdidas de memoria) que utilizan los programas que ejecutan.

Si su navegador solo tenía HTML e imágenes, puede saber que las imágenes no están cambiando y volver a cargarlas en cualquier momento, después de arrojarlas de la memoria, y solo tener que cargar el formato comprimido de ellas.

Por el contrario, si tiene un programa, debe intercambiar sus datos (incluso si en algunos casos es de una imagen) Y cambiar, y para las imágenes generadas por código no puede confiar en la compresión de imágenes con pérdida.

Cuando su memoria se llena, la memoria virtual es muy mala para el rendimiento.

En contraste con esta mala situación, Android no usa memoria virtual. ¿Cómo puede manejar la memoria llenándose? Mata tu proceso, como está permitido . Esto no está permitido en los sistemas operativos tradicionales [de escritorio], o realmente se hace para programas en su navegador web en navegadores de escritorio.

Un navegador web en Android no intentará iniciar cada página web cuando se inicie su navegador. Solo cuando lo cambias. No hacerlo de esa manera es la otra razón por la que los navegadores de escritorio ocupan más memoria.

* ¡Incluso el video mientras toma más memoria puede ser un problema menor que las imágenes! Toman más ancho de banda individualmente, pero generalmente no tiene muchos por pestaña, al menos se ejecuta a la vez. Por la naturaleza de transmisión de video, no necesita tener todo el video en la memoria a la vez. Nuevamente, si su navegador abre todas las pestañas a la vez (y comienza a reproducir videos), entonces los videos serán un problema.

No es para ser gracioso, pero ¿qué harías con la RAM? ¿Dejarlo libre? En ese caso solo se está desperdiciando.

Sin embargo, ha respondido a su propia pregunta: los navegadores usan mucha RAM porque los usuarios realizan múltiples tareas con tantas pestañas diferentes.

Decir que “todo lo que hacen es mostrar algo de HTML y Javascript” también está subestimando el tamaño del problema: una página necesita bastante memoria para que se muestre con una velocidad razonable, por ejemplo, por lo que no tiene para volver a dibujar desde cero cada vez que la pestaña se lleva al frente.

actualmente 2 ventanas cromadas y 15 pestañas … 302MB. No está mal realmente.