proc_meminfo
Table des matières
Retour à l'index
NOM
/proc/meminfo - utilisation de la mémoire
DESCRIPTION
- /proc/meminfo
-
Ce fichier fournit des statistiques sur l'utilisation de la mémoire du
système. Il permet au programme free(1) d'indiquer la quantité de mémoire
(physique et d'échange) libre et utilisée, ainsi que la mémoire partagée et
les tampons utilisés par le noyau. Chaque ligne du ficher contient un nom de
paramètre, suivi d'un deux-points, la valeur du paramètre et une unité
facultative de mesure (par exemple « kB » pour « ko »). La liste suivante
décrit les noms de paramètre et le spécificateur de format nécessaire pour
lire la valeur du champ. Sauf si précisé autrement, tous les champs sont
présents depuis au moins Linux 2.6.0. Certains champs ne sont affichés que
si le noyau a été configuré avec plusieurs options ; ces dépendances sont
notées dans la liste.
-
- MemTotal %lu
-
Total de RAM utilisable (c'est-à-dire la RAM physique moins quelques bits
réservés et le code binaire du noyau).
- MemFree %lu
-
Somme de LowFree et HighFree.
- MemAvailable %lu (depuis Linux 3.14)
-
Estimation de la quantité de mémoire disponible pour démarrer de nouvelles
applications sans utiliser d’espace d’échange.
- Buffers %lu
-
Stockage relativement temporaire pour les blocs de disque bruts qui ne
devraient pas devenir trop gros (environ 20 Mo).
- Cached %lu
-
Cache en mémoire pour les fichiers sur le disque (le cache de
pages). N'inclut pas SwapCached.
- SwapCached %lu
-
Mémoire qui avait été placée en espace d'échange (« swap »), qui en a été
retirée, mais qui est toujours dans le fichier d'échange (si la pression en
mémoire est importante, ces pages n'ont pas besoin d'être de nouveau placées
dans l'espace d'échange, car elles sont déjà dans le fichier d'échange. Cela
évite des E/S).
- Active %lu
-
Mémoire qui a été utilisée plus récemment, mais qui en général n'est pas
réclamée tant que ce n'est pas absolument nécessaire.
- Inactive %lu
-
Mémoire qui a été utilisée moins récemment. Elle est plus éligible à être
réclamée pour autre chose.
- Active(anon) %lu (depuis Linux 2.6.28)
-
[À documenter].
- Inactive(anon) %lu (depuis Linux 2.6.28)
-
[À documenter].
- Active(file) %lu (depuis Linux 2.6.28)
-
[À documenter].
- Inactive(file) %lu (depuis Linux 2.6.28)
-
[À documenter].
- Unevictable %lu (depuis Linux 2.6.28)
-
(De Linux 2.6.28 à Linux 2.6.30, CONFIG_UNEVICTABLE_LRU était
nécessaire.) [À documenter.]
- Mlocked %lu (depuis Linux 2.6.28)
-
(De Linux 2.6.28 à Linux 2.6.30, CONFIG_UNEVICTABLE_LRU était
nécessaire.) [À documenter.]
- HighTotal %lu
-
(Depuis Linux 2.6.19, CONFIG_HIGHMEM est nécessaire.) Quantité totale de
mémoire haute. La mémoire haute correspond à toute la mémoire située au-delà
d'environ 860 Mo de mémoire physique. Les espaces de mémoire haute sont pour
les programmes en espace utilisateur ou pour le cache de pages. Le noyau
doit utiliser des astuces pour utiliser cette mémoire, la rendant plus lente
d'accès que la mémoire basse.
- HighFree %lu
-
(Depuis Linux 2.6.19, CONFIG_HIGHMEM est nécessaire.) Quantité de mémoire
haute libre.
- LowTotal %lu
-
(Depuis Linux 2.6.19, CONFIG_HIGHMEM est nécessaire.) Quantité totale de
mémoire basse. La mémoire basse peut être utilisée pour les mêmes choses que
la mémoire haute, mais est aussi disponible pour le noyau pour ses propres
structures de données. Entre autres choses, c'est là qu'est alloué tout
Slab. Des problèmes peuvent survenir en cas d'épuisement de mémoire
basse.
- LowFree %lu
-
(Depuis Linux 2.6.19, CONFIG_HIGHMEM est nécessaire.) Quantité de mémoire
basse libre.
- MmapCopy %lu (depuis Linux 2.6.29)
-
(CONFIG_MMU est nécessaire.) [À documenter.]
- SwapTotal %lu
-
Quantité totale d'espace d'échange disponible.
- SwapFree %lu
-
Quantité d'espace d'échange non utilisée.
- Dirty %lu
-
Mémoire en attente d'être réécrite sur disque.
- Writeback %lu
-
Mémoire en cours de réécriture sur disque.
- AnonPages %lu (depuis Linux 2.6.18)
-
Pages sauvegardées sous une autre forme qu'un fichier, mappées dans des
tables de pages en espace utilisateur.
- Mapped %lu
-
Fichiers qui ont été mappés en mémoire (avec mmap(2)), comme les
bibliothèques.
- Shmem %lu (depuis Linux 2.6.32)
-
Quantité de mémoire utilisée par les systèmes de fichiers tmpfs(5).
- KReclaimable %lu (depuis Linux 4.20)
-
Allocations pour le noyau que celui-ci peut essayer de réclamer lorsque la
mémoire est sous pression. Cela inclut SReclaimable (ci-après) et
d’autres allocations directes avec un « shrinker ».
- Slab %lu
-
Cache de structures de données dans le noyau (consulter slabinfo(5)).
- SReclaimable %lu (depuis Linux 2.6.19)
-
Partie de Slab qui pourrait être réclamée, comme les caches.
- SUnreclaim %lu (depuis Linux 2.6.19)
-
Partie de Slab qui ne peut pas être réclamée lorsque la mémoire est sous
pression.
- KernelStack %lu (depuis Linux 2.6.32)
-
Quantité de mémoire allouée aux piles du noyau.
- PageTables %lu (depuis Linux 2.6.18)
-
Quantité de mémoire dédiée au plus bas niveau des tables de pages.
- Quicklists %lu (depuis Linux 2.6.27)
-
(CONFIG_QUICKLIST est nécessaire.) [À documenter.]
- NFS_Unstable %lu (depuis Linux 2.6.18)
-
Pages NFS envoyées au serveur, mais pas encore envoyées vers un stockage
stable.
- Bounce %lu (depuis Linux 2.6.18)
-
Mémoire utilisée pour les « tampons de rebond » des périphériques blocs.
- WritebackTmp %lu (depuis Linux 2.6.24)
-
Mémoire utilisée par FUSE pour les tampons de réécriture temporaire.
- CommitLimit %lu (depuis Linux 2.6.10)
-
Quantité totale de mémoire actuellement disponible à l'allocation sur le
système, exprimée en kilooctets. Cette limite est respectée si la
comptabilité « overcommit » stricte est activée (mode 2 dans
/proc/sys/vm/overcommit_memory). Cette limite est calculée selon la
formule décrite dans /proc/sys/vm/overcommit_memory. Pour de plus amples
détails, consulter le fichier Documentation/vm/overcommit-accounting.rst
des sources du noyau.
- Committed_AS %lu
-
Quantité de mémoire actuellement allouée dans le système. Cette mémoire est
la somme de toute la mémoire qui a été allouée par les processus, même s'ils
ne l'ont pas encore « utilisée ». Un processus qui alloue 1 Go de mémoire
(en utilisant malloc(3) ou équivalent), mais ne touche qu'à 300 Mo de
cette mémoire, sera vu comme n'utilisant que 300 Mo de mémoire, même s'il a
l'espace d'adresses alloué pour 1 Go.
-
Ce 1 Go est la mémoire qui a été « réservée » par la mémoire virtuelle et
peut être utilisée n'importe quand par l'application d'allocation. Avec la
gestion stricte du dépassement activée (overcommit) (mode 2 dans
/proc/sys/vm/overcommit_memory), les allocations qui pourraient dépasser
CommitLimit ne sont pas permises. C'est utile s'il est nécessaire de
garantir que les processus ne vont pas échouer à cause d’un manque de
mémoire une fois la mémoire allouée correctement.
- VmallocTotal %lu
-
Taille totale d'allocation de mémoire virtuelle.
- VmallocUsed %lu
-
Montant de la zone de vmalloc utilisée. Depuis Linux 4.4, ce champ n’est pas
calculé et est codé en dur à zéro. Consulter /proc/vmallocinfo.
- VmallocChunk %lu
-
Bloc contigu le plus large de la zone vmalloc libre. Depuis Linux 4.4, ce
champ n’est pas calculé et est codé en dur à zéro. Consulter
/proc/vmallocinfo.
- HardwareCorrupted %lu (depuis Linux 2.6.32)
-
(CONFIG_MEMORY_FAILURE est nécessaire.) [À documenter.]
- LazyFree %lu (depuis Linux 4.12)
-
Quantité de mémoire marquée par madvise(2) MADV_FREE.
- AnonHugePages %lu (depuis Linux 2.6.38)
-
(CONFIG_TRANSPARENT_HUGEPAGE est nécessaire.) Pages volumineuses sauvées
sous une autre forme qu'un fichier, mappées dans des tables de pages en
espace utilisateur.
- ShmemHugePages %lu (depuis Linux 4.8)
-
(CONFIG_TRANSPARENT_HUGEPAGE est nécessaire.) Mémoire utilisée par la
mémoire partagée (shmem) et tmpfs(5) allouée avec les pages volumineuses.
- ShmemPmdMapped %lu (depuis Linux 4.8)
-
(CONFIG_TRANSPARENT_HUGEPAGE est nécessaire.) Mémoire partagée mappée en
espace utilisateur avec les pages volumineuses.
- CmaTotal %lu (depuis Linux 3.1)
-
Pages CMA (Contiguous Memory Allocator) totales (CONFIG_CMA est
nécessaire).
- CmaFree %lu (depuis Linux 3.1)
-
Pages CMA (Contiguous Memory Allocator) libres (CONFIG_CMA est
nécessaire).
- HugePages_Total %lu
-
(CONFIG_HUGETLB_PAGE est nécessaire.) Taille de la réserve (pool) pour
les pages volumineuses.
- HugePages_Free %lu
-
(CONFIG_HUGETLB_PAGE est nécessaire.) Nombre de pages volumineuses de la
réserve (pool) qui ne sont pas encore allouées.
- HugePages_Rsvd %lu (depuis Linux 2.6.17)
-
(CONFIG_HUGETLB_PAGE est nécessaire.) Nombre de pages volumineuses pour
lesquelles un engagement a été fait pour les allouer à partir de la réserve,
alors qu’aucune allocation n’a été faite. Ces pages volumineuses réservées
garantissent qu'une application pourra allouer une page volumineuse à partir
de la réserve de pages volumineuses au moment de la faute.
- HugePages_Surp %lu (depuis Linux 2.6.24)
-
(CONFIG_HUGETLB_PAGE est nécessaire.) Nombre de pages volumineuses dans
la réserve au-delà de la valeur de /proc/sys/vm/nr_hugepages. Le nombre
maximal de pages volumineuses en excès est contrôlé par
/proc/sys/vm/nr_overcommit_hugepages.
- Hugepagesize %lu
-
(CONFIG_HUGETLB_PAGE est nécessaire.) Taille des pages volumineuses.
- DirectMap4k %lu (depuis Linux 2.6.27)
-
Nombre d’octets de RAM mappés linéairement par le noyau en pages de 4 ko
(x86).
- DirectMap4M %lu (depuis Linux 2.6.27)
-
Nombre d’octets de RAM mappés linéairement par le noyau en pages de 4 Mo
(x86 avec CONFIG_X86_64 ou CONFIG_X86_PAE activé).
- DirectMap2M %lu (depuis Linux 2.6.27)
-
Nombre d’octets de RAM mappés linéairement par le noyau en pages de 2 Mo
(x86 avec ni CONFIG_X86_64 ni CONFIG_X86_PAE activé).
- DirectMap1G %lu (depuis Linux 2.6.27)
-
(x86 avec CONFIG_X86_64 ou CONFIG_X86_DIRECT_GBPAGES activé).
VOIR AUSSI
proc(5)
TRADUCTION
La traduction française de cette page de manuel a été créée par
Christophe Blaess <https://www.blaess.fr/christophe/>,
Stéphan Rafin <stephan.rafin@laposte.net>,
Thierry Vignaud <tvignaud@mandriva.com>,
François Micaux,
Alain Portal <aportal@univ-montp2.fr>,
Jean-Philippe Guérard <fevrier@tigreraye.org>,
Jean-Luc Coulon (f5ibh) <jean-luc.coulon@wanadoo.fr>,
Julien Cristau <jcristau@debian.org>,
Thomas Huriaux <thomas.huriaux@gmail.com>,
Nicolas François <nicolas.francois@centraliens.net>,
Florentin Duneau <fduneau@gmail.com>,
Simon Paillard <simon.paillard@resel.enst-bretagne.fr>,
Denis Barbier <barbier@debian.org>,
David Prévot <david@tilapin.org>,
Jean-Paul Guillonneau <guillonneau.jeanpaul@free.fr>
et
Lucien Gentis <lucien.gentis@waika9.com>
Cette traduction est une documentation libre ; veuillez vous reporter à la
GNU General Public License version 3
concernant les conditions de copie et
de distribution. Il n'y a aucune RESPONSABILITÉ LÉGALE.
Si vous découvrez un bogue dans la traduction de cette page de manuel,
veuillez envoyer un message à
Index
- NOM
-
- DESCRIPTION
-
- VOIR AUSSI
-
- TRADUCTION
-
This document was created by
man2html,
using the manual pages.
Time: 05:06:34 GMT, September 19, 2025