si je comprends bien, dans la sortie suivante produite par free, 3535m est la mémoire libre réelle disponible pour les applications, seulement 413m est utilisé, est-ce correct ? besoin d'éclaircissements sur la différence entre Mem et -/+ buffers/cache row.
free -m total used free shared buffers cached Mem: 3949 3854 95 0 9 3431 -/+ buffers/cache: 413 3535 Swap: 2047 1322 725
Réponse acceptée :
La Mem: total
le chiffre est la quantité totale de RAM pouvant être utilisée par les applications. Il s'agit de la RAM totale installée sur le système, moins :
- mémoire réservée par les périphériques matériels (souvent la mémoire vidéo si la carte graphique n'a pas sa propre RAM) ;
- mémoire utilisée par le noyau lui-même.
Ce total comprend :
free
:mémoire actuellement utilisée à quelque fin que ce soit ;shared
:un concept qui n'existe plus. Il est laissé dans la sortie pour la rétrocompatibilité (il existe des scripts qui analysent la sortie defree
). (Sur les systèmes actuels, vous verrez généralement des valeurs non nulles carshared
a été réorienté pour montrer la mémoire qui est explicitement partagée via un mécanisme de mémoire partagée. Sur les systèmes plus anciens, il incluait des fichiers mappés par plusieurs processus et une mémoire partageable qui restait partagée aprèsfork()
.)buffers
:mémoire sauvegardée par des fichiers et pouvant être écrite sur le disque si nécessaire ;cache
:mémoire qui est sauvegardée par des fichiers, et qui peut être récupérée à tout moment (la différence avec lesbuffers
est que les tampons doivent être enregistrés sur le disque avant d'être réutilisés, alors que le cache est constitué d'éléments pouvant être rechargés à partir du disque );used -buffers/cache
:mémoire utilisée par les applications (et non paginée pour le swap).
À la rigueur, le système pourrait fonctionner sans tampons ni cache, réservant de la RAM aux applications et effectuant systématiquement des lectures et des écritures sur disque sans aucune mise en cache. Les -/+ buffers/cache
les chiffres indiquent la quantité de RAM utilisée directement par les applications (used
colonne) et la quantité de RAM non utilisée par les applications (free
colonne).
Bien que cela puisse varier considérablement, un système sain a généralement environ la moitié de sa RAM consacrée aux applications et l'autre moitié aux tampons et au cache. À moins que vous n'utilisiez un serveur de fichiers dédié, votre système dispose de plus de RAM que nécessaire pour ce que vous faites actuellement. Si le free - buffers/cache
le chiffre était faible, cela indiquerait un système qui n'a pas assez de RAM (contrairement à une croyance répandue, avoir beaucoup de mémoire consacrée aux tampons et au cache est important pour les performances du système, et essayer de réserver plus de mémoire pour les applications ferait 99,99 % de systèmes plus lents).
Le swap
est simple, elle montre la quantité d'échange utilisée (soit par les applications, soit pour tmpfs
stockage), et le montant qui ne l'est pas.