/proc/meminfo - utilisation de la mémoire
- /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é).
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 à
debian-l10n-french@lists.debian.org.