web-dev-qa-db-fra.com

Quelle est la mémoire disponible v / s disponible dans la commande free?

La sortie de la commande gratuite que j'ai lancée sur mon hôte Linux est la suivante:

free
              total        used        free      shared  buff/cache   available
Mem:      263846320    47746620     3290072     1140808   212809628   214382420
Swap:             0           0           0

Je ne suis pas en mesure de comprendre ce que cette partie disponible spécifie. La mémoire libre est très moins affichée, soit environ 1,24%, même si la mémoire totale est très élevée et la mémoire utilisée est d'environ 18,09% seulement.

free -h
              total        used        free      shared  buff/cache   available
Mem:           251G         45G        3.1G        1.1G        202G        204G
Swap:            0B          0B          0B

Cela signifie-t-il que je ne pourrai pas démarrer plus d'applications car la mémoire libre est très inférieure. La mémoire utilisée est de 18% seulement. La mémoire libre ne doit donc pas être de 82% et non de 1,24% comme la commande le montre ci-dessus.

Je suis confus. Quelqu'un peut-il aider?

17
Nishant Lakhara

Les systèmes d'exploitation modernes se mettent en quatre pour garder le moins de mémoire libre possible. La mémoire libre est en fait plus difficile à utiliser car elle doit passer de libre à utilisée. La mémoire déjà utilisée, c'est-à-dire la mémoire disponible mais non libre, peut facilement être basculée vers une autre utilisation.

Tout cela est normal. La mémoire libre est gaspillée et ne rend pas votre système plus rapide.

Si vous pensez "mais je veux que ma mémoire soit libre maintenant pour que je puisse l'utiliser plus tard", sachez que cela n'a aucun sens. Vous ne pouvez pas enregistrer de mémoire pour plus tard. Un système de 4 Go qui utilise 2 Go aujourd'hui ne peut pas utiliser 6 Go demain. Vous pouvez utiliser votre mémoire à la fois maintenant et plus tard. Il n'y a pas de compromis ici - utiliser la mémoire est gratuit. La seule alternative à l'utilisation de la mémoire est de la gaspiller. Pourquoi voudriez-vous que votre système gaspille plus de mémoire?

23
David Schwartz