GNU/Linux >> Tutoriels Linux >  >> Linux

Linux - Utilisation réelle de la mémoire ?

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 de free ). (Sur les systèmes actuels, vous verrez généralement des valeurs non nulles car shared 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ès fork() .)
  • 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 les buffers 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).

En relation :Comment faire croire à une commande particulière qu'il s'agit d'une date différente ?

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.


Linux
  1. Linux - Limiter l'utilisation de la mémoire pour un seul processus Linux ?

  2. Comment vérifier l'utilisation de la mémoire sur un serveur basé sur Linux

  3. Utilisation de la mémoire virtuelle de Java sous Linux, trop de mémoire utilisée

  4. Récupérer l'utilisation du processeur et l'utilisation de la mémoire d'un seul processus sous Linux ?

  5. Limitation de l'utilisation de la mémoire de processus/du processeur sous Linux

Comment vérifier l'utilisation de la mémoire sous Linux

Commande gratuite Linux (vérifier l'utilisation de la mémoire)

Comment obtenir le pourcentage d'utilisation de la mémoire avec vmstat ?

Déterminer correctement l'utilisation de la mémoire sous Linux

Limiter l'utilisation de la mémoire pour un seul processus Linux

Comment l'utilisation de la mémoire est-elle signalée sous Linux ?