proc

PROC(5)                   Manuel du programmeur Linux                  PROC(5)



NOM
       proc - Pseudosystème de fichiers d'informations sur les processus

DESCRIPTION
       Le système de fichiers proc est un pseudosystème de fichiers qui
       fournit une interface avec les structures de données du noyau. Il est
       généralement monté sur /proc. La plupart des fichiers sont en
       lecture seule, mais quelques uns permettent la modification de
       variables du noyau.

       La liste suivante décrit de nombreux fichiers et répertoires de la
       hiérarchie de /proc.

       /proc/[pid]
              Il existe un sous-répertoire pour chaque processus actif. Le
              sous-répertoire prend comme nom le PID du processus. Chaque
              sous-répertoire contient les pseudofichiers et
              pseudorépertoires suivants.

       /proc/[pid]/auxv (depuis le noyau 2.6.0-test7)
              Il comporte le contenu des informations passées par
              l'interpréteur ELF au processus lors de son exécution. Le
              format est constitué, pour chacune des entrées, d'un
              identifiant unsigned long suivi d'une valeur unsigned long. La
              dernière entrée comporte deux zéros.

       /proc/[pid]/cgroup (depuis Linux 2.6.24)
              Ce fichier décrit les groupes de contrôle auquel le processus
              ou la tâche appartiennent. Pour chaque hiérarchie de cgroup,
              une entrée contient une liste de champs séparés par des
              deux-points sous la forme :

                  5:cpuacct,cpu,cpuset:/daemons

              Les champs séparés par des deux-points sont, de gauche Ã
              droite :

                  1. identifiant numérique de hiérarchie ;

                  2. jeu de sous-systèmes liés à la hiérarchie ;

                  3. groupe de contrôle dans la hiérarchie auquel appartient
                     le processus.

              Ce fichier n'est présent que si l'option de configuration du
              noyau CONFIG_CGROUPS a été validée.

       /proc/[pid]/clear_refs (depuis Linux 2.6.22)

              Ce fichier n'est accessible qu'en écriture, par le
              propriétaire du processus.

              Les valeurs suivantes peuvent être écrites dans le fichier.

              1 (depuis Linux 2.6.22)
                     Réinitialiser les bits PG_Referenced et ACCESSED/YOUNG
                     de toutes les pages liées au processus. Avant
                     Linux 2.6.32, écrire n'importe quelle valeur non nulle
                     avait le même impact.

              2 (depuis Linux 2.6.32)
                     Réinitialiser les bits PG_Referenced et ACCESSED/YOUNG
                     de toutes les pages anonymes liées au processus.

              3 (depuis Linux 2.6.32)
                     Réinitialiser les bits PG_Referenced et ACCESSED/YOUNG
                     de toutes les pages où sont projetés des fichiers et
                     liées au processus.

              La réinitialisation des bits PG_Referenced et ACCESSED/YOUNG
              fournit une méthode pour mesurer approximativement la quantité
              de mémoire utilisée par un processus. Inspecter dâabord les
              valeurs du champ « Referenced » des zones de mémoire
              virtuelle (VMA) de /proc/[pid]/smaps permet dâavoir une idée de
              lâempreinte mémoire du processus. En réinitialisant ensuite
              les bits PG_Referenced et ACCESSED/YOUNG, inspecter de nouveau
              les valeurs du champ « Referenced », après un intervalle de
              temps mesuré, permet dâavoir une idée de lâévolution de
              lâempreinte mémoire du processus pendant cet intervalle. Pour
              nâinspecter que les types sélectionnés de projection, les
              valeurs 2 ou 3 peuvent être utilisées au lieu de 1.

              Une valeur supplémentaire peut être écrite pour affecter un
              autre bit :

              4 (depuis Linux 3.11)
                     Effacer le bit soft-dirty pour toutes les pages
                     associées au processus. Câest utilisé (en conjonction
                     avec /proc/[pid]/pagemap) par le système de point de
                     restauration pour découvrir les pages quâun processus a
                     souillé depuis que le fichier /proc/[pid]/clear_refs a
                     été écrit.

              L'écriture dans /proc/[pid]/clear_refs d'une valeur différente
              de celles ci-dessus n'a aucun effet.

              Le fichier /proc/[pid]/clear_refs n'est présent que si l'option
              de configuration du noyau CONFIG_PROC_PAGE_MONITOR a été
              validée.

       /proc/[pid]/cmdline
              Ce fichier contient la ligne de commande complète du processus,
              sauf s'il s'agit d'un zombie. Dans ce dernier cas, il n'y a rien
              dans ce fichier : c'est-Ã -dire qu'une lecture de ce fichier ne
              retournera aucun caractère. Les paramètres de la ligne de
              commande apparaissent dans ce fichier comme un ensemble de
              chaînes séparées par des octets nuls (« \0 »), avec un
              octet nul supplémentaire après la dernière chaîne.

       /proc/[pid]/coredump_filter (depuis le noyau 2.6.23)
              Consultez core(5).

       /proc/[pid]/cpuset (depuis le noyau 2.6.12)
              Consultez cpuset(7).

       /proc/[pid]/cwd
              Lien symbolique vers le répertoire de travail actuel du
              processus. Pour obtenir le répertoire de travail du processus
              20 par exemple, vous pouvez faire ceci :

                  $ cd /proc/20/cwd; /bin/pwd

              Notez que la commande directe pwd est souvent une commande
              interne de l'interpréteur de commandes, et qu'elle risque de ne
              pas fonctionner correctement. Avec bash(1), vous pouvez utiliser
              pwd -P.

              Dans un traitement multiprocessus (multithreaded), le contenu de
              ce lien symbolique n'est pas disponible si le processus
              principal est déjà  terminé (typiquement par un appel Ã
              pthread_exit(3).

       /proc/[pid]/environ
              Ce fichier contient l'environnement du processus. Les entrées
              sont séparées par des caractères nuls (« \0 »), et il
              devrait y en avoir un à la fin du fichier. Ainsi, pour afficher
              l'environnement du processus numéro 1, vous pouvez utiliser :

                  $ strings /proc/1/environ

       /proc/[pid]/exe
              Sous Linux 2.2 et ultérieur, ce fichier est un lien symbolique
              représentant le chemin réel de la commande en cours
              d'exécution. Ce lien symbolique peut être déréférencé
              normalement ; tenter de l'ouvrir ouvrira le fichier exécutable.
              Vous pouvez même entrer /proc/[pid]/exe pour lancer une autre
              instance du même processus [pid] indiqué. Pour les
              multiprocessus, le contenu de ce lien symbolique n'est pas
              disponible si le processus principal s'est déjà terminé
              (typiquement par l'appel de pthread_exit(3)).

              Sous Linux 2.0 et précédents, /proc/[pid]/exe était un
              pointeur sur le fichier binaire exécuté, qui apparaissait sous
              forme de lien symbolique. Un appel système readlink(2) sur ce
              fichier renvoyait une chaîne de la forme :

                  [périphérique]:inÅud

              Par exemple, [0301]:1502 correspond à  l'inÅud 1502 du
              périphérique ayant le numéro majeur 03 (disque IDE, MFM,
              etc.) et mineur 01 (première partition du premier disque).

              On peut utiliser find(1) avec l'option -inum pour retrouver le
              fichier exécutable à  partir du numéro d'inÅud.

       /proc/[pid]/fd/
              Il s'agit d'un sous-répertoire contenant une entrée pour
              chaque fichier ouvert par le processus. Chaque entrée a le
              descripteur du fichier pour nom, et est représentée par un
              lien symbolique vers le vrai fichier. Ainsi, 0 correspond Ã
              l'entrée standard, 1 à la sortie standard, 2 à la sortie
              d'erreur, etc.

              Pour les descripteurs de fichier de tubes et sockets, les
              entrées seront des liens symboliques dont le contenu est le
              type de fichier avec lâinÅud. Un appel de readlink(2) sur ce
              fichier renvoie une chaîne au format :

                  type:[inÅud]

              Par exemple, socket:[2248868] sera une socket est son inÅud est
              2248868. Pour les sockets, cet inÅud permet de trouver plus de
              renseignements dans un des fichiers de /proc/net/.

              Pour les descripteurs de fichier sans inÅud correspondant (par
              exemple les descripteurs de fichier produits par
              epoll_create(2), eventfd(2), inotify_init(2), signalfd(2) et
              timerfd(2)), lâentrée sera un lien symbolique avec un contenu
              de la forme :

                  inÅud_anon:<type-fichier>

              Dans certains cas, le type-fichier est entouré de crochets.

              Par exemple, un descripteur de fichier epoll aura un lien
              symbolique dont le contenu est la chaîne
              anon_inode:[eventpoll].

              Dans un traitement multiprocessus (multithreaded), le contenu de
              ce répertoire n'est pas disponible si le processus principal
              est déjà terminé (typiquement par l'appel de pthread_exit(3).

              Les programmes qui prennent un nom de fichier comme paramètre
              de la ligne de commande mais qui ne lisent pas l'entrée
              standard si aucun paramètre n'est fourni, ou qui écrivent dans
              un fichier indiqué par un paramètre de la ligne de commande
              sans écrire sur la sortie standard si aucun paramètre n'est
              fourni, peuvent néanmoins utiliser l'entrée standard et la
              sortie standard par l'intermédiaire de /proc/[pid]/fd. Par
              exemple, en supposant que l'option -i indique le nom du fichier
              d'entrée et l'option -o le nom du fichier de sortie :

                  $ tototiti -i /proc/self/fd/0 -o /proc/self/fd/1 ...

              et vous avez alors réalisé un filtre.

              /proc/self/fd/N est approximativement identique à /dev/fd/N sur
              certains systèmes UNIX et pseudo-UNIX. D'ailleurs la plupart
              des scripts MAKEDEV de Linux lient symboliquement en fait
              /dev/fd à /proc/self/fd.

              La plupart des systèmes fournissent les liens symboliques
              /dev/stdin, /dev/stdout et /dev/stderr, qui sont respectivement
              liés aux fichiers 0, 1 et 2 de /proc/self/fd. Par conséquent,
              l'exemple précédent peut être écrit de la façon suivante :

                  $ foobar -i /dev/stdin -o /dev/stdout ...

       /proc/[pid]/fdinfo/ (depuis le noyau 2.6.22)
              Il s'agit d'un sous-répertoire contenant une entrée pour
              chaque fichier ouvert par le processus, nommé par son
              descripteur de fichier. Le contenu de chaque fichier peut être
              lu afin d'obtenir des informations sur le descripteur de fichier
              correspondant, par exemple :

                  $ cat /proc/12015/fdinfo/4
                  pos:    1000
                  flags:  01002002

              Le champ pos est un nombre décimal indiquant la position de la
              tête de lecture. Le champ flags est un nombre octal indiquant
              les modes d'accès au fichier ainsi que ses attributs d'état
              (consultez open(2)).

              Les fichiers de ce répertoire ne sont accessibles en lecture
              que par le propriétaire du processus.

       /proc/[pid]/io (depuis le noyau 2.6.20)
              Ce fichier contient des statistiques dâentrées et sorties pour
              le processus, par exemple :

                  # cat /proc/3828/io
                  rchar: 323934931
                  wchar: 323929600
                  syscr: 632687
                  syscw: 632675
                  read_bytes: 0
                  write_bytes: 323932160
                  cancelled_write_bytes: 0

              Les champs sont les suivants.

              rchar : caractères lus
                     Le nombre dâoctets lus sur le support de stockage que
                     cette tâche a provoqué. Câest juste la somme dâoctets
                     que ce processus a passé à read(2) et aux appels
                     système similaires. Cela comprend des choses comme les
                     entrées et sorties du terminal et ne dépend pas du fait
                     que de véritables entrées et sorties du disque physique
                     aient été nécessaires ou non (la lecture pourrait
                     avoir été réalisée à partir des pagecache).

              wchar : caractères écrits
                     Le nombre dâoctets écrits, ou à  écrire, sur le disque
                     que cette tâche a provoqué. Des limitations similaires
                     Ã  celles de rchar sâappliquent.

              syscr : appels système lus
                     Tentative de décompte du nombre dâopérations dâentrées
                     et sorties lues â câest-à -dire, des appels système
                     comme read(2) et pread(2).

              syscw : appels système écrits
                     Tentative de décompte du nombre dâopérations dâentrées
                     et sorties écrites â câest-à -dire, des appels système
                     comme write(2) et pwrite(2).

              read_bytes : octets lus
                     Tentative de décompte du nombre dâoctets que ce
                     processus a vraiment forcé à récupérer sur la couche
                     de stockage. Câest précis pour les systèmes de fichiers
                     Ã  base de blocs.

              write_bytes : octets écrits
                     Tentative de décompte du nombre dâoctets que ce
                     processus a forcé à envoyer vers la couche de stockage.

              cancelled_write_bytes :
                     La grosse inexactitude ici est la troncature. Si un
                     processus écrit 1 Mo vers un fichier puis efface ce
                     fichier, il nâaura de fait réalisé aucune écriture.
                     Pourtant, il sera compté comme ayant provoqué 1 Mo
                     dâécriture. Autrement dit, ce champ représente le
                     nombre dâoctets que ce processus nâa pas pu écrire, en
                     tronquant les pagecache. Une tâche peut aussi provoquer
                     des entrées et sorties « négatives ». Si cette tâche
                     tronque quelques pagecache sales, certaines des entrées
                     et sorties qui ont été comptabilisées pour une autre
                     tâche (dans son write_bytes) nâarriveront pas.

              Remarque : dans lâimplémentation actuelle, les choses sont un
              peu en situation de compétition sur les systèmes 32 bits : si
              le processus B lit le /proc/[pid]/io du processus B pendant que
              ce dernier est en train de mettre à jour un de ces compteurs en
              64 bits, le processus A pourrait voir un résultat
              intermédiaire.

       /proc/[pid]/limits (depuis le noyau 2.6.24)
              Ce fichier indique les limites souples et strictes ainsi que les
              unités de mesure de chaque limite de ressources du processus
              (consultez getrlimit(2)). Jusqu'Ã  Linux 2.6.35 inclus, ce
              fichier est protégé de telle sorte que seul l'UID réel du
              processus puisse le lire. Depuis Linux 2.6.36, ce fichier est
              lisible par tout les utilisateurs du système.

       /proc/[pid]/map_files/ (depuis le noyau 3.3)
              Ce sous-répertoire contient des entrées correspondant aux
              fichiers projetés en mémoire (consultez mmap(2)). Les entrées
              sont nommées par paires d'adresses (exprimées en nombres
              hexadécimaux) de début et fin de zone mémoire et sont des
              liens symboliques au fichiers projetés eux-mêmes. Voici un
              exemple, avec la sortie coupée et formatée pour tenir sur un
              affichage en 80 colonnes :

                  $ ls -l /proc/self/map_files/
                  lr--------. 1 root root 64 Apr 16 21:31
                              3252e00000-3252e20000 -> /usr/lib64/ld-2.15.so
                  ...

              Bien que ces entrées soient présentes pour des zones de
              mémoire ayant été projetées avec l'attribut MAP_FILE, la
              façon dont la mémoire partagée anonyme (les zones créées
              avec les attributs MAP_ANON | MAP_SHARED) est implémentée dans
              Linux signifie que ce genre de zones apparaissent aussi dans ce
              répertoire. Voici un exemple où le fichier cible est le
              /dev/zero effacé :


                  lrw-------. 1 root root 64 Apr 16 21:33
                              7fc075d2f000-7fc075e6f000 -> /dev/zero (effacé)

              Ce répertoire n'existe que si l'option de configuration du
              noyau CONFIG_CHECKPOINT_RESTORE a été validée.

       /proc/[pid]/maps
              Fichier contenant les régions de la mémoire actuellement
              projetées et leurs autorisations d'accès. Consultez mmap(2)
              pour de plus amples renseignements sur les projections en
              mémoire.

              Le format du fichier est :

       adresse          droits posit. périph. inÅud      chemin
       00400000-00452000 r-xp 00000000 08:02 173521      /usr/bin/dbus-daemon
       00651000-00652000 r--p 00051000 08:02 173521      /usr/bin/dbus-daemon
       00652000-00655000 rw-p 00052000 08:02 173521      /usr/bin/dbus-daemon
       00e03000-00e24000 rw-p 00000000 00:00 0           [heap]
       00e24000-011f7000 rw-p 00000000 00:00 0           [heap]
       ...
       35b1800000-35b1820000 r-xp 00000000 08:02 135522  /usr/lib64/ld-2.15.so
       35b1a1f000-35b1a20000 r--p 0001f000 08:02 135522  /usr/lib64/ld-2.15.so
       35b1a20000-35b1a21000 rw-p 00020000 08:02 135522  /usr/lib64/ld-2.15.so
       35b1a21000-35b1a22000 rw-p 00000000 00:00 0
       35b1c00000-35b1dac000 r-xp 00000000 08:02 135870  /usr/lib64/libc-2.15.so
       35b1dac000-35b1fac000 ---p 001ac000 08:02 135870  /usr/lib64/libc-2.15.so
       35b1fac000-35b1fb0000 r--p 001ac000 08:02 135870  /usr/lib64/libc-2.15.so
       35b1fb0000-35b1fb2000 rw-p 001b0000 08:02 135870  /usr/lib64/libc-2.15.so
       ...
       f2c6ff8c000-7f2c7078c000 rw-p 00000000 00:00 0    [stack:986]
       ...
       7fffb2c0d000-7fffb2c2e000 rw-p 00000000 00:00 0   [stack]
       7fffb2d48000-7fffb2d49000 r-xp 00000000 00:00 0   [vdso]

              Le champ adresse correspond à l'espace d'adressage du processus
              que la projection occupe. le champ droits est un ensemble
              d'autorisations :

                   r = lecture
                   w = écriture
                   x = exécution
                   s = partage
                   p = privé (copie lors de l'écriture)

              Le champ posit. est la position dans le fichier ou autre,
              périph.  correspond à  la paire (majeur:mineur). inÅud est
              l'inÅud sur ce périphérique. 0 signifie qu'aucun inÅud n'est
              associé à cette zone mémoire, comme c'est le cas avec BSS
              (données non initialisées).

              Le champ chemin sera normalement le fichier qui s'appuie sur la
              projection. Pour les fichiers ELF, faire correspondre le champ
              chemin est facile en regardant le champ Offset des en-têtes du
              programme ELF (readelf -l).

              Des pseudochemins pratiques supplémentaires existent.

                   [stack]
                          La pile du processus initial (aussi connu comme le
                          thread principal).

                   [stack:<tid>] (depuis Linux 3.4)
                          Une pile de thread (où <tid> est un identifiant de
                          thread). Cela correspond au chemin
                          /proc/[pid]/task/[tid]/.

                   [vdso] L'objet virtuel partagé lié dynamiquement.

                   [heap] Le tas du processus.

              Si le champ chemin est vide, c'est une projection anonyme telle
              qu'obtenue par la fonction mmap(2). Faire correspondre cela Ã
              une source de processus est compliqué, sauf en l'exécutant Ã
              l'aide de gdb(1), strace(1) ou similaire.

              Sous Linux 2.0, aucun champ n'indique le chemin d'accès.

       /proc/[pid]/mem
              Ce fichier permet d'accéder à la mémoire d'un processus au
              travers de open(2), read(2), et lseek(2).

       /proc/[pid]/mountinfo (depuis Linux 2.6.26)
              Ce fichier contient des informations relatives aux points de
              montage. Il contient des lignes de la forme :

              36 35 98:0 /mnt1 /mnt2 rw,noatime master:1 - ext3 /dev/root rw,errors=continue
              (1)(2)(3)   (4)   (5)      (6)      (7)   (8) (9)   (10)         (11)

              Les nombres entre paranthèses sont des étiquettes pour les
              descriptions suivantes :

              (1)  mount ID : identifiant unique du montage (peut être
                   réutilisé après un umount(2)).

              (2)  parent ID : identifiant du montage parent (ou de lui-même
                   pour le sommet de la hiérarchie).

              (3)  major:minor : valeur de st_dev pour les fichiers sur le
                   système de fichiers (consultez stat(2)).

              (4)  root : racine du montage dans le système de fichiers.

              (5)  mount point : point de montage relatif à la racine du
                   processus.

              (6)  mount options : options par montage.

              (7)  optional fields : zéro ou plusieurs champs de la forme
                   « tag[:value] ».

              (8)  separator : indique la fin des champs optionnels.

              (9)  filesystem type : nom du système de fichiers de la forme
                   « type[.subtype] ».

              (10) mount source : informations spécifiques au système de
                   fichiers ou « none ».

              (11) super options : options par superbloc.

              Les outils d'analyse devraient ignorer les champs optionnels non
              reconnus. Les champs optionnels actuellement disponibles sont :

                   shared:X          le montage est partagé par le groupe
                                     pair X

                   master:X          le montage est esclave pour le groupe
                                     pair X

                   propagate_from:X  le montage est esclave et reçoit des
                                     propagations provenant du groupe pair X
                                     (*)

                   unbindable        le point de montage ne peut pas être
                                     lié

              (*) X est le group pair dominant le plus proche sous la racine
              du processus. Si X est le maître immédiat du montage ou s'il
              n'y a pas de group pair dominant sous la même racine, alors
              seul le champ « master:X » est présent et pas le champ
              « propagate_from:X ».

              Pour plus d'informations sur les propagations de montage, voir
              Documentation/filesystems/sharedsubtree.txt dans l'arborescence
              des sources du noyau Linux.

       /proc/[pid]/mounts (depuis Linux 2.6.17)
              C'est une liste de tous les systèmes de fichiers montés dans
              l'espace de noms de montage du processus. Le format de ce
              fichier est documenté dans fstab(5). Depuis la version 2.6.15
              du noyau, ce fichier peut être pollué : après avoir ouvert le
              fichier en lecture, une modification de ce fichier (par exemple,
              le montage ou le démontage d'un système de fichiers) provoque
              le marquage par select(2) du descripteur de fichier comme étant
              lisible, et poll(2) et epoll_wait(2) marquent le fichier comme
              étant en erreur.

       /proc/[pid]/mountstats (depuis Linux 2.6.17)
              Ce fichier exporte des informations (statistiques,
              configuration) relatives aux points de montage dans l'espace de
              noms du processus. Les lignes de ce fichier sont de la forme :

              device /dev/sda7 mounted on /home with fstype ext3 [statistics]
              (       1      )            ( 2 )             (3 ) (4)

              Les champs de chaque ligne sont :

              (1)  Le nom du périphérique monté (ou « nodevice » s'il n'y
                   a pas de périphérique correspondant).

              (2)  Le point de montage dans l'arborescence du système de
                   fichiers.

              (3)  Le type du système de fichiers.

              (4)  Statistiques optionnelles et informations de configuration.
                   Actuellement (Linux 2.6.26), seuls les systèmes de
                   fichiers NFS exportent des informations à travers ce
                   champ.

              Ce fichier n'est accessible en lecture que par le propriétaire
              du processus.

       /proc/[pid]/ns/ (depuis Linux 3.0)
              Il s'agit d'un sous-répertoire contenant une entrée pour
              chaque espace de noms qui peut être manipulé avec setns(2).
              Pour plus de précisions sur les espaces de noms, consultez
              clone(2).

       /proc/[pid]/ns/ipc (depuis Linux 3.0)
              Le montage lié de ce fichier (consultez mount(2)) ailleurs dans
              le système de fichiers garde l'espace de noms IPC du processus
              indiqué par pid opérationnel même si tous les processus
              actuellement dans l'espace de noms se terminent.

              L'ouverture de ce fichier renvoie un descripteur de fichier pour
              l'espace de noms IPC du processus indiqué par pid. Tant que ce
              descripteur de fichier reste ouvert, l'espace de noms IPC
              restera opérationnel, même si tous les processus de l'espace
              de noms se terminent. Le descripteur de fichier peut être
              passé à setns(2).

       /proc/[pid]/ns/net (depuis Linux 3.0)
              Le montage lié de ce fichier (consultez mount(2)) ailleurs dans
              le système de fichiers garde l'espace de noms réseau du
              processus indiqué par pid opérationnel même si tous les
              processus de l'espace de noms se terminent.

              L'ouverture de ce fichier renvoie un descripteur de fichier pour
              l'espace de noms réseau du processus indiqué par pid. Tant que
              ce descripteur de fichier reste ouvert, l'espace de noms réseau
              restera opérationnel, même si tous les processus de l'espace
              de noms se terminent. Le descripteur de fichier peut être
              passé à setns(2).

       /proc/[pid]/ns/uts (depuis Linux 3.0)
              Le montage lié de ce fichier (consultez mount(2)) ailleurs dans
              le système de fichiers garde l'espace de noms UTS du processus
              indiqué par pid opérationnel même si tous les processus de
              l'espace de noms se terminent.

              L'ouverture de ce fichier renvoie un descripteur de fichier pour
              l'espace de noms UTS du processus indiqué par pid. Tant que ce
              descripteur de fichier reste ouvert, l'espace de noms UTS
              restera opérationnel, même si tous les processus de l'espace
              de noms se terminent. Le descripteur de fichier peut être
              passé à setns(2).

       /proc/[pid]/numa_maps (depuis Linux 2.6.14)
              Consultez numa(7).

       /proc/[pid]/oom_adj (depuis Linux 2.6.11)
              Ce fichier permet d'ajuster la notation utilisée pour
              sélectionner le processus qui sera tué dans une situation de
              mémoire saturée. Le noyau utilise cette valeur pour une
              opération de décalage sur la valeur oom_score du processus :
              les valeurs valables sont dans l'intervalle de -16 Ã  +15 plus
              la valeur spéciale -17, qui désactive complètement la mise Ã
              mort sur mémoire saturée du processus. Une notation négative
              diminue la probabilité.

              La valeur par défaut de ce fichier est 0 ; un nouveau processus
              hérite de la valeur oom_adj de son père. Un processus doit
              être privilégié (CAP_SYS_RESOURCE) pour mettre à jour ce
              fichier.

              Depuis Linux 2.6.36, l'utilisation de ce fichier est
              déconseillée en faveur de /proc/[pid]/oom_score_adj.

       /proc/[pid]/oom_score (depuis Linux 2.6.11)
              Ce fichier indique la notation actuelle donnée par le noyau
              pour sélectionner un processus pour une mise à mort sur
              mémoire saturée. Une notation élevée signifie que le
              processus a plus de chance d'être sélectionné pour une mise
              à mort sur mémoire saturée. La base de cette notation est la
              quantité de mémoire utilisée par le processus. Cette notation
              peut augmenter (+) ou diminuer (-) en fonction des facteurs
              suivants :

              * le processus crée beaucoup d'enfants avec fork(2) (+) ;

              * le processus s'exécute depuis longtemps ou a consommé
                beaucoup de temps processeur (-) ;

              * le processeur a une faible valeur de courtoisie (c'est-Ã -dire
                positive) (+) ;

              * le processus est privilégié (-) ; et

              * le processus effectue des accès matériels directs (-).

              oom_score reflète également l'ajustement indiqué dans les
              réglages oom_score_adj ou oom_adj du processus.

       /proc/[pid]/oom_score_adj (depuis Linux 2.6.36)
              Ce fichier permet d'ajuster l'heuristique de mauvaise conduite
              (« badness ») utilisée pour sélectionner le processus qui
              sera tué dans une situation de mémoire saturée.

              L'heuristique de mauvaise conduite assigne une valeur à chaque
              tâche candidate entre 0 (ne jamais tuer) et 1000 (toujours
              tuer) pour déterminer le processus ciblé. Les unités sont Ã
              peu près proportionnelles à la quantité de mémoire allouée
              dont le processus pourrait bénéficier, à partir de
              l'estimation de son utilisation actuelle de mémoire et d'espace
              d'échange. Par exemple si une tâche utilise toute la mémoire
              allouée, sa notation de mauvaise conduite sera 1000. S'il
              utilise la moitié de sa mémoire alloué, sa notation sera 500.

              Un autre facteur est inclus dans la notation de mauvaise
              conduite : 3 % de mémoire supplémentaire est allouée aux
              processus du superutilisateur par rapport aux autres tâches.

              La quantité de mémoire « permise » dépend du contexte dans
              lequel la mise à mort sur mémoire saturée a été effectuée.
              Si elle est causée par la saturation de mémoire assignée au
              cpuset de tâche allouant, la mémoire permise représente
              l'ensemble de mems assignées à ce cpuset (consultez
              cpuset(7)). Si elle est provoquée par la saturation de nÅud(s)
              de mempolicy, la mémoire permise représente l'ensemble de
              nÅuds de mempolicy. Si elle est due à  l'atteinte d'une limite
              de mémoire (ou limite d'espace d'échange), la mémoire
              allouée est cette limite configurée. Enfin, si la cause est la
              saturation de mémoire du système complet, la mémoire permise
              représente toutes les ressources allouables.

              La valeur de oom_score_adj est ajoutée à la notation de
              mauvaise conduite avant qu'elle ne soit utilisée pour
              déterminer la tâche à tuer. Les valeurs acceptables sont
              comprises entre -1000 (OOM_SCORE_ADJ_MIN) et +1000
              (OOM_SCORE_ADJ_MAX). Cela permet à l'espace utilisateur de
              contrôler les préférences de mise à mort sur mémoire
              saturée, entre toujours préférer une tâche en particulier ou
              désactiver complètement la mise à mort sur mémoire saturée.
              La plus faible valeur possible, -1000, est équivalente Ã
              désactiver complètement la mise à mort sur mémoire saturée
              pour cette tâche, puisque la notation de mauvaise conduite sera
              toujours 0.

              Par conséquent, il est trivial pour l'espace utilisateur de
              définir la quantité de mémoire à considérer pour chaque
              tâche. Configurer une valeur oom_score_adj de +500, par
              exemple, est à peu près équivalent à permettre au reste des
              tâches partageant les mêmes ressources du système, de cpuset,
              de mempolicy ou du contrôleur de mémoire d'utiliser au moins
              50 % de mémoire en plus. Une valeur de -500, au contraire,
              serait à peu près équivalent à ne prendre en compte que la
              moitié de l'espace mémoire alloué à la tâche pour la
              notation contre cette tâche.

              Pour des raisons de compatibilité ascendante avec les
              précédents noyaux, /proc/[pid]/oom_adj peut encore être
              utilisé pour ajuster la notation de mauvaise conduite. Sa
              valeur est mise à l'échelle linéairement avec oom_score_adj.

              Ãcrire vers /proc/[pid]/oom_score_adj ou /proc/[pid]/oom_adj
              modifiera l'autre avec sa valeur mise à l'échelle.

       /proc/[pid]/root
              UNIX et Linux gèrent une notion de racine du système de
              fichiers par processus, configurée avec l'appel système
              chroot(2). Ce fichier est un lien symbolique qui pointe vers le
              répertoire racine du processus, et se comporte de la même
              façon que exe et fd/*.

              Dans un traitement multiprocessus (multithreaded), le contenu de
              ce lien symbolique n'est pas disponible si le processus
              principal est déjà  terminé (typiquement par un appel Ã
              pthread_exit(3).

       /proc/[pid]/smaps (depuis Linux 2.6.14)
              Ce fichier affiche la mémoire utilisée par les cartes de
              chacun des processus. Pour chacune des cartes, il y a une série
              de lignes comme les suivantes :

                  00400000-0048a000 r-xp 00000000 fd:03 960637       /bin/bash
                  Size:                552 kB
                  Rss:                 460 kB
                  Pss:                 100 kB
                  Shared_Clean:        452 kB
                  Shared_Dirty:          0 kB
                  Private_Clean:         8 kB
                  Private_Dirty:         0 kB
                  Referenced:          460 kB
                  Anonymous:             0 kB
                  AnonHugePages:         0 kB
                  Swap:                  0 kB
                  KernelPageSize:        4 kB
                  MMUPageSize:           4 kB
                  Locked:                0 kB

              La première de ces lignes montre les mêmes informations que
              celles affichées pour la projection mémoire dans
              /proc/[pid]/maps. Les lignes suivantes montrent la taille de la
              projection, la quantité de projection actuellement résidente
              en mémoire vive (« Rss »), le partage équitable
              (« proportional share ») de cette projection pour le processus
              (« Pss »), le nombre de pages partagées propres ou sales de
              la projection et le nombre de pages privées propres ou sales.
              « Referenced » indique la quantité de mémoire actuellement
              marquée comme référencée ou accédée. « Anonymous »
              montre la quantité de mémoire qui nâappartient à  aucun
              fichier. « Swap » montre la quantité de mémoire aussi
              utilisée qui serait anonyme, mais est en espace dâéchange.

              Lâentrée « KernelPageSize » est la taille de page utilisée
              par le noyau pour sauvegarder une zone de mémoire virtuelle
              (VMA). Cela correspond à la taille utilisée par le MMU dans la
              majorité des cas. Cependant, un contre-exemple existe sur les
              noyaux PPC64 où un noyau utilisant 64 K comme taille de page de
              base pourrait encore utiliser 4 K pages pour le MMU sur les
              anciens processeurs. Pour se démarquer, ce correctif signale
              « MMUPageSize » comme taille de page utilisée par le MMU.

              Le « Locked » indique si la projection est verrouillée en
              mémoire.

              Le champ « VmFlags » représente les attributs du noyau,
              associés à la zone de mémoire virtuelle particulière,
              encodés en deux lettre. Les codes sont les suivants :

                  rd  - lisible
                  wr  - accessible en écriture
                  ex  - exécutable
                  sh  - partagé
                  mr  - peut lire
                  mw  - peut écrire
                  me  - peut exécuter
                  ms  - peut partager
                  gd  - le segment de pile diminue
                  pf  - intervalle PFN pur
                  dw  - écriture désactivée vers le fichier projeté
                  lo  - les pages sont verrouillée en mémoire
                  io  - zone dâE/S de mémoire projetée
                  sr  - conseil de lecture séquentielle fourni
                  rr  - conseil de lecture aléatoire fourni
                  dc  - ne pas copier la zone lors dâune création de fils
                  de  - ne pas étendre la zone lors dâune reprojection
                  ac  - la zone est responsable
                  nr  - lâespace dâéchange nâest pas réservé pour la zone
                  ht  - la zone utilise des pages immenses TLB
                  nl  - projection non linéaire
                  ar  - attribut spécifique à  lâarchitecture
                  dd  - ne pas inclure la zone dans lâimage mémoire (core
              dump)
                  sd  - attribut soft-dirty
                  mm  - zone de carte mélangée
                  hg  - attribut de conseil de page immense
                  nh  - attribut de conseil de page non immense
                  mg  - attribut de conseil fusionnable

              Le fichier /proc/[pid]/smaps n'est présent que si l'option de
              configuration du noyau CONFIG_PROC_PAGE_MONITOR a été
              validée.

       /proc/[pid]/stack (depuis Linux 2.6.29)
              Ce fichier fournit une trace symbolique des appels de fonction
              dans cette pile noyau du processus. Ce fichier n'existe que si
              le noyau a été compilé avec l'option de configuration
              CONFIG_STACKTRACE.

       /proc/[pid]/stat
              Informations sur l'état du processus. C'est utilisé par ps(1).
              La définition se trouve dans /usr/src/linux/fs/proc/array.c.

              Les champs sont, dans l'ordre, et avec leur propre
              spécificateur de format de type scanf(3) :

              pid %d      (1) Identifiant du processus.

              comm %s     (2) Nom du fichier exécutable entre parenthèses.
                          Il est visible que l'exécutable ait été
                          déchargé sur l'espace d'échange (« swappé »)
                          ou pas.

              state %c    (3) Un caractère parmi « RSDZTW » ou R signifie
                          que le processus est en cours d'exécution, S
                          endormi dans un état non interruptible, D en
                          attente de disque de manière non interruptible, Z
                          zombie, T qu'il est suivi pour une trace ou arrêté
                          par un signal et W qu'il effectue une pagination
                          vers l'espace d'échange.

              ppid %d     (4) PID du processus parent.

              pgrp %d     (5) Identifiant de groupe de processus du processus.

              session %d  (6) Identifiant de session du processus.

              tty_nr %d   (7) Terminal de contrôle du processus (le numéro
                          mineur de périphérique dans la combinaison des
                          bits 31 à 20 et 7 à 0 ; le numéro majeur est dans
                          les bits 15 Ã  8).

              tpgid %d    (8) Identifiant du groupe de processus
                          d'arrière-plan du terminal de contrôle du
                          processus.

              flags %u (était %lu avant Linux 2.6.22)
                          (9) Mot contenant les indicateurs du noyau pour le
                          processus. Pour en savoir plus sur la signification
                          des bits, consultez les définitions de PF_* dans le
                          fichier <linux/sched.h> des sources du noyau Linux.
                          Les détails dépendent de la version du noyau.

              minflt %lu  (10) Nombre de fautes mineures que le processus a
                          déclenchées et qui n'ont pas nécessité le
                          chargement d'une page mémoire depuis le disque.

              cminflt %lu (11) Nombre de fautes mineures que les enfants en
                          attente du processus ont déclenchées.

              majflt %lu  (12) Nombre de fautes majeures que le processus a
                          déclenchées et qui ont nécessité un chargement
                          de page mémoire depuis le disque.

              cmajflt %lu (13) Nombre de fautes majeures que les enfants en
                          attente du processus ont déclenchées.

              utime %ld   (14) Temps passé en mode utilisateur par le
                          processus, mesuré en top d'horloge (divisé par
                          sysconf(_SC_CLK_TCK)). Cela comprend le temps de
                          client, guest_time (temps passé à exécuter un
                          processeur virtuel, voir plus loin), de sorte que
                          les applications qui ne sont pas au courant du champ
                          « temps de client » ne perdent pas ce temps dans
                          leurs calculs.

              stime %ld   (15) Temps passé en mode noyau par le processus,
                          mesuré en top d'horloge (divisé par
                          sysconf(_SC_CLK_TCK)).

              cutime %ld  (16) Temps passé en mode utilisateur par le
                          processus et ses descendants, mesuré en top
                          d'horloge (divisé par sysconf(_SC_CLK_TCK)).
                          Consultez aussi times(2)). Cela comprend le temps de
                          client, cguest_time (temps passé à exécuter un
                          processeur virtuel, voir plus loin).

              cstime %ld  (17) Temps passé en mode noyau par le processus et
                          ses descendants, mesuré en top d'horloge (divisé
                          par sysconf(_SC_CLK_TCK)).

              priority %ld
                          (18) (Explications pour Linux 2.6) Pour les
                          processus s'exécutant sous une politique
                          d'ordonnancement temps réel (policy plus loin ;
                          voir sched_setscheduler(2)), il s'agit de la valeur
                          négative de la politique d'ordonnancement, moins
                          un ; c'est-Ã -dire un nombre dans l'intervalle -2 Ã
                          -100, correspondant aux priorités temps réel 1 Ã
                          99. Pour les processus s'exécutant sous une
                          politique d'ordonnancement qui ne soit pas temps
                          réel, il s'agit de la valeur brute de courtoisie
                          (setpriority(2)) comme représentée dans le noyau.
                          Le noyau enregistre les valeurs de courtoisie sous
                          forme de nombre de l'intervalle 0 (haute) Ã  39
                          (faible), correspondant à un intervalle de
                          courtoisie visible par l'utilisateur de -20 Ã  19.

                          Avant Linux 2.6, c'était une valeur d'échelle
                          basée sur la pondération de l'ordonnanceur fournie
                          au processus.

              nice %ld    (19) Valeur de courtoisie (consultez
                          setpriority(2)), une valeur dans l'intervalle 19
                          (faible priorité) à -19 (haute priorité).

              num_threads %ld
                          (20) Nombre de threads dans ce processus (depuis
                          Linux 2.6). Avant le noyau 2.6, ce champ était
                          codé en dur à 0 pour remplacer un champ supprimé
                          auparavant.

              itrealvalue %lu
                          (21) Nombre de jiffies avant que le signal SIGALRM
                          suivant soit envoyé au processus par un
                          temporisateur interne. Depuis le noyau 2.6.17, ce
                          champ n'est plus maintenu et est codé en dur à 0.

              starttime %llu (était %lu avant Linux 2.6)
                          (22) Instant auquel le processus a démarré après
                          le démarrage du système. Exprimé en jiffies avant
                          le noyau 2.6, il est désormais exprimé en top
                          d'horloge (divisé par sysconf(_SC_CLK_TCK)).

              vsize %lu   (23) Taille de la mémoire virtuelle en octet.

              rss %lu     (24) Taille de l'ensemble résident (Resident Set
                          Size) : nombre de pages dont le processus dispose en
                          mémoire réelle. Il ne s'agit que des pages
                          contenant les espaces de code, donnée et pile. Cela
                          n'inclut ni les pages en attente de chargement ni
                          celles qui ont été déchargées.

              rsslim %lu  (25) Limite souple actuelle en octet du RSS du
                          processus ; consultez la description de RLIMIT_RSS
                          dans getrlimit(2).

              startcode %lu
                          (26) Adresse au-dessus de laquelle le code du
                          programme peut s'exécuter.

              endcode %lu (27) Adresse au-dessous de laquelle le code du
                          programme peut s'exécuter.

              startstack %lu
                          (28) Adresse de début (c'est-à -dire le bas) de la
                          pile.

              kstkesp %lu (29) Valeur actuelle du pointeur de pile (ESP),
                          telle qu'on la trouve dans la page de pile du noyau
                          pour ce processus.

              kstkeip %lu (30) EIP actuel (pointeur d'instructions).

              signal %ld  (31) Masque des signaux en attente, affiché sous
                          forme d'un nombre décimal. Obsolète car il ne
                          fournit pas d'informations sur les signaux temps
                          réel ; utilisez plutôt /proc/[pid]/status.

              blocked %ld (31) Masque des signaux bloqués, affiché sous
                          forme d'un nombre décimal. Obsolète car il ne
                          fournit pas d'informations sur les signaux temps
                          réel ; utilisez plutôt /proc/[pid]/status.

              sigignore %ld
                          (33) Masque des signaux ignorés, affiché sous
                          forme d'un nombre décimal. Obsolète car il ne
                          fournit pas d'informations sur les signaux temps
                          réel ; utilisez plutôt /proc/[pid]/status.

              sigcatch %ld
                          (34) Masque des signaux interceptés, affiché sous
                          forme d'un nombre décimal. Obsolète car il ne
                          fournit pas d'informations sur les signaux temps
                          réel ; utilisez plutôt /proc/[pid]/status.

              wchan %lu   (35) « canal » sur lequel le processus est en
                          attente. C'est l'adresse dâun endroit dans le noyau
                          où le processus est endormi. Le nom symbolique
                          correspondant est dans /proc/[pid]/wchan.

              nswap %lu   (36) Nombre de pages déplacées sur l'espace
                          d'échange (non maintenu).

              cnswap %lu  (37) Champ nswap cumulé pour les processus enfants
                          (non maintenu).

              exit_signal %d (depuis Linux 2.1.22)
                          (38) Signal à envoyer au parent lors de la mort du
                          processus.

              processor %d (depuis Linux 2.2.8)
                          (39) Numéro du processeur utilisé lors de la
                          dernière exécution.

              rt_priority %u (depuis Linux 2.5.19 ; était %lu avant
              Linux 2.6.22)
                          (40) Priorité d'ordonnancement temps réel, un
                          nombre dans l'intervalle 1 Ã  99 pour les processus
                          ordonnancés sous une politique temps réel, ou 0
                          pour les processus non temps réel (consultez
                          sched_setscheduler(2)).

              policy %u (depuis Linux 2.5.19 ; était %lu avant Linux 2.6.22)
                          (41) Politique d'ordonnancement (consultez
                          sched_setscheduler(2)). Décoder avec les constantes
                          SCHED_* de linux/sched.h.

              delayacct_blkio_ticks %llu (depuis Linux 2.6.18)
                          (42) Cumul des délais d'entrées et sorties,
                          mesuré en top horloge (centième de seconde).

              guest_time %lu (depuis Linux 2.6.24)
                          (43) Temps de client du processus (temps passé Ã
                          exécuter un processeur virtuel pour un système
                          d'exploitation client), mesuré en top d'horloge
                          (divisé par sysconf(_SC_CLK_TCK)).

              cguest_time %ld (depuis Linux 2.6.24)
                          (44) Temps de client des fils du processus, mesuré
                          en top d'horloge (divisé par sysconf(_SC_CLK_TCK)).

       /proc/[pid]/statm
              Donne des informations sur l'utilisation de la mémoire,
              mesurée en pages. Les colonnes représentent :

                  size       (1) taille totale du programme
                             (comme pour VmSize dans /proc/[pid]/status)
                  resident   (2) taille résidant en mémoire
                             (comme pour VmRSS dans /proc/[pid]/status)
                  share      (3) pages partagées (c'est-à -dire sauvegardées
                             dans un fichier)
                  text       (4) texte (code)
                  lib        (5) bibliothèque (non utilisé dans Linux 2.6)
                  data       (6) données et pile
                  dt         (7) pages touchées (dirty, non utilisé dans
                             Linux 2.6)

       /proc/[pid]/status
              Fournit l'essentiel des informations de /proc/[pid]/stat et
              /proc/[pid]/statm dans un format plus facile à lire pour les
              humains. Voici un exemple :

                  $ cat /proc/$$/status
                  Name:   bash
                  State:  S (sleeping)
                  Tgid:   3515
                  Pid:    3515
                  PPid:   3452
                  TracerPid:      0
                  Uid:    1000    1000    1000    1000
                  Gid:    100     100     100     100
                  FDSize: 256
                  Groups: 16 33 100
                  VmPeak:     9136 kB
                  VmSize:     7896 kB
                  VmLck:         0 kB
                  VmHWM:      7572 kB
                  VmRSS:      6316 kB
                  VmData:     5224 kB
                  VmStk:        88 kB
                  VmExe:       572 kB
                  VmLib:      1708 kB
                  VmPTE:        20 kB
                  Threads:        1
                  SigQ:   0/3067
                  SigPnd: 0000000000000000
                  ShdPnd: 0000000000000000
                  SigBlk: 0000000000010000
                  SigIgn: 0000000000384004
                  SigCgt: 000000004b813efb
                  CapInh: 0000000000000000
                  CapPrm: 0000000000000000
                  CapEff: 0000000000000000
                  CapBnd: ffffffffffffffff
                  Cpus_allowed:   00000001
                  Cpus_allowed_list:      0
                  Mems_allowed:   1
                  Mems_allowed_list:      0
                  voluntary_ctxt_switches:        150
                  nonvoluntary_ctxt_switches:     545

              Les champs sont les suivants.

              * Name : Commande lancée par ce processus.

              * State : Ãtat actuel du processus parmi les valeurs : « R
                (running) », « S (sleeping) », « D (disk sleep) », « T
                (stopped) », « T (tracing stop) », « Z (zombie) » ou « X
                (dead) ».

              * Tgid : Identifiant du groupe de threads (c'est-Ã -dire,
                identifiant du processus PID).

              * Pid : Identifiant de thread (consultez gettid(2)).

              * PPid : PID du processus parent.

              * TracerPid : PID du processus traçant ce processus (0 s'il
                n'est pas tracé).

              * Uid, Gid : UID (et GID) réel, effectif, sauvé et de système
                de fichiers.

              * FDSize : Nombre d'entrées de descripteurs de fichier
                actuellement alloués.

              * Groups : Liste des groupes supplémentaires.

              * VmPeak : Taille de pointe de mémoire virtuelle.

              * VmSize : Taille de mémoire virtuelle.

              * VmLck : Taille de mémoire verrouillée (consultez mlock(3)).

              * VmHWM : Taille de pointe de mémoire résidente (« High Water
                Mark »).

              * VmRSS : Taille de mémoire résidente

              * VmData, VmStk, VmExe : Taille des segments de données, de
                pile et de texte.

              * VmLib : Taille du code de bibliothèque partagée.

              * VmPTE : Taille des entrées de table de pages (depuis Linux
                2.6.10).

              * Threads : Nombre de threads dans le processus contenant ce
                thread.

              * SigQ : Ce champ contient deux nombres séparés par une barre
                oblique, qui se réfèrent aux signaux en attente pour
                l'identifiant d'utilisateur réel de ce processus. Le premier
                est le nombre de signaux en attente pour cet identifiant
                d'utilisateur réel ; le second est la limite du nombre de
                signaux pouvant être mis en attente pour ce processus
                (consultez la description de RLIMIT_SIGPENDING dans
                getrlimit(2)).

              * SigPnd, ShdPnd : Nombre de signaux en attente du thread et du
                processus dans son ensemble (consultez pthreads(7) et
                signal(7)).

              * SigBlk, SigIgn, SigCgt : Masques indiquant les signaux
                bloqués, ignorés et interceptés (consultez signal(7)).

              * CapInh, CapPrm, CapEff : Masques des capacités actives dans
                les ensembles transmissibles, permis et effectifs (consultez
                capabilities(7)).

              * CapBnd : Ensemble de limitation de capacités (Capability
                Bounding set ; depuis le noyau 2.6.26, consultez
                capabilities(7)).

              * Cpus_allowed : Masque des processeurs sur lesquels le
                processus peut s'exécuter (depuis Linux 2.6.24, consultez
                cpuset(7)).

              * Cpus_allowed_list : Pareil que précédemment, mais au format
                liste (depuis Linux 2.6.26, consultez cpuset(7)).

              * Mems_allowed : Masque des nÅuds mémoire autorisés pour ce
                processus (depuis Linux 2.6.24, consultez cpuset(7)).

              * Mems_allowed_list : Pareil que précédemment, mais au format
                liste (depuis Linux 2.6.26, consultez cpuset(7)).

              * voluntary_context_switches, nonvoluntary_context_switches :
                Nombre de basculement de contexte, volontaire ou non (depuis
                Linux 2.6.23).

       /proc/[pid]/task (depuis Linux 2.6.0-test6)
              C'est un répertoire qui comporte un sous-répertoire pour
              chacun des processus légers (threads) de la tâche. Le nom de
              chacun des sous-répertoires est l'identifiant ([tid]) du thread
              (consultez gettid(2). Dans chacun de ces sous-répertoire se
              trouvent un ensemble de fichiers ayant le même nom et contenu
              que dans les répertoires /proc/[pid]. Pour les attributs qui
              sont partagés par tous les processus, le contenu de chacun des
              fichiers se trouvant dans le sous-répertoire task/[tid] sera
              identique à celui qui se trouve dans le répertoire parent
              /proc/[pid] (par ex., pour une tâche multiprocessus, tous les
              fichiers task/[tid]/cwd auront le même contenu que le fichier
              /proc/[pid]/cwd dans le répertoire parent, puisque tous les
              processus d'une même tâche partage le même répertoire de
              travail. Pour les attributs qui sont distincts pour chacun des
              processus, les fichiers correspondants sous task/[tid] peuvent
              être différents (par ex., certains champs de chacun de
              fichiers task/[tid]/status peuvent être différents pour chaque
              processus).

              Dans un traitement multiprocessus, le contenu du répertoire
              /proc/[pid]/task n'est pas disponible si le processus principal
              est déjà terminé (typiquement lors de l'appel
              pthread_exit(3).

       /proc/[pid]/wchan (depuis Linux 2.6.0)
              Le nom symbolique correspondant à  lâendroit dans le noyau où
              le processus est endormi.

       /proc/apm
              La version du système de gestion de puissance APM et les
              informations sur l'état de la batterie si la constante
              CONFIG_APM était définie à la compilation du noyau.

       /proc/bus
              Contient des sous-répertoires pour les bus installés.

       /proc/bus/pccard
              Répertoire pour les périphériques PCMCIA si la constante
              CONFIG_PCMCIA était définie à la compilation du noyau.

       /proc/[pid]/timers (depuis Linux 3.10)
              Une liste des temporisateurs POSIX pour ce processus. Chaque
              temporisateur est indiqué par une ligne commençant par
              « ID: ». Par exemple :

                  ID: 1
                  signal: 60/00007fff86e452a8
                  notify: signal/pid.2634
                  ClockID: 0
                  ID: 0
                  signal: 60/00007fff86e452a8
                  notify: signal/pid.2634
                  ClockID: 1

              Les lignes montrées pour chaque temporisateur ont les
              significations suivantes :

              ID     Lâidentifiant de ce temporisateur. Ce nâest pas la même
                     chose que lâidentifiant de temporisateur renvoyé par
                     timer_create(2). Câest plutôt le même identifiant
                     interne au noyau qui est disponible dans champ si_timerid
                     de la structure siginfo_t (consultez sigaction(2)).

              signal Câest le numéro du signal que ce temporisateur utilise
                     pour délivrer les notifications, suivi dâune barre
                     oblique, puis de la valeur sigev_value.sival_ptr fournie
                     au gestionnaire de signal. Ce nâest valable que pour les
                     temporisateurs qui notifient à  lâaide dâun signal.

              notify La partie qui précède la barre oblique indique le
                     mécanisme que ce temporisateur utilise pour délivrer
                     des notifications, câest « thread », « signal » ou
                     « none » (aucun). Directement après la barre oblique,
                     câest soit la chaîne « tid » pour les temporisateurs
                     avec notification SIGEV_THREAD_ID, soit « pid » pour
                     les temporisateurs qui notifient avec dâautres
                     mécanismes. Après le « . », câest le PID du processus
                     auquel un signal sera délivré si le temporisateur
                     délivre les notifications à  lâaide dâun signal.

              ClockID
                     Ce champs identifie lâhorloge utilisée par le
                     temporisateur pour mesurer le temps. Pour la plupart des
                     horloges, câest un nombre qui correspond à  une ces
                     constantes CLOCK_* exposées en espace utilisateur Ã
                     lâaide de <time.h>. Les temporisateurs
                     CLOCK_PROCESS_CPUTIME_ID affichent la valeur -6 dans ce
                     champ. Les temporisateurs CLOCK_THREAD_CPUTIME_ID
                     affichent la valeur -2 dans ce champ.

       /proc/bus/pccard/drivers

       /proc/bus/pci
              Contient divers sous-répertoires de bus, et des pseudofichiers
              recélant des informations sur les bus PCI, les périphériques
              installés et leurs pilotes. Certains de ces fichiers ne sont
              pas en ASCII pur.

       /proc/bus/pci/devices
              Informations sur les périphériques PCI. Peut-être consulté
              grâce à lspci(8) et setpci(8).

       /proc/cmdline
              Arguments passés au noyau Linux lors du boot. Généralement
              par l'intermédiaire d'un gestionnaire de boot comme lilo(8) ou
              grub(8).

       /proc/config.gz (depuis Linux 2.6)
              Ce fichier indique les options de configuration qui ont été
              utilisées pour construire le noyau actuel, dans le même format
              que celui utilisé pour le fichier .config résultant de la
              configuration du noyau (en utilisant make xconfig, make config,
              ou autre). Le contenu du fichier est compressé ; parcourez le
              ou effectuez vos recherches avec zcat(1) et zgrep(1). Tant qu'il
              n'y a pas de changement dans les fichiers qui suivent, le
              contenu de /proc/config.gz est identique à celui fournit par :

                  cat /lib/modules/$(uname -r)/build/.config

              /proc/config.gz n'est fourni que si le noyau est configuré avec
              l'option CONFIG_IKCONFIG_PROC.

       /proc/cpuinfo
              Il s'agit d'informations dépendantes de l'architecture et du
              processeur utilisé. Les deux seules entrées toujours
              présentes sont processor qui donne le nombre de processeurs et
              bogomips, une constante système calculée pendant
              l'initialisation du noyau. Les machines SMP ont une ligne
              d'informations pour chaque processeur. La commande lscpu(1)
              récupère ses informations depuis ce fichier.

       /proc/devices
              Liste littérale des groupes de périphériques et des numéros
              majeurs. Cela peut servir dans les scripts MAKEDEV pour rester
              cohérent avec le noyau.

       /proc/diskstats (depuis Linux 2.5.69)
              Ce fichier contient les statistiques d'entrées et sorties du
              disque pour chaque périphérique disque. Consultez le fichier
              fourni avec les sources du noyau Linux Documentation/iostats.txt
              pour plus d'informations.

       /proc/dma
              Il s'agit d'une liste des canaux DMA (Direct Memory Acess) ISA
              en cours d'utilisation.

       /proc/driver
              Sous-répertoire vide.

       /proc/execdomains
              Liste des domaines d'exécution (personnalités).

       /proc/fb
              Information sur la mémoire d'écran Frame Buffer, lorsque la
              constante CONFIG_FB a été définie lors de la compilation du
              noyau.

       /proc/filesystems
              Liste textuelle des systèmes de fichiers qui sont pris en
              compte par le noyau, c'est-à -dire les systèmes de fichiers qui
              ont été compilés dans le noyau ou dont les modules du noyau
              sont actuellement chargés. (Consultez aussi filesystems(5)). Si
              un système de fichiers est marqué par « nodev », cela
              signifie qu'il n'a pas besoin d'un périphérique bloc pour
              être monté (par exemple un système de fichiers virtuel, un
              système de fichiers réseau).

              Ce fichier peut éventuellement être utilisé par mount(8)
              lorsqu'aucun système de fichiers n'est indiqué et qu'il
              n'arrive pas à déterminer le type du système de fichiers.
              Alors, les systèmes de fichiers que comportent ce fichier sont
              essayés (à l'exception de ceux qui sont marqués par
              « nodev »).

       /proc/fs
              Contient des sous-répertoires qui contiennent à leur tour des
              informations sur les systèmes de fichiers montés.

       /proc/ide
              Le répertoire /proc/ide existe sur les systèmes ayant un bus
              IDE. Il y a des sous-répertoires pour chaque canal IDE et les
              périphériques attachés. Les fichiers contiennent :

                  cache              taille du tampon en ko
                  capacity           nombre de secteurs
                  driver             version du pilote
                  geometry           géométries physique et logique
                  identify           identification en hexadécimal
                  media              type de support
                  model              référence fournisseur
                  settings           configuration du pilote
                  smart_thresholds   seuils en hexadécimal
                  smart_values       paramètres in hexadécimal

              L'utilitaire hdparm(8) fournit un accès convivial à ces
              informations.

       /proc/interrupts
              Utilisé pour enregistrer le nombre d'interruptions par CPU et
              par périphérique d'entrées et sorties. Depuis Linux 2.6.24,
              pour les architectures i386 et x86_64 au moins, il comprend
              également les interruptions internes au système (c'est-à -dire
              pas directement attachées à un périphérique), comme les NMI
              (« nonmaskable interrupt », interruption non masquable), LOC
              (« local timer interrupt », interruption de temporisateur
              local), et pour les systèmes SMP, TLB (« TLB flush
              interrupt »), RES (« rescheduling interrupt »), CAL
              (« remote function call interrupt ») et peut-être d'autres.
              Le format est très facile à lire, en ASCII.

       /proc/iomem
              Projection des entrées et sorties en mémoire, depuis
              Linux 2.4.

       /proc/ioports
              Il s'agit d'une liste des régions d'entrées et sorties en
              cours d'utilisation.

       /proc/kallsyms (depuis Linux 2.5.71)
              Ce fichier contient les symboles exportés par le noyau et
              utilisés par les outils des modules(X) pour assurer l'édition
              dynamique des liens des modules chargeables. Dans Linux 2.5.47
              et précédents, un fichier similaire avec une syntaxe
              légèrement différente s'appelait ksyms.

       /proc/kcore
              Ce fichier représente la mémoire physique du système sous
              forme de fichier ELF core. Ã l'aide de ce pseudofichier et d'un
              binaire du noyau non stripé (/usr/src/linux/vmlinux), gdb peut
              servir à inspecter l'état de n'importe quelle structure de
              données du noyau.

              La longueur totale de ce fichier est la taille de la mémoire
              RAM physique plus 4 Ko.

       /proc/kmsg
              Ce fichier peut être utilisé à la place de l'appel système
              syslog(2) pour journaliser les messages du noyau. Un processus
              doit avoir les privilèges superutilisateur pour lire ce
              fichier, et un seul processus à la fois peut le lire. Ce
              fichier ne devrait pas être lu si un processus syslogd en cours
              dâexécution utilise l'appel système syslog(2) pour journaliser
              les messages du noyau.

              Les informations de ce fichier sont consultées par le programme
              dmesg(1).

       /proc/ksyms (Linux 1.1.23-2.5.47)
              Consultez /proc/kallsyms.

       /proc/loadavg
              Les trois premiers champs de ce fichier sont des valeurs de
              charge moyenne donnant le nombre de travaux dans la file
              d'exécution (état R) ou en attente d'E/S disque (état D)
              moyennés sur 1, 5 ou 15 minutes. Ils sont identiques aux
              valeurs de charge moyenne données par uptime(1) et d'autres
              programmes. Le quatrième champ est constitué de deux nombres
              séparés par une barre oblique (/). Le premier d'entre eux est
              le nombre d'entités d'ordonnancement du noyau (tâches,
              processus) actuellement exécutables. La valeur qui suit la
              barre oblique est le nombre d'entités d'ordonnancement du noyau
              qui existent actuellement sur le système. Le cinquième champ
              est le PID du processus le plus récemment créé sur le
              système.

       /proc/locks
              Ce fichier montre les verrouillages actuels des fichiers
              (flock(2) et fcntl(2)) et les baux (fcntl(2)).

       /proc/malloc (seulement jusqu'Ã  Linux 2.2 inclus)
              Ce fichier n'est présent que si CONFIG_DEBUG_MALLOC a été
              défini lors de la compilation du noyau.

       /proc/meminfo
              Ce fichier fournit des statistiques sur l'utilisation mémoire
              du système. Il sert au programme free(1) pour indiquer la
              quantité de mémoires (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é éventuelle 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. à part 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
                     La somme de LowFree et HighFree.

              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
                     La mémoire qui avait été placée en espace d'échange
                     (« swap »), qui en a été retirée, mais qui et
                     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
                     La mémoire qui a été utilisée plus récemment mais
                     n'est pas réclamée tant que ce n'est pas absolument
                     nécessaire.

              Inactive %lu
                     La 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 à 2.6.30, CONFIG_UNEVICTABLE_LRU était
                     nécessaire.) [à documenter.]

              Mlocked %lu (depuis Linux 2.6.28)
                     (De Linux 2.6.28 à 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 est
                     toute la mémoire 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
                     page. 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 est
                     la mémoire qui peut être utilisée pour les mêmes
                     choses que la mémoire haute, mais est aussi disponible
                     au 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 sauvées sous une autre forme qu'un fichier,
                     projetées dans des tables de pages en espace
                     utilisateur.

              Mapped %lu
                     Fichiers qui ont été projetés en mémoire (avec
                     mmap(2)), comme les bibliothèques.

              Shmem %lu (depuis Linux 2.6.32)
                     [Ã documenter.]

              Slab %lu
                     Cache de structures de données dans le noyau.

              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 en cas de
                     pression en mémoire.

              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
                     enregistrées sur le support 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)
                     Basée sur le rapport du dépassement d'allocation
                     mémoire (« vm.overcommit_ratio »), c'est la quantité
                     totale de mémoire actuellement disponible pour allouer
                     dans le système. Cette limite n'est respectée que si la
                     gestion stricte du dépassement est activée (mode 2 dans
                     /proc/sys/vm/overcommit_ratio). CommitLimit est calculée
                     en utilisant la formule suivante :

                         CommitLimit =
                             ([total de pages de RAM] - [total de pages
                     immenses TLB]) *
                             overcommit_ratio / 100 + [total de pages dâespace
                     dâéchange]

                     Par exemple, sur un système ayant 1 Go de RAM physique
                     et 7 Go d'espace d'échange avec un overcommit_ratio de
                     30, cette formule renvoie un CommitLimit de 7.3 Go. Pour
                     plus de précisions, consultez la documentation du
                     dépassement d'allocation mémoire dans le fichier
                     Documentation/vm/overcommit-accounting des sources du
                     noyau.

              Committed_AS %lu
                     La 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 (mode 2
                     dans /proc/sys/vm/overcommit_memory), les allocations qui
                     pourraient dépasser CommitLimit (précisée ci-dessus)
                     ne sont pas permises. C'est utile s'il est nécessaire de
                     garantir que les processus ne vont pas échouer à cause
                     du manque de mémoire une fois la mémoire allouée
                     correctement.

              VmallocTotal %lu
                     Taille totale d'allocation de mémoire virtuelle.

              VmallocUsed %lu
                     Taille d'allocation de mémoire virtuelle utilisée.

              VmallocChunk %lu
                     Plus grand bloc contigu d'allocation de mémoire
                     virtuelle libérée.

              HardwareCorrupted %lu (depuis Linux 2.6.32)
                     (CONFIG_MEMORY_FAILURE est nécessaire.) [à documenter.]

              AnonHugePages %lu (depuis Linux 2.6.38)
                     (CONFIG_TRANSPARENT_HUGEPAGE est nécessaire.) Pages
                     immenses sauvées sous une autre forme qu'un fichier,
                     projetées dans des tables de pages en espace
                     utilisateur.

              HugePages_Total %lu
                     (CONFIG_HUGETLB_PAGE est nécessaire.) La taille d'espace
                     pour les pages immenses.

              HugePages_Free %lu
                     (CONFIG_HUGETLB_PAGE est nécessaire.) Le nombre de pages
                     immenses dans l'espace qui ne sont pas encore allouées.

              HugePages_Rsvd %lu (depuis Linux 2.6.17)
                     (CONFIG_HUGETLB_PAGE est nécessaire.) C'est le nombre de
                     pages immenses pour lesquelles un engagement a été fait
                     pour les allouer dans l'espace, mais qui n'ont pas encore
                     été allouées. Ces pages immenses réservées
                     garantissent qu'une application pourra allouer une page
                     immense dans l'espace des pages immenses au moment
                     nécessaire.

              HugePages_Surp %lu (depuis Linux 2.6.24)
                     (CONFIG_HUGETLB_PAGE est nécessaire.) C'est le nombre de
                     pages immenses dans l'espace au-delà de la valeur de
                     /proc/sys/vm/nr_hugepages. Le nombre maximal de pages
                     immenses en excès est contrôlé par
                     /proc/sys/vm/nr_overcommit_hugepages.

              Hugepagesize %lu
                     (CONFIG_HUGETLB_PAGE est nécessaire.) La taille des
                     pages immenses.

       /proc/modules
              Liste littérale des modules qui ont été chargés par le
              système. Consultez lsmod(8).

       /proc/mounts
              Avant le noyau 2.4.19, ce fichier était une liste de tous les
              systèmes de fichiers actuellement monté sur le système. Avec
              l'introduction des espaces de noms de montage par processus dans
              Linux 2.4.19, ce fichier est devenu un lien vers
              /proc/self/mounts, qui liste les points de montage de l'espace
              de noms de montage du processus. Le format de ce fichier est
              documenté dans fstab(5).

       /proc/mtrr
              Memory Type Range Registers. Consultez Documentation/mtrr.txt
              dans les sources du noyau Linux pour plus d'informations.

       /proc/net
              Ce répertoire regroupe divers pseudofichiers relatifs aux
              fonctionnalités réseau. Chaque fichier fournit des
              informations concernant une couche particulière. Ces fichiers
              sont en ASCII et sont donc lisible grâce à cat(1), mais le
              programme standard netstat(8) fournit un accès plus propre Ã
              ces données.

       /proc/net/arp
              Ce fichier contient un affichage ASCII lisible des tables ARP du
              noyau servant à la résolution d'adresse. Il indique à la fois
              les entrées apprises dynamiquement et celles préprogrammées.
              Le format est le suivant :

        Adresse IP    Matériel  Attribut   Adresse matérielle Masque  Périph.
        192.168.0.50   0x1       0x2       00:50:BF:25:68:F3   *      eth0
        192.168.0.250  0x1       0xc       00:00:00:00:00:00   *      eth0

              Où « adresse IP » est l'adresse IPv4 de la machine, le type
              de matériel est issu de la RFC 826. L'attribut correspond aux
              attributs de la structure ARP (définie dans
              /usr/include/linux/if_arp.h) et l'adresse matérielle est celle
              de la couche physique de l'adaptateur correspondant à l'adresse
              IP (si elle est connue).

       /proc/net/dev
              Ce pseudofichier contient des informations d'état sur les
              périphériques réseau. Il contient les nombres de paquets
              émis et reçus, le nombre d'erreurs et de collisions, ainsi que
              d'autres données statistiques. Ce fichier est utilisé par le
              programme ifconfig(8). Le format est le suivant :

 Inter-|   Receive                                                |  Transmit
  face |bytes    packets errs drop fifo frame compressed multicast|bytes    packets errs drop fifo colls carrier compressed
     lo: 2776770   11307    0    0    0     0          0         0  2776770   11307    0    0    0     0       0          0
   eth0: 1215645    2751    0    0    0     0          0         0  1782404    4324    0    0    0   427       0          0
   ppp0: 1622270    5552    1    0    0     0          0         0   354130    5669    0    0    0     0       0          0
   tap0:    7714      81    0    0    0     0          0         0     7714      81    0    0    0     0       0          0

       /proc/net/dev_mcast
              Définie dans /usr/src/linux/net/core/dev_mcast.c :
                   indx interface_name  dmi_u dmi_g dmi_address
                   2    eth0            1     0     01005e000001
                   3    eth1            1     0     01005e000001
                   4    eth2            1     0     01005e000001

       /proc/net/igmp
              Protocole Internet Group Management Protocol. Défini dans
              /usr/src/linux/net/core/igmp.c.

       /proc/net/rarp
              Ce fichier emploie le même format que le fichier arp, et
              contient la projection inverse de la base de données utilisée
              pour fournir les services de recherche inversée de rarp(8). Si
              RARP n'est pas configuré dans le noyau, ce fichier est absent.

       /proc/net/raw
              Fournit le contenu de la table des sockets RAW (brutes). La
              plupart des informations ne sert que pour le débogage. La
              valeur « sl » est l'emplacement de la socket dans la table de
              hachage du noyau. Le champ « local_address » contient
              l'adresse locale ainsi que la paire de numéros associée au
              protocole. « St » est l'état interne de la socket.
              « tx_queue » et « rx_queue » représentent les files
              d'attente en émission et en réception en ce qui concerne
              l'utilisation de la mémoire par le noyau. Les champs « tr »,
              « tm->when » et « rexmits » ne sont pas utilisés par
              « RAW ». Le champ uid contient l'identifiant d'utilisateur
              (UID) effectif du créateur de la socket.

       /proc/net/snmp
              Ce fichier contient les données ASCII nécessaires pour les
              bases d'informations d'IP, ICMP, TCP et UDP pour un agent SNMP.

       /proc/net/tcp
              Fournit le contenu de la table des sockets TCP. La plupart des
              informations ne sert que pour le débogage. La valeur « sl »
              est l'emplacement de la socket dans la table de hachage du
              noyau. Le champ « local_address » contient l'adresse locale
              ainsi que la pair de numéros de port. Le champ
              « rem_address » contient l'adresse distante et la paire de
              numéros de port (si la socket est connectée). « St » est
              l'état interne de la socket. « tx_queue » et « rx_queue »
              représentent les files d'attente en émission et en réception
              en ce qui concerne l'utilisation de la mémoire par le noyau.
              Les champs « tr », « tm->when » et « rexmits » contiennent
              des données internes au noyau ne servant qu'au débogage. Le
              champ uid contient l'identifiant d'utilisateur (UID) effectif du
              créateur de la socket.

       /proc/net/udp
              Fournit le contenu de la table des sockets UDP. La plupart des
              informations ne sert que pour le débogage. La valeur « sl »
              est l'emplacement de la socket dans la table de hachage du
              noyau. Le champ « local_address » contient l'adresse locale
              ainsi que la paire de numéros de port. Le champ
              « rem_address » contient l'adresse distante et la paire de
              numéros de port (si la socket est connectée). « St » est
              l'état interne de la socket. « tx_queue » et « rx_queue »
              représentent les files d'attente en émission et en réception
              en ce qui concerne l'utilisation de la mémoire par le noyau.
              Les champs « tr », « tm->when » et « rexmits » ne sont pas
              utilisés par UDP. Le champ uid contient l'identifiant
              d'utilisateur (UID) effectif du créateur de la socket. Le
              format est :

 sl  local_address rem_address   st tx_queue rx_queue tr rexmits  tm->when uid
  1: 01642C89:0201 0C642C89:03FF 01 00000000:00000001 01:000071BA 00000000 0
  1: 00000000:0801 00000000:0000 0A 00000000:00000000 00:00000000 6F000100 0
  1: 00000000:0201 00000000:0000 0A 00000000:00000000 00:00000000 00000000 0

       /proc/net/unix
              Liste des sockets dans le domaine UNIX présentes sur le
              système, et leurs états. Le format est :
              Num RefCount Protocol Flags    Type St Path
               0: 00000002 00000000 00000000 0001 03
               1: 00000001 00000000 00010000 0001 01 /dev/printer

              Où « Num » est l'emplacement dans la table du noyau.
              « Refcount » est le nombre d'utilisateurs de la socket.
              « Protocol » est toujours 0 pour le moment. « Flags »
              représente un attribut interne du noyau correspondant Ã
              l'état de la socket. Le type est toujours 1 pour le moment (Les
              sockets de datagrammes dans le domaine UNIX ne sont pas encore
              supportés par le noyau). « St » est un état interne de la
              socket, et Path correspond à l'éventuel chemin d'accès de la
              socket.

       /proc/partitions
              Contient les numéros majeur et mineur de chaque partition,
              ainsi que le nombre de blocs de 1024 octets et le nom de la
              partition.

       /proc/pci
              Il s'agit d'une liste de tous les périphériques PCI détectés
              pendant l'initialisation ainsi que leur configuration.

              Ce fichiers a été déprécié au profit d'une nouvelle
              interface /proc pour le PCI (/proc/bus/pci). Il est devenu
              optionnel dans Linux 2.2 (disponible par l'intermédiaire de
              CONFIG_PCI_OLD_PROC, défini à la compilation du noyau). Il est
              devenu non optionnel une fois de plus dans Linux 2.4. Ensuite,
              il a été déprécié dans Linux 2.6 (il reste disponible par
              l'intermédiaire du positionnement de CONFIG_PCI_LEGACY_PROC),
              et il a finalement été entièrement supprimé depuis Linux
              2.6.17.

       /proc/profile (depuis Linux 2.4)
              Ce fichier n'est présent que si le noyau a été démarré avec
              l'option profile=1. Il met à disposition des informations de
              profilage sous une forme binaire lisible par readprofile(1). Une
              écriture (par exemple d'une chaîne vide) dans le fichier
              réinitialise les compteurs de profilage. Dans le cas de
              certaines architectures, l'écriture d'un entier « multiple de
              profilage » de taille sizeof(int) configure la fréquence
              d'interruption du profilage.

       /proc/scsi
              Répertoire regroupant les pseudofichiers du niveau scsi
              intermédiaire et divers sous-répertoires pour les pilotes SCSI
              de bas niveau. Ils contiennent un fichier pour chaque hôte SCSI
              du système, chacun d'entre eux donnant l'état d'une partie du
              sous-système d'E/S SCSI. Les fichiers contiennent des
              structures sous forme ASCII, et sont donc lisibles avec cat(1).

              On peut également écrire dans certains fichiers pour
              reconfigurer le sous-système SCSI, ou activer/désactiver
              certaines fonctionnalités.

       /proc/scsi/scsi
              Il s'agit d'une liste de tous les périphériques SCSI reconnus
              par le noyau. Cette liste est la même que celle affichée
              durant le démarrage. Le sous-système SCSI n'accepte pour le
              moment que la commande add-single-device qui permet au
              superutilisateur d'ajouter un périphérique branché à chaud
              à la liste des périphériques connus.

              La commande

                  echo 'scsi add-single-device 1 0 5 0' > /proc/scsi/scsi

              fera examiner le canal SCSI 0 par l'hôte scsi1, à la recherche
              d'un périphérique identifié ID 5 LUN 0. S'il y a déjà un
              périphérique à cette adresse ou si l'adresse est inconnue,
              une erreur sera renvoyée.

       /proc/scsi/[nom_de_pilote]
              Le [nom_de_pilote] peut être actuellement : NCR53c7xx, aha152x,
              aha1542, aha1740, aic7xxx, buslogic, eata_dma, eata_pio,
              fdomain, in2000, pas16, qlogic, scsi_debug, seagate, t128,
              u15-24f, ultrastore ou wd7000. Ces répertoires correspondent Ã
              chaque pilote qui pilote au moins un HBA SCSI. Chaque
              répertoire contient un fichier par hôte enregistré. Chaque
              fichier hôte est baptisé avec le numéro assigné à l'hôte
              durant l'initialisation.

              La lecture de ces fichiers montrera en général la
              configuration de l'hôte et du pilote, des statistiques, etc.

              L'écriture dans ces fichiers permettra différentes choses
              suivant les hôtes. Par exemple, avec les commandes latency et
              nolatency, le superutilisateur peut activer ou inhiber le code
              de mesure de latence des commandes dans le pilote eata_dma. Avec
              les commandes lockup et unlock, il peut contrôler les
              verrouillages de bus simulés par le pilote scsi_debug.

       /proc/self
              Ce répertoire se rapporte au processus accédant au système de
              fichiers /proc, et est identique au sous-répertoire de /proc
              ayant pour nom le PID du processus appelant.

       /proc/slabinfo
              Information concernant les caches du noyau. Depuis Linux 2.6.16,
              ce fichier n'est présent que si l'option de configuration du
              noyau CONFIG_SLAB est validée. Les colonnes de  /proc/slabinfo
              sont :

                  nom-du-cache
                  nombre-d'objets-actifs
                  nombre-total-d'objets
                  taille-d-'objet
                  nombre-de-tampons-actifs
                  nombre-total-de-tampons
                  nombre-de-pages-par-tampon

              Consultez slabinfo(5) pour plus de précisions.

       /proc/stat
              Statistiques du noyau, et du système. Varie avec
              l'architecture, les entrées communes sont les suivantes.

              cpu  3357 0 4313 1362393
                     Temps, mesuré en unités de USER_HZ (centième de
                     seconde sur la plupart des architectures, utilisez
                     sysconf(_SC_CLK_TCK) pour connaître la valeur correcte),
                     que le système a passé dans les différents états
                     suivants.

                     utilisateur (user)
                            (1) Temps passé en mode utilisateur.

                     basse priorité (nice)
                            (2) Temps passé en mode utilisateur avec une
                            priorité basse (courtoisie élevée :
                            « nice »).

                     système (system)
                            (3) Temps passé en mode système.

                     inactivité (idle)
                            (4) Temps passé en tâche inactive. Cette valeur
                            devrait correspondre à USER_HZ fois la deuxième
                            entrée du pseudofichier /proc/uptime.

                     attente d'entrées et sorties (iowait, depuis
                     Linux 2.5.41)
                            (4) Temps attendu jusqu'à la fin des entrées et
                            sorties.

                     interruptions (irq, depuis Linux 2.6.0-test4)
                            (6) Temps d'entretien des interruptions.

                     softirq (depuis Linux 2.6.0-test4)
                            (7) Temps d'entretien des softirqs.

                     volé (steal, depuis Linux 2.6.11)
                            Temps volé, qui est le temps passé dans d'autres
                            systèmes d'exploitation lorsqu'un environnement
                            virtualisé est actif

                     client (guest, depuis Linux 2.6.24)
                            (9) Temps passé à exécuter un processeur
                            virtuel pour des systèmes d'exploitation clients
                            sous le contrôle du noyau Linux.

                     client basse priorité guest_nice (depuis Linux 2.6.33)
                            (10) Temps passé à exécuter un client avec une
                            priorité basse (processeur virtuel pour des
                            systèmes d'exploitation clients sous le contrôle
                            du noyau Linux).

              page 5741 1808
                     Le nombre de pages que le système a paginé en entrée
                     et en sortie.

              swap 1 0
                     Le nombre de pages de swap que le système a échangé en
                     entrée et en sortie.

              intr 1462898
                     Cette ligne contient le nombre d'interruptions qui ont
                     été prises en compte depuis le démarrage du système,
                     pour chacune des interruptions possibles. La première
                     colonne est le total de toutes les interruptions ayant
                     été prises en compte, y compris les interruptions non
                     numérotées spécifiques à  lâarchitecture ; chacune des
                     colonnes suivantes représente le total pour cette
                     interruption numérotée particulière. Les interruptions
                     non numérotées ne sont pas montrées, seulement
                     comptées dans le total.

              disk_io: (2,0):(31,30,5764,1,2) (3,0):...
                     (major,disk_idx):(noinfo, read_io_ops, blks_read,
                     write_io_ops, blks_written)
                     (Linux 2.4 seulement)

              ctxt 115315
                     Le nombre de changements de contexte effectués par le
                     système.

              btime 769041601
                     La date de démarrage du système en secondes écoulées
                     depuis l'époque, 1er janvier 1970 à 00:00:00 (UTC).

              processes 86031
                     Le nombre de processus exécutés sur le système depuis
                     le démarrage.

              procs_running 6
                     Nombre de processus dans un état exécutable. (à partir
                     de Linux 2.5.45).

              procs_blocked 2
                     Nombre de processus bloqués en attente de fin d'E/S. (Ã
                     partir de Linux 2.5.45).

       /proc/swaps
              Les zones de swap utilisées. Consultez aussi swapon(8).

       /proc/sys
              Ce répertoire (présent depuis le noyau 1.3.57) contient un
              ensemble de fichiers et de sous-répertoires correspondant Ã
              des variables internes du noyau. Celles-ci peuvent être lues et
              parfois modifiées en utilisant le pseudosystème de fichiers
              /proc, et en utilisant l'appel système (obsolète) sysctl(2).

       /proc/sys/abi (depuis Linux 2.4.10)
              Ce répertoire peut contenir des fichiers d'informations sur
              l'exécutable de l'application. Consultez le fichier fourni avec
              les sources du noyau Linux Documentation/sysctl/abi.txt pour
              plus d'informations.

       /proc/sys/debug
              Ce répertoire peut être vide.

       /proc/sys/dev
              Ce répertoire contient des informations spécifiques sur les
              périphériques (par exemple dev/cdrom/info). Sur certains
              systèmes, il peut être vide.

       /proc/sys/fs
              Ce répertoire contient les fichiers et répertoires pour les
              variables du noyau relatives aux systèmes de fichiers.

       /proc/sys/fs/binfmt_misc
              La documentation concernant les fichiers de ce répertoire se
              trouve dans les sources du noyau Linux, dans
              Documentation/binfmt_misc.txt.

       /proc/sys/fs/dentry-state (depuis Linux 2.2)
              Ce fichier contient des informations sur l'état du cache de
              répertoire (dcache). Ce fichier contient six nombres nr_dentry,
              nr_unused, age_limit (age en secondes), want_pages (pages
              réclamées par le système) et deux valeurs inutiles.

              * nr_dentry est le nombre d'entrées dcache allouées. Ce champ
                n'est pas utilisé dans Linux 2.2.

              * nr_unused est le nombre d'entrées de répertoire libres.

              * age_limit est l'âge en seconde après lequel les entrées de
                cache peuvent être réclamées quand la mémoire libre
                diminue.

              * want_pages n'est pas nul quand le noyau a appelé
                shrink_dcache_pages() et que le cache de répertoire n'a pas
                encore été élagué.

       /proc/sys/fs/dir-notify-enable
              Ce fichier permet d'activer ou inhiber l'interface dnotify
              décrite dans fcntl(2) au niveau système Une valeur nulle
              inhibe cette interface, et la valeur 1 l'active.

       /proc/sys/fs/dquot-max
              Ce fichier montre le nombre maximal d'entrées de quota de
              disque en cache. Sur certains systèmes (2.4), il est absent. Si
              le nombre de quotas de disque libres est très bas, et si vous
              avez un nombre important d'utilisateurs simultanés, vous pouvez
              augmenter cette valeur.

       /proc/sys/fs/dquot-nr
              Ce fichier montre le nombre d'entrées de quota de disque
              allouées et le nombre d'entrées libres.

       /proc/sys/fs/epoll (depuis Linux 2.6.28)
              Ce répertoire contient le fichier max_user_watches, qui peut
              être utilisé pour limiter la quantité de mémoire du noyau
              utilisée par l'interface epoll. Consultez epoll(7) pour
              davantage d'informations.

       /proc/sys/fs/file-max
              Ce fichier est la limite système du nombre de fichiers ouverts
              par un processus. (Consultez aussi setrlimit(2) qui peut servir
              à définir la limite par processus, RLIMIT_NOFILE). Si vous
              avez beaucoup de messages d'erreurs dans le journal du noyau
              indiquant un manque de descripteurs de fichiers (cherchez
              « VFS: file-max limit <number> reached »), essayez d'augmenter
              cette valeur.

                  echo 100000 > /proc/sys/fs/file-max

              La constante NR_OPEN du noyau impose une limite supérieure Ã
              la valeur que l'on peut placer dans file-max.

              Les processus privilégiés (CAP_SYS_ADMIN) peuvent écraser la
              limite file-max.

       /proc/sys/fs/file-nr
              Ce fichier en lecture seule contient trois nombres : le nombre
              de descripteurs de fichiers alloués (c'est-à -dire le nombre de
              fichiers actuellement ouverts), le nombre de descripteurs de
              fichiers libres et le nombre maximal de descripteurs de fichiers
              (c'est-à -dire la même valeur que /proc/sys/fs/file-max). Si le
              nombre de descripteurs alloués est proche du maximum, vous
              devriez envisager d'augmenter le maximum. Avant Linux 2.6, le
              noyau allouait les descripteurs dynamiquement, mais ne les
              libèrait pas. Au lieu de cela, les descripteurs de fichiers
              libres étaient stockés dans une liste pour être réalloués,
              le nombre « descripteurs de fichiers libres » référant à la
              taille de cette liste. Un nombre élevé de descripteurs de
              fichiers libres était l'indication qu'un pic d'utilisation
              s'est produit. Depuis Linux 2.6, le noyau désalloue les
              descripteurs de fichiers libres, et ce compteur est toujours
              nul.

       /proc/sys/fs/inode-max (avant Linux 2.2)
              Ce fichier contient le nombre maximal d'inÅuds en mémoire.
              Cette valeur devrait être 3 à 4 fois plus grande que le nombre
              file-max, car les descripteurs stdin, stdout, et les sockets
              réseau nécessitent aussi un inÅud. Lorsque vous manquez
              régulièrement d'inÅuds, augmentez cette valeur.

              Depuis Linux 2.4, il n'y a plus de limite statique du nombre
              d'inÅuds et ce fichier n'existe plus.

       /proc/sys/fs/inode-nr
              Ce fichier contient les deux premières valeurs d'inode-state.

       /proc/sys/fs/inode-state
              Ce fichier contient sept nombres : nr_inodes, nr_free_inodes,
              preshrink et quatre valeurs non significatives.

              nr_inodes est le nombre d'inÅuds alloués par le système.
              nr_free_inodes représente le nombre d'inÅuds libres.

              preshrink est non nul lorsque nr_inodes > inode-max et que le
              système doit purger la liste d'inÅuds plutôt qu'en allouer
              davantage. Ce champ n'est plus significatif depuis Linux 2.4.

       /proc/sys/fs/inotify (depuis Linux 2.6.13)
              Ce répertoire contient les fichiers max_queued_events,
              max_user_instances, et max_user_watches, qui peuvent être
              utilisés pour limiter la quantité de mémoire du noyau
              utilisée par l'interface inotify. Consultez inotify(7) pour
              davantage d'informations.

       /proc/sys/fs/lease-break-time
              Ce fichier indique le délai de grâce que le noyau accorde Ã
              un processus détenant un blocage de fichier (file lease,
              consultez fcntl(2)) après qu'il lui a envoyé un signal
              indiquant qu'un autre processus attend pour ouvrir le fichier.
              Si, durant le délai de grâce, le détenteur du blocage ne le
              supprime pas, en n'en diminue pas la portée, le noyau
              éliminera de force le blocage.

       /proc/sys/fs/leases-enable
              Ce fichier permet d'activer ou d'inhiber les blocages de
              fichiers (file lease, consultez fcntl(2)) pour tout le système.
              Si ce fichier contient la valeur 0, les blocages sont
              désactivés, une valeur non nulle les active.

       /proc/sys/fs/mqueue (depuis Linux 2.6.6)
              Ce répertoire contient les fichiers msg_max, msgsize_max, et
              queues_max, qui contrôlent les ressources utilisées par les
              files de messages POSIX. Consultez mq_overview(7) pour davantage
              d'informations.

       /proc/sys/fs/overflowgid et /proc/sys/fs/overflowuid
              Ces fichiers contiennent des valeurs de GID et UID de
              débordement, par défaut 65534. Certains systèmes de fichiers
              ne supportent que des UID et GID sur 16 bits, bien que le noyau
              Linux les gère sur 32 bits. Lorsque l'un de ces systèmes de
              fichiers est monté en lecture/écriture, tout UID ou GID
              dépassant 65535 est remplacé par la valeur de débordement
              avant l'écriture sur le disque.

       /proc/sys/fs/pipe-max-size (depuis Linux 2.6.35)
              La valeur de ce fichier définit une limite supérieure pour
              augmenter la capacité d'un tube en utilisant l'opération
              fcntl(2) F_SETPIPE_SZ. Cette limite ne s'applique qu'aux
              processus ordinaires (sans privilèges). La valeur par défaut
              de ce fichier est 1048576. La valeur employée par ce fichier
              peut être arrondie supérieurement, pour refléter la valeur
              réellement employée pour une implémentation adaptée. Pour
              connaître la valeur arrondie, il suffit d'afficher le contenu
              de ce fichier après en avoir changé la valeur. La valeur
              minimale qui peut être assignée à ce fichier est la taille de
              la page.

       /proc/sys/fs/protected_hardlinks (depuis Linux 3.6)
              Quand la valeur dans ce fichier est 0, aucune restriction
              n'empêche la création de liens physiques (c'est-à -dire le
              comportement historique avant Linux 3.6). Quand la valeur de ce
              fichier est 1, un lien physique ne peut être créé vers un
              fichier cible que si une des conditions suivantes est vraie :

              *  L'appelant a la capacité CAP_FOWNER.

              *  L'UID de système de fichier du processus créant le lien
                 correspond au propriétaire (UID) du fichier cible
                 (conformément à la description de credentials(7), l'UID de
                 système de fichier d'un processus est normalement le même
                 que son UID effectif).

              *  Toutes les conditions suivantes sont vraies :

                  ·  la cible est un fichier régulier ;

                  ·  le fichier cible n'a pas son bit de droits Set-UID
                     activé ;

                  ·  le fichier cible n'a aucun de ses bits de droits Set-GID
                     et exécutable par le groupe activé ;

                  ·  l'appelant a le droit de lire et écrire le fichier cible
                     (soit par le masque des droits du fichier, soit car il
                     dispose de la capacité nécessaire).

              La valeur par défaut dans ce fichier est 0. Définir cette
              valeur à 1 empêche une classe de problèmes de sécurité de
              longue date provoqués par des situations de compétition de
              date de vérifications ou de date d'utilisation basées sur les
              liens physiques, la plupart du temps constatés dans des
              répertoires accessibles en écriture à tous comme /tmp. La
              méthode habituelle pour exploiter ce défaut est de croiser les
              limites de droits lors du suivi d'un lien physique donné
              (c'est-Ã -dire qu'un processus du superutilisateur suit un lien
              créé par un autre utilisateur). De plus, sur les systèmes
              sans partitions séparées, cela empêche les utilisateurs non
              autorisés d'« épingler » les fichier Set-UID et Set-GID
              vulnérables, pour les empêcher d'être mis à jour par
              l'administrateur ou d'être liés vers des fichiers spéciaux.

       /proc/sys/fs/protected_symlinks (depuis Linux 3.6)
              Quand la valeur dans ce fichier est 0, aucune restriction
              n'empêche le suivi de liens symboliques (c'est-à -dire le
              comportement historique avant Linux 3.6). Quand la valeur de ce
              fichier est 1, les liens symboliques ne sont suivis que dans
              l'une des circonstances suivantes :

              *  l'UID de système de fichier du processus suivant le lien
                 correspond au propriétaire (UID) du lien symbolique
                 (conformément à la description de credentials(7), l'UID de
                 système de fichier d'un processus est normalement le même
                 que son UID effectif) ;

              *  le lien n'est pas dans un répertoire accessibles en
                 écriture à tous de façon « sticky » ;

              *  le lien symbolique et son répertoire parent ont le même
                 propriétaire (UID).

              Un appel système qui n'arrive pas à suivre un lien symbolique
              Ã  cause des restrictions ci-dessus renvoie l'erreur EACCES dans
              errno.

              La valeur par défaut dans ce fichier est 0. Définir cette
              valeur à 1 empêche une classe de problèmes de sécurité de
              longue date basés sur des situations de compétition de date de
              vérifications ou de date d'utilisation lors de l'accès aux
              liens symboliques.

       /proc/sys/fs/suid_dumpable (depuis Linux 2.6.13)
              La valeur de ce fichier détermine si des fichiers d'images
              mémoire ont été produits pour « set-user-ID » ou d'autre
              binaires protégés ou corrompus. Trois différentes valeurs
              entières peuvent être indiquées :

              0 (par défaut)
                     Cela donne le comportement traditionnel (antérieur Ã
                     Linux 2.6.13). Une image mémoire ne sera pas produite
                     pour un processus qui a modifié ses droits (en appelant
                     seteuid(2), setgid(2), ou autre, ou en exécutant un
                     programme set-user-ID ou set-group-ID) ou dont le binaire
                     n'a pas le droit de lecture actif.

              1 (« débogage »)
                     Des images mémoire de tous les processus seront faites
                     si possible. L'image mémoire appartient à l'identifiant
                     d'utilisateur du système de fichiers du processus dont
                     l'image a été créée et aucune mesure de sécurité
                     n'est prise. Cela n'est prévu que dans des situations
                     où l'on souhaite déboguer le système. Ptrace n'est pas
                     vérifié.

              2 (« suidsafe »)
                     L'image mémoire d'un binaire qui n'aurait normalement
                     pas été effectuée (voir « 0 » ci-dessus) est prise
                     lisible par le superutilisateur (root) seulement. Cela
                     permet à l'utilisateur de pourvoir supprimer l'image
                     mémoire mais pas de la lire. Pour des raisons de
                     sécurité, les images mémoires prises dans ce mode n'en
                     écraseront pas une autre ou d'autres fichiers. Ce mode
                     est adéquat lorsque l'administrateur essaie de déboguer
                     des problèmes dans un environnement normal.

                     De plus, depuis Linux 3.6, /proc/sys/kernel/core_pattern
                     doit être soit un chemin absolu, soit une commande de
                     tube (« pipe »), comme précisé dans core(5). Des
                     avertissements seront écrits dans le journal du noyau si
                     core_pattern ne suit pas ces règles et aucune image
                     mémoire ne sera produite.

       /proc/sys/fs/super-max
              Ce fichier indique le nombre maximal de superblocs, et donc le
              nombre maximal de systèmes de fichiers que le noyau peut
              monter. Vous n'avez besoin d'augmenter super-max que si vous
              désirez monter plus de systèmes de fichiers que ce que la
              valeur actuelle de super-max vous permet.

       /proc/sys/fs/super-nr
              contient le nombre de systèmes de fichiers montés
              actuellement.

       /proc/sys/kernel
              Ce répertoire contient des fichiers contrôlant tout une série
              de paramètres, décrits ci-dessous.

       /proc/sys/kernel/acct
              Ce fichier contient trois nombres : un seuil haut, un seuil bas
              et une période. Si la comptabilité des processus à la
              manière BSD est activée, ses valeurs déterminent son
              comportement. Si l'espace disque sur le système de fichiers
              accueillant les statistiques descend sous le seuil bas, (en
              pourcentage), la comptabilité est suspendue. Si l'espace
              remonte au-dessus du seuil haut, elle reprend. La période (en
              seconde) est celle avec laquelle le noyau vérifie l'espace
              disque disponible. Les valeurs par défaut sont 4, 2 et 30. Cela
              signifie que la comptabilité est suspendue en dessous de 2 %
              d'espace libre, elle reprend à partir de 4 % et la
              vérification a lieu toutes les 30 secondes.

       /proc/sys/kernel/cap_last_cap (depuis Linux 3.2)
              Consultez capabilities(7).

       /proc/sys/kernel/cap-bound (de Linux 2.2 Ã  2.6.24)
              Ce fichier conserve la valeur de limitation de capacités du
              noyau (exprimée comme un nombre décimal signé). Cet ensemble
              est filtré par un ET binaire avec les capacités du processus
              lors d'un execve(2). Ã partir de Linux 2.6.25, la limitation de
              capacités à l'échelle du système a disparu pour être
              remplacé par une limitation au niveau des threads ; voir
              capabilities(7).

       /proc/sys/kernel/core_pattern
              Consultez core(5).

       /proc/sys/kernel/core_uses_pid
              Consultez core(5).

       /proc/sys/kernel/ctrl-alt-del
              Ce fichier contrôle la gestion de la séquence Ctrl-Alt-Suppr
              du clavier. S'il contient la valeur zéro, Ctrl-Alt-Suppr est
              capturé et envoyé au programme init(8) pour relancer le
              système correctement. Si la valeur est supérieure à zéro, la
              réaction de Linux à ce Coup-de-pied Au C.. est un redémarrage
              immédiat, sans même écrire le contenu des tampons en attente.
              Note : lorsqu'un programme (comme dosemu) utilise le clavier en
              mode « raw » (brut), la séquence ctl-alt-suppr est
              interceptée par le programme avant même d'atteindre le
              gestionnaire de console du noyau, et c'est à ce programme de
              décider qu'en faire.

       /proc/sys/kernel/dmesg_restrict (depuis Linux 2.6.37)
              La valeur de ce fichier détermine qui peut voir le contenu du
              journal système du noyau. Une valeur nulle dans ce fichier
              n'impose aucune restriction. Si la valeur est 1, seuls les
              utilisateurs autorisés peuvent lire le journal système du
              noyau (consultez syslog(2) pour plus de précisions). Depuis
              Linux 3.4, seuls les utilisateurs avec la capacité
              CAP_SYS_ADMIN peuvent modifier la valeur de ce fichier.

       /proc/sys/kernel/domainname et /proc/sys/kernel/hostname
              Ces fichiers servent à indiquer les noms NIS/YP de domaine et
              d'hôte, exactement de la même manière que les commandes
              domainname(1) et hostname(1). C'est-Ã -dire :

                  # echo 'darkstar' > /proc/sys/kernel/hostname
                  # echo 'mydomain' > /proc/sys/kernel/domainname

              a exactement le même effet que

                  # hostname 'darkstar'
                  # domainname 'mydomain'

              Notez toutefois, que le classique darkstar.frop.org a le nom
              d'hôte darkstar et le nom de domaine DNS (Internet Domain Name
              Server) "frop.org", Ã  ne pas confondre avec le nom de domaine
              NIS (Network Information Service) ou YP (Yellow Pages). Ces noms
              de domaines sont généralement différents. Pour plus de
              détail, consultez la page hostname(1).

       /proc/sys/kernel/hotplug
              Ce fichier contient le chemin de l'agent du mécanisme de
              branchement à chaud. La valeur par défaut est /sbin/hotplug.

       /proc/sys/kernel/htab-reclaim
              (PowerPC seulement) Si ce fichier contient une valeur non nulle,
              la htab du PowerPC (voir le fichier
              Documentation/powerpc/ppc_htab.txt du noyau) est parcourue
              chaque fois que le système atteint la boucle d'inactivité.

       /proc/sys/kernel/kptr_restrict (depuis Linux 2.6.38)
              La valeur de ce fichier détermine si des adresses du noyau sont
              exposées par l'intermédiaire de fichiers /proc et d'autres
              interfaces. Une valeur nulle dans ce fichier n'impose aucune
              restriction. Si la valeur est 1, les pointeurs du noyau
              affichés en utilisant le spécificateur de format %pK seront
              remplacés par des zéros sauf si l'utilisateur a la capacité
              CAP_SYSLOG. Si la valeur est 2, les pointeurs du noyau affichés
              en utilisant le spécificateur de format %pK seront remplacés
              par des zéros quelles que soient les capacités de
              l'utilisateur. La valeur par défaut pour ce fichier était 1
              initialement, mais la valeur par défaut a été changée Ã
              zéro avec Linux 2.6.39. Depuis Linux 3.4, seuls les
              utilisateurs avec la capacité CAP_SYS_ADMIN peuvent modifier la
              valeur de ce fichier.

       /proc/sys/kernel/l2cr
              (Sur PowerPC seulement). Ce fichier contient un indicateur
              commandant le cache L2 des cartes à processeur G3. Le cache est
              désactivé si la valeur est nulle, activé sinon.

       /proc/sys/kernel/modprobe
              Ce fichier comporte le chemin du chargeur de modules du noyau.
              Sa valeur par défaut est /sbin/modprobe. Ce fichier n'est
              présent que si le noyau est construit avec l'option
              CONFIG_MODULES activée (CONFIG_KMOD dans les versions 2.6.26 et
              antérieures). C'est décrit dans le fichier du noyau Linux
              Documentation/kmod.txt (il n'est présent que dans les versions
              de noyau 2.4 et antérieures).

       /proc/sys/kernel/modules_disabled (depuis Linux 2.6.31)
              Une valeur booléenne indiquant si les modules ont le droit
              d'être chargés dans un noyau sinon modulaire. La valeur par
              défaut est fausse (0), mais peut être définie à vraie (1).
              Une fois vraie, les modules ne peuvent ni être chargés, ni
              déchargés, et la valeur ne peut plus être redéfinie Ã
              fausse. Le fichier n'est présent que si le noyau est construit
              avec l'option CONFIG_MODULES activée.

       /proc/sys/kernel/msgmax (disponible depuis Linux 2.2)
              Ce fichier est une limite pour l'ensemble du système précisant
              le nombre maximal d'octets par message écrit dans une file de
              message System V.

       /proc/sys/kernel/msgmni (disponible depuis Linux 2.4)
              Ce fichier définit la limite pour le système du nombre
              d'identifiants de files de messages.

       /proc/sys/kernel/msgmnb (disponible depuis Linux 2.2)
              Ce fichier définit un paramètre valable pour l'ensemble du
              système utilisé pour initialiser la valeur msg_qbytes pour la
              création ultérieure de files de messages. La valeur msg_qbytes
              indique le nombre maximal d'octets qui pourront être écrits
              dans une file de messages.

       /proc/sys/kernel/ngroups_max (depuis Linux 2.6.4)
              Ce fichier est en lecture seule et affiche la limite supérieure
              du nombre dâappartenances à  un groupe pour un processus.

       /proc/sys/kernel/ostype et /proc/sys/kernel/osrelease
              Ces fichiers donnent des sous-chaînes de /proc/version.

       /proc/sys/kernel/overflowgid et /proc/sys/kernel/overflowuid
              Ces fichiers remplissent le même rôle que
              /proc/sys/fs/overflowgid et /proc/sys/fs/overflowuid.

       /proc/sys/kernel/panic
              Ce fichier donne un accès en lecture et écriture à la
              variable panic_timeout du noyau. Si elle vaut zéro, le noyau se
              mettra en boucle en cas de panique ; sinon elle indique que le
              noyau devra redémarrer de lui-même après le nombre de
              secondes qu'elle contient. Si vous utilisez le pilote logiciel
              de surveillance watchdog, la valeur recommandée est de 60.

       /proc/sys/kernel/panic_on_oops (depuis Linux 2.5.68)
              Ce fichier contrôle le comportement du noyau lorsqu'un Oops
              (défaut) ou un bogue est rencontré. Si ce fichier contient 0,
              alors le système tente de continuer à travailler. S'il
              contient 1, alors le système attend quelques secondes (pour
              laisser à klogd le temps d'enregistrer la sortie du Oops) puis
              déclenche une panique. Si le fichier /proc/sys/kernel/panic est
              également non nul alors la machine redémarrera.

       /proc/sys/kernel/pid_max (depuis Linux 2.5.34)
              Ce fichier indique la valeur à partir de laquelle la
              numérotation des PID reprendra à sa valeur initiale (ce qui
              signifie que la valeur dans ce fichier est celle du PID maximal
              plus un). Aucun PID supérieur à cette valeur n'est alloué,
              ainsi la valeur de ce fichier agit également comme une limite
              système du nombre maximal de processus et threads. La valeur
              par défaut est 32768, ce qui correspond à la même plage de
              PID que sur les noyaux antérieurs. Pour les plates-formes
              32 bits, la valeur maximale de pid_max est de 32768. Pour les
              systèmes 64 bits, pid_max peut avoir n'importe quelle valeur
              jusqu'Ã  2^22 (PID_MAX_LIMIT, approximativement 4 millions).

       /proc/sys/kernel/powersave-nap (PowerPC seulement)
              Ce fichier contient un indicateur. S'il est non nul, Linux-PPC
              utilisera le mode « nap » d'économie d'énergie, sinon il
              utilisera le mode « doze ».

       /proc/sys/kernel/printk
              Consultez syslog(2).

       /proc/sys/kernel/pty (depuis Linux 2.6.4)
              Ce répertoire contient deux fichiers relatifs au nombre de
              pseudoterminaux UNIX 98 (consultez pts(4)) sur le système.

       /proc/sys/kernel/pty/max
              Ce fichier définit le nombre maximal de pseudoterminaux.

       /proc/sys/kernel/pty/nr
              Ce fichier, en lecture seule, indique le nombre de
              pseudoterminaux en cours d'utilisation.

       /proc/sys/kernel/random
              Ce répertoire contient divers paramètres contrôlant le
              fonctionnement du fichier /dev/random. Consultez random(4) pour
              davantage d'informations.

       /proc/sys/kernel/random/uuid (disponible depuis Linux 2.4)
              Chaque lecture de ce fichier en lecture seule renvoie un UUID
              aléatoire de 128 bits, sous forme de chaîne au format UUID
              normalisé.

       /proc/sys/kernel/real-root-dev
              Ce fichier est documenté dans le fichier
              Documentation/initrd.txt des sources du noyau Linux.

       /proc/sys/kernel/reboot-cmd (Sparc seulement)
              permet apparemment de fournir un argument au chargeur de boot
              ROM/Flash Sparc. Peut-être indique-t-il que faire après
              redémarrage ?

       /proc/sys/kernel/rtsig-max
              (Uniquement pour les noyaux jusqu'Ã  2.6.7 inclus ; consultez
              setrlimit(2)).Ce fichier peut être utilisé pour ajuster le
              nombre maximal de signaux POSIX temps-réel (en file d'attente)
              pouvant se trouver en attente sur le système.

       /proc/sys/kernel/rtsig-nr
              (Uniquement pour les noyaux de Linux jusqu'Ã  2.6.7 inclus). Ce
              fichier indique le nombre de signaux POSIX temps-réel
              actuellement en file attente.

       /proc/sys/kernel/sched_rr_timeslice_ms (disponible depuis Linux 3.9)
              Consultez sched_rr_get_interval(2).

       /proc/sys/kernel/sched_rt_period_us (disponible depuis Linux 2.6.25)
              Consultez sched(7).

       /proc/sys/kernel/sched_rt_runtime_us (disponible depuis Linux 2.6.25)
              Consultez sched(7).

       /proc/sys/kernel/sem (disponible depuis Linux 2.4)
              contient 4 limites pour les sémaphores System V. Ces valeurs
              sont respectivement :

              SEMMSL  Le nombre maximal de sémaphores par ensemble.

              SEMMNS  Une limite générale au système pour le nombre de
                      sémaphores dans tous les ensembles.

              SEMOPM  Le nombre maximal d'opérations que l'on peut indiquer
                      dans un appel semop(2).

              SEMNI   Une limite générale sur le nombre maximal
                      d'identifiants de sémaphores.

       /proc/sys/kernel/sg-big-buff
              Ce fichier montre la taille du tampon pour le pilote SCSI
              générique (sg). Vous ne pourrez pas y écrire pour le moment,
              mais vous pouvez changer sa valeur à la compilation en éditant
              include/scsi/sg.h et en modifiant SG_BIG_BUFF. Toutefois, il ne
              devrait y avoir aucune raison de le modifier.

       /proc/sys/kernel/shm_rmid_forced (disponible depuis Linux 3.1)
              Si ce fichier est configuré à la valeur 1, tous les segments
              de mémoire partagée System V seront marqués pour destruction
              dès que le nombre de processus attachés tombe à zéro.
              Autrement dit, il n'est plus possible de créer des segments de
              mémoire partagée qui existent indépendamment des autres
              processus attachés.

              Par conséquent un shmctl(2) IPC_RMID est réalisé sur tous les
              segments existants ainsi que sur tous les segments attachés par
              la suite. Remarquez que les segments existants qui ne sont
              attachés à aucun processus seront immédiatement détruits
              quand ce fichier est configuré à la valeur 1. Définir cette
              option détruira aussi les segments qui ont été créés, mais
              jamais attachés, à la fin d'exécution du processus qui a
              créé le segment avec shmget(2).

              Définir ce fichier à la valeur 1 fournit un moyen de s'assurer
              que tous les segments de mémoire partagée System V sont
              comptés par rapport à l'utilisation et limites de ressources
              (consultez la description de RLIMIT_AS dans getrlimit(2)) d'au
              moins un processus.

              Puisque définir ce fichier à la valeur 1 produit un
              comportement non normalisé et pourrait aussi casser des
              applications existantes, la valeur par défaut est 0. Ne
              configurez la valeur de ce fichier à 1 que si vous avez une
              bonne compréhension des sémantiques des applications utilisant
              la mémoire partagée System V du système.

       /proc/sys/kernel/shmall (disponible depuis Linux 2.2)
              Ce fichier contient le nombre maximal de pages de mémoire
              partagée (IPC System V) au niveau du système.

       /proc/sys/kernel/shmmax (disponible depuis Linux 2.2)
              Ce fichier permet de lire ou modifier la taille maximale des
              segments de mémoire partagée (IPC System V) que l'on peut
              créer. Les segments de mémoire jusqu'à 1Go sont à présent
              autorisés par le noyau. La valeur par défaut est SHMMAX.

       /proc/sys/kernel/shmmni (disponible depuis Linux 2.4)
              Ce fichier indique le nombre maximal de segments de mémoire
              partagée System V que l'on peut créer.

       /proc/sys/kernel/sysrq
              Ce fichier contrôle les fonctions qui peuvent être appelées
              par les combinaisons SysRq. Par défaut, le fichier contient un
              « 1 », ce qui signifie que toute demande SysRq est autorisée
              (dans les anciennes versions du noyau, SysRq était désactivé
              par défaut, et il fallait l'activer explicitement lors de
              l'exécution, mais ce n'est plus le cas). Les valeurs possibles
              dans ce fichier sont :

                 0 - désactiver sysrq complètement
                 1 - activer toutes les fonctions de sysrq
                >1 - masque de bits des sysrq autorisées, défini comme
              ceci :
                        2 - active le contrôle du niveau de journalisation de
              la console
                        4 - active le contrôle du clavier (SAK, unraw
                        8 - active la production d'images de débogue des
              processus, etc.
                       16 - active la commande sync
                       32 - active le remontage en lecture seule
                       64 - active l'envoi de signaux aux processus (term,
              kill, oom-kill)
                      128 - autorise reboot/poweroff
                      256 - autorise la définition de la politesse de toutes
              les tâches temps réel

              Ce fichier n'est présent que si l'option de configuration du
              noyau CONFIG_MAGIC_SYSRQ a été validée. Pour plus
              d'informations, consultez Documentation/sysrq.txt dans les
              sources du noyau Linux.

       /proc/sys/kernel/version
              Ce fichier contient une chaîne du type :

                  #5 Wed Feb 25 21:49:24 MET 1998

              Le champ « #5 » indique que c'est la cinquième compilation du
              noyau depuis ces sources, et la date correspond à celle de la
              compilation.

       /proc/sys/kernel/threads-max (disponible depuis Linux 2.3.11)
              Ce fichier contient le nombre maximal de threads (tâches) qui
              peuvent être créés sur le système.

       /proc/sys/kernel/zero-paged (PowerPC seulement)
              Ce fichier contient un drapeau. S'il est activé (non nul),
              Linux-PPC effacera les pages dans sa boucle d'inactivité,
              accélérant éventuellement get_free_pages.

       /proc/sys/net
              Ce répertoire contient des éléments relatif au réseau. Des
              explications pour certains des fichiers de ce répertoire
              peuvent être trouvées dans tcp(7) et ip(7).

       /proc/sys/net/core/somaxconn
              Ce fichier défini une valeur plafond pour le paramètre backlog
              de listen(2) ; consultez la page de manuel listen(2) pour plus
              de précisions.

       /proc/sys/proc
              Ce répertoire peut être vide.

       /proc/sys/sunrpc
              Ce répertoire correspond aux appels de procédures à distance
              (RPC) sur un système de fichiers NFS. Sur certains systèmes,
              il est absent.

       /proc/sys/vm
              Ce répertoire contient des fichiers de paramétrage de la
              gestion de mémoire, des tampons, et du cache.

       /proc/sys/vm/drop_caches (depuis Linux 2.6.16)
              Ãcrire dans ce fichier force le noyau à  libérer les caches,
              dentries et inÅuds propres de la mémoire, en libérant ainsi
              cette mémoire. Ce peut être utile pour les tests de gestion de
              mémoire et la réalisation de comparaisons reproductibles de
              systèmes de fichiers. Puisquâune écriture dans ce fichier fait
              perdre tous les avantages du cache, cela peut dégrader
              lâintégralité des performances du système.

              Pour libérer les pagecache, utilisez :

                  echo 1 > /proc/sys/vm/drop_caches

              Pour libérer les dentries et les inÅuds, utilisez :

                  echo 2 > /proc/sys/vm/drop_caches

              Pour libérer les pagecache, dentries et inÅuds, utilisez :

                  echo 3 > /proc/sys/vm/drop_caches

              Parce que lâécriture dans ce fichier est non destructive, et
              que les objets sales ne sont pas libérables, l'utilisateur
              devrait utiliser la commande sync(8) au préalable.

       /proc/sys/vm/legacy_va_layout (depuis Linux 2.6.9)
              S'il est non nul, cela désactive la nouvelle disposition de
              carte mémoire 32 bit ; le noyau utilisera alors la disposition
              habituelle (legacy) (2.4) pour tous les processus.

       /proc/sys/vm/memory_failure_early_kill (depuis Linux 2.6.32)
              Contrôle comment tuer les processus lorsqu'une erreur mémoire
              non corrigée (typiquement une erreur sur 2 bits sur un module
              de mémoire) qui ne peut pas être gérée par le noyau est
              détectée en tâche de fond par le matériel. Dans certains cas
              (par exemple s'il existe une copie valide de la page sur
              disque), le noyau est capable de récupérer cette erreur de
              manière transparente sans qu'aucune application ne soit
              touchée. Mais si le noyau n'a pas de copie à jour des
              données, il va tuer des processus afin d'empêcher la
              propagation de la corruption des données.

              Ce fichier peut contenir l'une des valeurs suivantes :

              1:  Tuer dès que la corruption est détectée tous les
                  processus qui ont une projection de la page corrompue et non
                  rechargeable. Notez que cela n'est pas possible avec
                  quelques types de pages, comme les données allouées en
                  interne par le noyau ou le cache d'échange (swap cache),
                  mais cela fonctionne avec la majorité des pages
                  utilisateur.

              0:  Ne supprimer que la projection de la page corrompue dans
                  tous les processus, et ne tuer que les processus qui
                  essaient d'y accéder.

              L'action de tuer le processus est effectuée en envoyant un
              signal SIGBUS avec si_code mis à BUS_MCEERR_AO. Les processus
              peuvent gérer cette situation s'ils le souhaitent ; consultez
              sigaction(2)  pour plus de précisions.

              Cette fonctionnalité n'est disponible que sur les
              architectures/plateformes avec une gestion avancée de
              vérification de la machine et dépend des possibilités du
              matériel.

              Les applications peuvent modifier individuellement le paramètre
              memory_failure_early_kill avec  l'opération prctl(2)
              PR_MCE_KILL.

              N'est disponible que si le noyau est configuré avec l'option
              CONFIG_MEMORY_FAILURE.

       /proc/sys/vm/memory_failure_recovery (depuis Linux 2.6.32)
              Activer la récupération sur une erreur mémoire (si la
              plateforme le permet)

              1:  Tenter une récupération.

              0:  Toujours sortir en mode panique sur une erreur mémoire.

              N'est disponible que si le noyau est configuré avec l'option
              CONFIG_MEMORY_FAILURE.

       /proc/sys/vm/oom_dump_tasks (depuis Linux 2.6.25)
              Active la production d'une image des tâches du système (Ã
              l'exception des threads du noyau) lors des mises à mort sur
              mémoire saturée. L'image contient les informations suivantes
              pour chaque tâche (thread ou processus) : identifiant de
              thread, identifiant d'utilisateur réel, identifiant du groupe
              de thread (identifiant du processus) taille de la mémoire
              virtuelle, taille de la mémoire résidente, CPU sur lequel la
              tâche était ordonnancée, valeur de oom_adj (voir la
              description de /proc/[pid]/oom_adj) et le nom de la commande.
              C'est utile pour trouver la raison de la mise à mort sur
              mémoire saturée et pour identifier la tâche défectueuse qui
              en est la cause.

              Avec la valeur zéro, l'information est supprimée. Sur les
              très gros système avec des milliers de tâches, il peut ne pas
              être faisable de créer l'image avec les informations sur
              chacune. Ces systèmes ne devraient pas être obligés de
              pénaliser leurs performances dans ces cas de pénurie de
              mémoire si ces informations ne sont pas désirées.

              Pour toute valeur non nulle, les informations sont présentées
              à chaque mise à mort sur mémoire saturée.

              La valeur par défaut est 0.

       /proc/sys/vm/oom_kill_allocating_task (depuis Linux 2.6.24)
              Cela active ou désactive la mise à mort de la tâche qui
              produit l'erreur dans les situations de mémoire saturée.

              Avec une valeur de zéro, la liste des tâches sera parcourue et
              la tâche à tuer sera sélectionnée en fonction
              d'heuristiques. Cela sélectionne normalement une tâche
              consommant une grosse quantité de mémoire qui libérera
              beaucoup de mémoire lorsqu'elle sera tuée.

              Avec une valeur non nulle, la tâche tuée sera celle qui
              échouera lors d'une allocation de mémoire. Cela évite un
              parcours de la liste des tâches qui peut être coûteux.

              Si /proc/sys/vm/panic_on_oom est non nul, il est prioritaire sur
              toute valeur utilisée dans
              /proc/sys/vm/oom_kill_allocating_task.

              La valeur par défaut est 0.

       /proc/sys/vm/overcommit_memory
              Ce fichier contient le mode pour les statistiques de la mémoire
              virtuelle du noyau. Les valeurs sont :

                     0 : gestion heuristique du dépassement d'allocation
                     mémoire (c'est la valeur par défaut)
                     1 : pas de gestion du dépassement, ne jamais vérifier
                     2 : toujours vérifier, gestion stricte du dépassement

              En mode 0, les appels à mmap(2) utilisant MAP_NORESERVE ne sont
              pas vérifiés et le niveau de vérification par défaut est
              très faible, laissant le risque d'avoir un processus tué Ã
              cause du manque de mémoire (« OOM-killed »). Sous Linux 2.4,
              toute valeur non nulle implique le mode 1. En mode 2 (disponible
              depuis Linux 2.6), l'espace d'adressage virtuel total sur le
              système est limité à (SS + RAM*(r/100)), où SS est la taille
              de l'espace d'échange (« swap »), RAM la taille de la
              mémoire physique, et r le contenu du fichier
              /proc/sys/vm/overcommit_ratio.

       /proc/sys/vm/overcommit_ratio
              Consultez la description de /proc/sys/vm/overcommit_memory.

       /proc/sys/vm/panic_on_oom (depuis Linux 2.6.18)
              Cela active ou désactive le déclenchement d'une panique dans
              les situations de mémoire saturée.

              Si ce fichier est configuré à la valeur 0, le noyau (le
              « OOM-killer ») tuera un processus perturbateur. D'habitude,
              il peut tuer un processus perturbateur et le système survivra.

              Si ce fichier est configuré à la valeur 1, le noyau paniquera
              dans une situation de mémoire saturée. Cependant, si un
              processus limite les allocations que sur certains nÅuds en
              utilisant des politiques mémoire (MPOL_BIND dans mbind(2)) ou
              des ensembles de processeurs (cpuset(7)), et si ces nÅuds voient
              leur mémoire saturée, un processus peut être tué par le
              OOM-killer. Aucune panique ne survient dans ce cas. Comme de la
              mémoire est disponible sur d'autres nÅuds, le système n'a pas
              entièrement atteint une situation de mémoire saturée.

              Si ce fichier est configuré à la valeur 2, le noyau panique
              toujours dans une situation de mémoire saturée.

              La valeur par défaut est 0. Les valeurs 1 et 2 sont utilisées
              pour la récupération en cas d'erreur de groupements.
              Sélectionnez l'un ou l'autre en fonction de votre politique de
              récupération en cas d'erreur.

       /proc/sys/vm/swappiness
              La valeur dans ce fichier contrôle le niveau d'agressivité
              utilisé par le noyau pour déplacer des pages mémoire dans
              l'espace d'échange. Les valeurs élevées indique une
              agressivité plus importante. La valeur par défaut est de 60.

       /proc/sysrq-trigger (depuis Linux 2.4.21)
              L'écriture d'un caractère dans ce fichier déclenche la même
              fonction SysRq que la combinaison ALT-SysRq-<caractère> (voir
              la description de /proc/sys/kernel/sysrq). Ce fichier est
              normalement accessible en écriture que pour root. Pour plus
              d'informations, consultez le fichier Documentation/sysrq.txt
              dans les sources du noyau Linux.

       /proc/sysvipc
              Sous-répertoire contenant les pseudofichiers msg, sem et shm.
              Ces fichiers listent les objets d'IPC System V (soient les files
              de messages, les sémaphores, et la mémoire partagée) existant
              actuellement sur le système, en donnant les mêmes informations
              que celles disponibles par la commande ipcs(1). Ces fichiers ont
              des en-têtes et sont formatés (à raison d'un objet IPC par
              ligne) de façon à être lus facilement. La page svipc(7) donne
              davantage d'informations concernant les données fournies par
              ces fichiers.

       /proc/timer_list (depuis Linux 2.6.21)
              Ce fichier en lecture seule expose la liste de tous les
              temporisateurs (haute résolution) en attente, toutes les
              sources d'évènement d'horloge, ainsi que leurs paramètres
              sous une forme lisible par un humain.

       /proc/timer_stats (depuis Linux 2.6.21)
              Il s'agit d'une fonctionnalité de débogage offrant aux
              développeurs noyau et espace utilisateur la visibilité sur
              l'utilisation ou l'abus des temporisateurs. Il peut être
              utilisé par les développeurs noyau et espace utilisateur pour
              vérifier que leur code ne fait pas un usage injustifié des
              temporisateurs. L'objectif est d'éviter les réveils inutiles
              et ainsi d'optimiser la consommation d'énergie.

              Si cette fonctionnalité est activée dans le noyau
              (CONFIG_TIMER_STATS) mais n'est pas utilisée, le surcoût de
              temps de traitement est quasiment nul et un surcoût plutôt
              faible sur la taille des structures. Même lorsque la collecte
              est activée, son surcoût est faible : tous les verrous sont
              par CPU et la recherche est hachée.

              Le fichier /proc/timer_stats est utilisé à la fois pour
              contrôler la fonction d'échantillonnage et lire les
              informations échantillonnées.

              La fonctionnalité timer_stats collecte des informations sur les
              évènements des temporisateurs levés au sein d'un système
              Linux au cours d'une période d'échantillonnage.

              - le PID du processus qui a initialisé le temporisateur ; - le
              nom du processus qui a initialisé le temporisateur ; - la
              fonction où le temporisateur a été initialisé ; - entre
              parenthèses, la fonction callback associée au temporisateur ;
              - le nombre d'évènements (rappels de callback).

              La fonction timer_stats n'est pas active au démarrage. La
              commande suivante démarre l'échantillonnage :

                  # echo 1 > /proc/timer_stats

              La commande suivante arrête l'échantillonnage :

                  # echo 0 > /proc/timer_stats

              La commande suivante récupère les statistiques :

                  $ cat /proc/timer_stats

              Lorsque l'échantillonnage est activé, chaque lecture depuis
              /proc/timer_stats fournira des statistiques à jour. Une fois
              l'échantillonnage désactivé, les informations
              échantillonnées sont conservées jusqu'au démarrage d'une
              nouvelle période de collecte.

              Exemple de sortie de /proc/timer_stats :

   $ cat /proc/timer_stats
   Timer Stats Version: v0.3
   Sample period: 1.764 s
   Collection: active
     255,     0 swapper/3        hrtimer_start_range_ns (tick_sched_timer)
      71,     0 swapper/1        hrtimer_start_range_ns (tick_sched_timer)
      58,     0 swapper/0        hrtimer_start_range_ns (tick_sched_timer)
       4,  1694 gnome-shell      mod_delayed_work_on (delayed_work_timer_fn)
      17,     7 rcu_sched        rcu_gp_kthread (process_timeout)
   ...
       1,  4911 kworker/u16:0    mod_delayed_work_on (delayed_work_timer_fn)
      1D,  2522 kworker/0:0      queue_delayed_work_on (delayed_work_timer_fn)
   1029 total events, 583.333 events/sec


              Les colonnes représentent :

              *  le nombre d'évènements, suivi éventuellement (depuis Linux
                 2.6.23) par la lettre 'D' s'il s'agit d'un temporisateur
                 différable ;

              *  le PID du processus qui a initialisé le temporisateur ;

              *  le nom du processus qui a initialisé le temporisateur ;

              *  la fonction où le temporisateur a été initialisé ;

              *  entre parenthèses, la fonction callback associée au
                 temporisateur.

       /proc/tty
              Sous-répertoire contenant les pseudofichiers et les
              sous-répertoires pour les pilotes de tty et la gestion de la
              ligne.

       /proc/uptime
              Ce fichier contient deux valeurs : la durée de fonctionnement
              (uptime) en secondes, et le temps écoulé à ne rien faire
              (idle), en secondes également.

       /proc/version
              Cette chaîne identifie la version du noyau en cours
              d'exécution. Elle inclue le contenu de /proc/sys/kernel/ostype,
              /proc/sys/kernel/osrelease et /proc/sys/kernel/version. Par
              exemple :
            Linux version 1.0.9 (quinlan@phaze) #1 Sat May 14 01:51:54 EDT 1994

       /proc/vmstat (depuis Linux 2.6)
              Ce fichier contient diverses statistiques sur la mémoire
              virtuelle.

       /proc/zoneinfo (depuis Linux 2.6.13)
              Ce fichier affiche des informations concernant les zones
              mémoire. C'est utile pour analyser le comportement de la
              mémoire virtuelle.

NOTES
       De nombreuses chaînes (par exemple, l'environnement et de la ligne de
       commande) sont affichées dans un format interne, ses champs terminés
       par un caractère nul. Il est parfois plus lisible d'utiliser od -c ou
       tr "\000" "\n" pour les lire. En remplacement, la commande echo `cat
       <file>` fonctionne bien.

       Cette page de manuel est incomplète, incertaine, et devrait être mise
       à jour très souvent.

VOIR AUSSI
       cat(1), dmesg(1), find(1), free(1), ps(1), tr(1), uptime(1), chroot(2),
       mmap(2), readlink(2), syslog(2), slabinfo(5), hier(7), time(7), arp(8),
       hdparm(8), ifconfig(8), init(8), lsmod(8), lspci(8), mount(8),
       netstat(8), procinfo(8), route(8), sysctl(8)

       Les fichiers source du noyau Linux :
       Documentation/filesystems/proc.txt, Documentation/sysctl/fs.txt,
       Documentation/sysctl/kernel.txt, Documentation/sysctl/net.txt et
       Documentation/sysctl/vm.txt.

COLOPHON
       Cette page fait partie de la publication 3.70 du projet man-pages
       Linux. Une description du projet et des instructions pour signaler des
       anomalies peuvent être trouvées à l'adresse
       http://www.kernel.org/doc/man-pages/.

TRADUCTION
       Depuis 2010, cette traduction est maintenue à l'aide de l'outil po4a
       <http://po4a.alioth.debian.org/> par l'équipe de traduction
       francophone au sein du projet perkamon
       <http://perkamon.alioth.debian.org/>.

       Christophe Blaess <http://www.blaess.fr/christophe/> (1996-2003), Alain
       Portal <http://manpagesfr.free.fr/> (2003-2006).  Jean-Luc Coulon et
       l'équipe francophone de traduction de Debian (2006-2009).

       Veuillez signaler toute erreur de traduction en écrivant Ã
       <perkamon-fr@traduc.org>.

       Vous pouvez toujours avoir accès à la version anglaise de ce document
       en utilisant la commande « LC_ALL=C man <section> <page_de_man> ».



Linux                           8 juillet 2014                         PROC(5)