¿Cómo puede la memoria virtual ser mayor que el espacio total disponible?

8

¿Por qué mi MBP a veces informa VM Size: 300+ GB en el Monitor de actividad en la pestaña Memoria del sistema, cuando el tamaño de mi disco duro es de solo 250 GB (total) y la memoria RAM es de 4 GB? Sé que no puede obtener mágicamente ese espacio extra, pero ¿qué está tratando de decirme?

    
pregunta Joel Spolsky 24.06.2011 - 07:07

2 respuestas

3

Todo es imaginario, por lo que una combinación de programas está diciendo que algún día podría usar tanto. No se preocupe, a menos que el espacio de intercambio crezca más allá del tamaño de su ram o el ram activo + cableado sea mayor que el 75% de la RAM física. (3GB en tu caso)

Básicamente, esta idea hace que el manejo de la memoria sea más rápido a medida que el sistema se está ejecutando. Dado que los programas siguen pidiendo más y más memoria, el sistema distribuye fragmentos virtuales de RAM virtual con un montón de espacio entre la asignación de cada proceso. Esto hace que algunos cálculos muy comunes sean más fáciles y rápidos, y hace que sea muy poco probable que las regiones se superpongan. Cuando las regiones de la memoria virtual se superponen, es más costoso hacer una pausa y volver a asignar la memoria en un programa en ejecución. Todas estas olimpiadas mentales relacionadas con la memoria virtual hacen que tu mac se ejecute más rápido.

    
respondido por el bmike 24.06.2011 - 07:25
3

Las bibliotecas y los marcos compartidos se cuentan como parte de la memoria virtual para cada aplicación que los utiliza.

Si tiene 100 procesos ejecutándose en su computadora, y una biblioteca 5 MB utilizada por todos esos procesos, esa biblioteca se cuenta como 500 MB de memoria virtual.

También puede sumar los números en la columna Memoria virtual de la lista de procesos; un nombre más preciso para esa columna es "Memoria privada virtual ". No incluye datos compartidos.

100 procesos no es un número tan alto como suena (actualmente tengo 75 en mi MBP y estoy ejecutando mucho menos de lo normal).

Casi todas las aplicaciones del sistema utilizan algunas bibliotecas, incluso las que no tienen interfaces. Después de agregar todas las bibliotecas compartidas en su sistema, tiene una gran cantidad de datos que en realidad requiere muy poca memoria.

Como se mencionó en bmike, deberías estar más preocupado por el espacio de intercambio, o el ram activo + cableado. En este momento, el Monitor de actividad me dice que tengo 170 GB de memoria virtual, pero solo uso 1.5 MB de espacio de intercambio.

    
respondido por el ughoavgfhw 24.06.2011 - 08:14

Lea otras preguntas en las etiquetas