¿Qué establece el tamaño de tmpfs? ¿Qué pasa cuando está lleno?

¿Qué establece el tamaño del tmpfs? (En mi máquina reside en /dev/shm) Puedo ver su entrada en /etc/fstab, pero ninguna notación de su tamaño. Al verificar con df -h, parece ser la mitad del tamaño de la memoria física instalada en el sistema. ¿Es este el comportamiento predeterminado?

Además, ¿qué sucede si se llena? ¿Se expande dinámicamente obligando a otros programas en ejecución a swap? ¿Se mueve tmpfs a la partición swap?

Finalmente, ¿qué tiene prioridad en la memoria tmpfs o en las aplicaciones? es decir, si tengo tmpfs suficientemente lleno (como el 40% de la memoria física) y tengo programas que requieren el 70% de la memoria física, ¿cuál tiene la prioridad?

Respuesta

¿Qué establece el tamaño de los tmpfs? (En mi máquina reside en / dev / shm) Puedo ver su entrada en / etc / fstab, pero ninguna notación de su tamaño.

La documentación del kernel cubre esto debajo de las opciones de montaje:

tamaño: el límite de bytes asignados para esta instancia tmpfs. El valor predeterminado es la mitad de su RAM física sin intercambio. Si sobredimensiona sus instancias tmpfs, la máquina se bloqueará

(El énfasis es mío)

También , ¿qué sucede si se llena?

Como se mencionó anteriormente, si se ha comprometido demasiado con tmpfs, su máquina se bloqueará. De lo contrario (si acaba de alcanzar su límite máximo) devuelve ENOSPC como cualquier otro sistema de archivos.

Finalmente, ¿qué tiene prioridad en la memoria tmpfs o aplicaciones? es decir, si tengo tmpfs suficientemente lleno (como el 40% de la memoria física) y tengo programas que requieren el 70% de la memoria física, ¿cuál tiene la prioridad?

Es similar a la contención entre programas. Las páginas más utilizadas tenderán a estar en la memoria física, mientras que las páginas menos utilizadas tenderán a intercambiarse.

Si necesita asegurarse las páginas están siempre en la memoria física puede usar ramfs que es similar pero de tamaño fijo y no se intercambia.

Comentarios

  • ¿Qué sucede si se montan 2 tmpfs cada uno al 60% de la memoria RAM? El tamaño total sería 120%. ¿Se interbloquea tan pronto como ambos tmpfs se llenan al 50%?
  • @CMCDragonkai Traté de llenar varios montajes tmpfs y la máquina se bloqueó.
  • ¿Tuviste que reiniciar la máquina ?

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *