¿Qué hará el sistema con el 20% restante?
El kernel utilizará la memoria física restante para sus propios fines (estructuras internas, tablas, buffers, cachés, lo que sea). La configuración de sobrecompromiso de memoria maneja las reservas de memoria virtual de la aplicación del usuario, el núcleo no usa memoria virtual sino física.
¿Por qué se requiere este parámetro en primer lugar?
El overcommit_ratio
parámetro es una opción de implementación diseñada para evitar que las aplicaciones reserven más memoria virtual de la que razonablemente estará disponible para ellos en el futuro, es decir, cuando realmente accedan a la memoria (o al menos lo intenten).
La configuración overcommit_ratio
al 50% ha sido considerada un valor predeterminado razonable por los desarrolladores del kernel de Linux. Asume que el núcleo nunca necesitará usar más del 50% de la RAM física. Su kilometraje puede variar, la razón por la cual es sintonizable.
¿Por qué no siempre debería configurarlo al 100%?
Establecerlo al 100% (o cualquier valor "demasiado alto") no deshabilita de manera confiable el exceso de compromiso porque no puede suponer que el kernel usará 0% (o demasiado poco) de RAM.
No evitará que las aplicaciones se bloqueen, ya que el núcleo podría adelantarse a toda la memoria física que requiere.