Loading

NOM

       proc - Pseudo-système de fichiers d’informations sur les processus.

       Le  système  de fichiers proc est un pseudo-système de fichiers qui est
       utilisé comme 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 description suivante fournit un aperçu 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     pseudo-fichiers     et
              pseudo-ré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]/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 le caractère « NULL » (0 binaire), avec un
              octet nul (« \0 ») 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 :

                  $ (cat /proc/1/environ; echo) | tr '\000' '\n'

       /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]:inode

              Par   exemple,   [0301]:1502   correspond   à  l’inode  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’inode.

       /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.

              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
              (voir open(2)).

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

       /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
              (voir getrlimit(2)). Le fichier est protégé de telle  sorte  que
              seul l’UID réel du processus puisse le lire.

       /proc/[pid]/maps
              Fichier   contenant  les  régions  de  la  mémoire  actuellement
              projetées et leurs autorisations d’accès.

              Le format est :

              address           perms offset  dev   inode   pathname
              08048000-08056000 r-xp 00000000 03:0c 64593   /usr/sbin/gpm
              08056000-08058000 rw-p 0000d000 03:0c 64593   /usr/sbin/gpm
              08058000-0805b000 rwxp 00000000 00:00 0
              40000000-40013000 r-xp 00000000 03:0c 4165    /lib/ld-2.2.4.so
              40013000-40015000 rw-p 00012000 03:0c 4165    /lib/ld-2.2.4.so
              4001f000-40135000 r-xp 00000000 03:0c 45494   /lib/libc-2.2.4.so
              40135000-4013e000 rw-p 00115000 03:0c 45494   /lib/libc-2.2.4.so
              4013e000-40142000 rw-p 00000000 00:00 0
              bffff000-c0000000 rwxp 00000000 00:00 0

              Où « adresses » correspond à l’espace d’adressage  du  processus
              qui l’occupe, « perm » est un ensemble d’autorisations :

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

              Le  « décalage »  est  le  décalage  dans  le  fichier ou autre,
              « périph » correspond à la paire (majeur:mineur), et l’« inode »
              est l’inode sur ce périphérique. 0 signifie qu’aucun inode n’est
              associé avec cette zone mémoire, comme c’est  le  cas  avec  BSS
              (données non initialisées).

              Sous  Linux  2.0,  il  n’y  a  pas  de champ indiquant le chemin
              d’accès.

       /proc/[pid]/mem
              Ce fichier peut être utilisé pour  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 (voir 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)  file system 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 super bloc.

              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.

       /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]/numa_maps (depuis Linux 2.6.14)
              Consultez numa(7).

       /proc/[pid]/oom_adj (depuis Linux 2.6.11)
              Ce fichier est utilisé pour 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.

       /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 de décalage de  bit  du
              processus indiqué dans oom_adj.

       /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 comme  le  font  exe,  fd/*,
              etc.

              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 :

                  08048000-080bc000 r-xp 00000000 03:02 13130      /bin/bash
                  Size:               464 kB
                  Rss:                424 kB
                  Shared_Clean:       424 kB
                  Shared_Dirty:         0 kB
                  Private_Clean:        0 kB
                  Private_Dirty:        0 kB

              La première de ces lignes  montre  les  mêmes  informations  que
              celles  qui  sont  affichées  pour  la cartographie mémoire dans
              /proc/[pid]/maps. Les lignes qui suivent montrent la taille  des
              cartes,  la  taille  mémoire  actuellement  résidente en mémoire
              vive, le nombre de pages partagées de la  carte  « propres »  ou
              « sales », et le nombre de cartes privées propres ou sales.

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

       /proc/[pid]/stat
              Informations sur l’état  du  processus.  Ceci  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      Identifiant du processus.

              comm %s     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    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     PID du processus parent.

              pgrp %d     Identifiant de groupe de processus du processus.

              session %d  Identifiant de session du processus.

              tty_nr %d   Le  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    L’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)
                          Mot  contenant  les  indicateur  du  noyau  pour  le
                          processus. Pour en savoir plus sur la  signification
                          des   bits,   voir  les  définitions  de  PF_*  dans
                          <linux/sched.h>. Les détails dépendent de la version
                          du noyau.

              minflt %lu  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 Nombre de fautes mineures que les enfants en attente
                          du processus ont déclenchées.

              majflt %lu  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 Nombre de fautes majeures que les enfants en attente
                          du processus ont déclenchées.

              utime %ld   Le temps passé en mode utilisateur par le processus,
                          mesuré    en    tops    d’horloge    (divisé     par
                          sysconf(_SC_CLK_TCK). Cela inclut le temps d’invité,
                          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  d’invité »  ne  perdent  pas  ce temps dans
                          leurs calculs.

              stime %ld   Le temps passé  en  mode  noyau  par  le  processus,
                          mesuré     en    tops    d’horloge    (divisé    par
                          sysconf(_SC_CLK_TCK).

              cutime %ld  Le temps passé en mode utilisateur par le  processus
                          et ses descendants, mesuré en tops d’horloge (divisé
                          par sysconf(_SC_CLK_TCK). Voir aussi times(2).) Cela
                          inclut le temps d’invité, cguest_time (temps passé à
                          exécuter un processeur virtuel, voir plus loin).

              cstime %ld  Le temps passé en mode noyau par le processus et ses
                          descendants,  mesuré  en  tops d’horloge (divisé par
                          sysconf(_SC_CLK_TCK).

              priority %ld
                          (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    La valeur de courtoisie (voir  setpriority(2)),  une
                          valeur  dans l’intervalle 19 (faible priorité) à -19
                          (haute priorité).

              num_threads %ld
                          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
                          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)
                          Instant  en  jiffies  auquel  le processus a démarré
                          après le démarrage du système.

              vsize %lu   Taille de la mémoire virtuelle en octets.

              rss %lu     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. Ceci n’inclut ni
                          les pages en attente de chargement ni celles qui ont
                          été déchargées.

              rsslim %lu  Limite   souple   actuelle   en  octets  du  RSS  du
                          processus ; voir la description de  RLIMIT_RSS  dans
                          getpriority(2).

              startcode %lu
                          Adresse  au-dessus  de laquelle le code du programme
                          peut s’exécuter.

              endcode %lu Adresse en-dessous de laquelle le code du  programme
                          peut s’exécuter.

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

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

              kstkeip %lu EIP actuel (Pointeur d’instructions).

              signal %ld  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 Masque des signaux bloqués, affiché sous forme  d’un
                          nombre  décimal.  Obsolète  car  il  ne  fournit pas
                          d’information sur les signaux temps réel ;  utilisez
                          plutôt /proc/[pid]/status.

              sigignore %ld
                          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
                          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   Il  s’agit  du « canal » sur lequel le processus est
                          en attente. C’est l’adresse d’un appel système, dont
                          on  peut  retrouver le nom dans une table si besoin.
                          (Si vous avez le fichier /etc/psdatabase à jour,  et
                          essayé ps -l pour voir le champs WCHAN en action).

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

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

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

              processor %d (depuis Linux 2.2.8)
                          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)
                          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       (voir
                          sched_setscheduler(2)).

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

              delayacct_blkio_ticks %llu (depuis Linux 2.6.18)
                          Cumul  des  délais  d’entrées-sorties, mesuré en tic
                          horloge (centièmes de secondes).

              guest_time %lu (depuis Linux 2.6.24)
                          Temps d’invité du processus (temps passé à  exécuter
                          un processeur virtuel pour un système d’exploitation
                          invité),  mesuré  en  tops  d’horloge  (divisé   par
                          sysconf(_SC_CLK_TCK).

              cguest_time %ld (depuis Linux 2.6.24)
                          Temps d’invité des fils du processus, mesuré en tops
                          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       taille totale du programme
                             (comme pour VmSize dans /proc/[pid]/status)
                  resident   taille résidant en mémoire
                             (comme pour VmRSS dans /proc/[pid]/status)
                  share      pages partagées (des projections partagées)
                  text       texte (code)
                  lib        bibliothèque (non utilisé dans Linux 2.6)
                  data       données + pile
                  dt         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 (voir gettid(2)).

              * 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.

              * 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  page  (depuis  Linux
                2.6.10).

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

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

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

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

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

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

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

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

              * Mems_allowed_list : Pareil que précédemment,  mais  au  format
                liste (depuis Linux 2.6.26, voir 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épertoire   est  l’identifiant  ([tid])  du  thread  (voir
              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/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/bus/pccard/drivers

       /proc/bus/pci
              Contient  divers sous-répertoires de bus, et des pseudo-fichiers
              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), zgrep(1), etc. 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’information pour chaque
              processeur.

       /proc/devices
              Liste littérale des groupes  de  périphériques  et  des  numéros
              majeurs.  Ceci  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-sorties du disque
              pour chaque périphérique disque. Voir le fichier fourni avec les
              sources   du   noyau   Documentation/iostats.txt    pour    plus
              d’information.

       /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. (Voir aussi filesystems(5)). Si un système
              de fichiers est marqué par « nodev », ceci  signifie  qu’il  n’a
              pas  besoin  d’un périphérique de type 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
              Sous-répertoire vide.

       /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-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 »,  interruptions  non masquable), LOC
              (« local timer interrupt », interruption timer 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-sorties en mémoire, depuis Linux 2.4.

       /proc/ioports
              Il s’agit d’une liste des  régions  d’entrées-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  pseudo-fichier  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. On NE DOIT PAS lire
              ce fichier si un processus syslogd  tourne  et  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)
              Voir /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 consiste ne deux nombres séparés par un slash
              (/).  Le   premier   d’entre-eux   est   le   nombre   d’entités
              d’ordonnancement   du   noyau   (tâches,   processus)   en  cous
              d’exécution ;  il  sera  inférieur  ou   égal   au   nombre   de
              processeurs. La valeur qui suit le slash 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 inclu)
              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 fourni des statistiques sur l’utilisation mémoire  du
              système.   Il  sert  au  programme  free(1)  pour  indiquer  les
              quantités de mémoires (physique et swap)  libres  et  utilisées,
              ainsi  que  la  mémoire  partagée et les tampons utilisés par le
              noyau.

       /proc/modules
              Liste littérale des modules qui ont été chargés par le  système.
              Voir 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. Voir Documentation/mtrr.txt dans
              les sources du noyau pour plus d’informations.

       /proc/net
              Ce  répertoire  regroupe  divers  pseudo-fichiers  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 pseudo-fichier  contient  des  informations  d’état  sur  les
              périphériques réseau. On y trouve 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’information d’IP, ICMP, TCP et UDP pour un agent SNMP.

       /proc/net/tcp
              Fournit  le  contenu  de la table des socket 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 socket 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 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/scsi
              Répertoire  regroupant  les  pseudo-fichiers  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

              Voir slabinfo(5) pour des détails.

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

              cpu  3357 0 4313 1362393
                     Temps, mesuré en unités de USER_HZ (centièmes de  seconde
                     sur    la    plupart    des    architectures,    utilisez
                     sysconf(_SC_CLK_TCK) pour connaître la valeur  correcte),
                     que  le  système  a  passé  en  mode utilisateur, en mode
                     utilisateur  avec  une   basse   priorité   (« courtoisie
                     élevée » :   nice),   en   mode   système,  et  le  temps
                     d’inactivité. La dernière valeur devrait  correspondre  à
                     100 fois la deuxième entrée du pseudo-fichier uptime.

                     Avec  Linux  2.6,  cette  ligne  comporte  trois colonnes
                     supplémentaires : iowait -  temps  à  attendre  pour  que
                     l’E/S  se  termine  (depuis  2.5.41) ;  irq  - délai pour
                     prendre en compte l’interruption  (depuis  2.6.0-test4) ;
                     softirq  - délai pour prendre en compte les interruptions
                     logicielles (depuis 2.6.0-test4).

                     Depuis Linux 2.6.11, il y a une huitième colonne, vole -
                     le  temps  volé,  qui  est  le  temps passé dans d’autres
                     systèmes    d’exploitation    lorsqu’un     environnement
                     virtualisé est actif

                     Depuis  Linux 2.6.14, il y a une neuvième colonne, guest,
                     qui est le temps passé à exécuter un  processeur  virtuel
                     pour des systèmes d’exploitation invités 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 ; chacune des colonnes suivantes représente  le
                     total pour une interruption particulière.

              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 le 1er janvier 1970.

              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. Voir 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  pseudo-système  de  fichiers
              /proc,  et  en  utilisant  l’appel système (obsolète) sysctl(2).
              Actuellement, il existe les sous-répertoires  abi,  debug,  dev,
              fs,  kernel,  net,  proc,  rxrpc,  sunrpc  et vm qui contiennent
              chacun des fichiers et d’autres sous-répertoires.

       /proc/sys/abi (depuis Linux 2.4.10)
              Ce répertoire peut  contenir  des  fichiers  d’informations  sur
              l’exécutable  de  l’application  Voir le fichier fourni avec les
              sources  du   noyau   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
              On  trouve ici les sous-répertoires binfmt_misc, epoll, inotify,
              and mqueue, et  les  fichiers  dentry-state,  dir-notify-enable,
              dquot-nr,  file-max,  file-nr, inode-max, inode-nr, inode-state,
              lease-break-time,   leases-enable,   overflowgid,   overflowuid,
              suid_dumpable, super-max et super-nr.

       /proc/sys/fs/binfmt_misc
              La  documentation  concernant  les  fichiers de ce répertoire se
              trouve     dans     les     sources     du      noyau,      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 peut être utilisé pour 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ée 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.  Voir 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.  (Voir  aussi setrlimit(2) qui peut servir à
              fixer la limite par  processus,  RLIMIT_NOFILE).  Si  vous  avez
              beaucoup   de   messages   d’erreurs   indiquant  un  manque  de
              descripteurs de fichiers, 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.

              Si    vous    augmentez    /proc/sys/fs/file-max,   assurez-vous
              d’augmenter  /proc/sys/fs/inode-max  jusqu’à  3  à  4  fois   la
              nouvelle  valeur de /proc/sys/fs/file-max, ou vous serez à court
              d’inodes.

       /proc/sys/fs/file-nr
              Ce fichier (en  lecture  seule)  donne  le  nombre  de  fichiers
              actuellement   ouverts.   Il   contient   trois   nombres :  les
              descripteurs de fichiers allouées, les descripteurs de  fichiers
              libres,  et  le  maximum  de  descripteurs de fichiers. Le noyau
              alloue les descripteurs dynamiquement, mais  il  ne  les  libère
              pas. Si le nombre de descripteurs alloués est proche du maximum,
              vous pouvez envisager d’augmenter le maximum. Quand le nombre de
              descripteurs  libres est très grand, vous avez rencontré dans le
              passé un pic d’utilisation et  n’avez  probablement  pas  besoin
              d’augmenter le maximum.

       /proc/sys/fs/inode-max
              Ce  fichier  contient le nombre maximal d’inodes en mémoire. Sur
              certains systèmes  (2.4)  il  peut  être  absent.  Cette  valeur
              devrait  être 3 à 4 fois plus grande que le nombre file-max, car
              les descripteurs stdin, stdout, et les socket réseau nécessitent
              aussi  un  inode.  Lorsque  vous  manquez régulièrement d’inode,
              augmentez cette valeur.

       /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’inodes alloués par le système. Il peut être  légèrement
              plus  grand  que  inode-max,  car  Linux  les  alloue  par  page
              complète. nr_free_inodes représente le nombre  d’inodes  libres.
              preshrink  est  non-nul  lorsque nr_inodes > inode-max et que le
              système doit purger  la  liste  d’inodes  plutôt  qu’en  allouer
              davantage.

       /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.  Voir   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,  voir
              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, voir 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.  Voir  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/suid_dumpable (depuis Linux 2.6.13)
              La  valeur  de  ce  fichier  détermine  si des fichiers d’images
              mémoire ont été produit pour « set-user-ID » ou d’autre binaires
              protégés   ou  corrompus.  Trois  différentes  valeurs  entières
              peuvent être indiquées :

              0 (dfaut) Ceci 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 ( debug )  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.  Ceci  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. Ceci 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.

       /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 priode. 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 priode (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-bound (de Linux 2.2 à 2.6.24)
              Ce fichier conserve la valeur  de  limitation  de  capacits  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/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/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,
              voyez la page hostname(1).

       /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/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_KMOD
              activée.   Ceci   est   décrit   dans   le   fichier   du  noyau
              Documentation/kmod.txt (il n’est présent que dans les version de
              noyau 2.4 et antérieures).

       /proc/sys/kernel/msgmax
              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
              Ce   fichier  définit  la  limite  pour  le  système  du  nombre
              d’identifiants de files de messages. (Ce  fichier  n’existe  que
              depuis Linux 2.4).

       /proc/sys/kernel/msgmnb
              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/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 maximum
              plus un). 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  maximum  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
              Les    quatre    valeurs    dans   ce   fichier   sont   nommées
              console_loglevel,                      default_message_loglevel,
              minimum_console_level  et  default_console_loglevel. Ces valeurs
              influencent le comportement de printk() lors de  l’affichage  ou
              de  la  journalisation de message d’erreurs. Voir syslog(2) pour
              plus d’information sur les différents niveaux. Les messages avec
              une  priorité  plus  élevée que console_loglevel seront affichés
              sur la console. Les messages sans priorité explicite utiliseront
              la  priorité default_message_level. minimum_console_loglevel est
              la valeur  maximale  à  laquelle  console_loglevel  puisse  être
              élevé.  default_console_loglevel  est  la valeur par défaut pour
              console_loglevel.

       /proc/sys/kernel/pty (depuis Linux 2.6.4)
              Ce répertoire contient  deux  fichiers  relatifs  au  nombre  de
              pseudo-terminaux Unix 98 (voir pts(4)) sur le système.

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

       /proc/sys/kernel/pty/nr
              Ce   fichier,   en   lecture   seule,   indique   le  nombre  de
              pseudo-terminaux en cours d’utilisation.

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

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

       /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 ;  voir
              setrlimit(2)).Ce fichier  peut  être  utilisé  pour  ajuster  le
              nombre  maximum  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/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/shmall
              Ce fichier contient  le  nombre  maximal  de  pages  de  mémoire
              partagées (IPC System V) au niveau du système.

       /proc/sys/kernel/shmmax
              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_MAGIG_SYSRQ    a    été   validée.   Pour   plus
              d’informations,  consultez  Documentation/sysrq.txt   dans   les
              sources du noyau.

       /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 des
              détails.

       /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 fait libérer de la mémoire par le noyau,
              les caches, dentries et inodes propres, en libérant ainsi  cette
              mémoire libre.

              Pour    libérer    les    pagecache,    utilisez    echo   1   >
              /proc/sys/vm/drop_caches ;  to  libérer  les  dentries  et   les
              inodes,   utilisez  echo  2  >  /proc/sys/vm/drop_caches ;  pour
              libérer les pagecache, dentries et inodes,  utilisez  echo  3  >
              /proc/sys/vm/drop_caches.

              Parce que cette opération est non-destructive, et que les objets
              sales ne sont pas libérables,  l’utilisateur  doit  utiliser  la
              commande sync(8) au préalable.

       /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/sys/vm/legacy_va_layout (depuis Linux 2.6.9)
              S’il est non nul, ceci  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/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  comprend  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, taile
              de  la  mémoire  résidante,  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)
              Ceci 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.
              Ceci  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. Ceci é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  de  l’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

              Dans  le 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
              « OOM-killed ». Sous Linux 2.4, toute valeur non nulle  implique
              le  mode  1.  Dans  le  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
              Voir la description de /proc/sys/vm/overcommit_memory.

       /proc/sys/vm/panic_on_oom (depuis Linux 2.6.18)
              Ceci 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  noeuds  en
              utilisant  des  politiques  mémoire (MPOL_BIND dans mbind(2)) ou
              des ensembles de  processeurs  (cpuset(7)),  et  si  ces  noeuds
              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 noeuds, 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/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.

       /proc/sysvipc
              Sous-répertoire  contenant les pseudo-fichiers msg, sem and 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/tty
              Sous-répertoire    contenant    les   pseudo-fichiers   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)
       Les  fichiers  source  du  noyau :  Documentation/filesystems/proc.txt,
       Documentation/sysctl/vm.txt

COLOPHON

       Cette page fait partie de  la  publication  3.23  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

       Cette  page  de  manuel  a  été  traduite et mise à jour par Christophe
       Blaess <http://www.blaess.fr/christophe/> entre 1996 et 2003, puis  par
       Alain  Portal  <aportal AT univ-montp2 DOT fr> jusqu’en 2006, et mise à
       disposition sur http://manpagesfr.free.fr/.

       Les mises à jour et corrections de la version présente dans Debian sont
       directement      gérées      par      Jean-Luc      Coulon      (f5ibh)
       <jean-luc.coulon@wanadoo.fr> et l’équipe francophone de  traduction  de
       Debian.

       Veuillez   signaler   toute   erreur   de   traduction  en  écrivant  à
       <debian-l10n-french@lists.debian.org> ou par un rapport de bogue sur le
       paquet manpages-fr.

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