Provided by: manpages-de_2.14-1_all bug

BEZEICHNUNG

       proc - Pseudo-Dateisystem für Prozessinformationen

BESCHREIBUNG

       /proc ist ein Pseudo-Dateisystem. Es dient als Schnittstelle zu den Kernel-Datenstrukturen
       und wird gewöhnlich unter /proc eingehängt. Typischerweise wird es vom System  automatisch
       eingehängt. Es kann aber auch mit einem Befehl manuell eingehängt werden:

           mount -t proc proc /proc

       Die  meisten  Einträge  im Dateisystem proc sind nur lesbar, aber einige Dateien sind auch
       schreibbar, wodurch das Verändern von Kernel-Variablen erlaubt wird.

   Einhängeoptionen
       Das Dateisystem proc unterstützt die folgenden Einhängeoptionen:

       hidepid=n (seit Linux 3.3)
              Diese Option regelt, wer auf die Informationen in  den  Verzeichnissen  /proc/[PID]
              zugreifen darf. Das Argument n hat einen der folgenden Werte:

              0   Jeder   darf  auf  alle  Verzeichnisse  /proc/[PID]  zugreifen.  Dies  ist  das
                  traditionelle Verhalten und  die  Vorgabe,  falls  diese  Einhängeoption  nicht
                  angegeben ist.

              1   Benutzer  dürfen  auf nur ihre eigenen Dateien und Unterverzeichnisse innerhalb
                  von  /proc/[PID]  zugreifen  (die  Verzeichnisse  /proc/[PID]  selbst   bleiben
                  sichtbar).  Sensitive  Dateien  wie  /proc/[PID]/cmdline und /proc/[PID]/status
                  werden  jetzt  vor  anderen  Benutzer  geschützt.  Dadurch  ist  es  unmöglich,
                  herauszufinden,  ob  ein  andere  Benutzer  ein  bestimmtes  Programm  ausführt
                  (solange das Programm sich nicht anderweitig durch sein Verhalten  zu  erkennen
                  gibt).

              2   Wie  für  Modus 1, aber zusätzlich werden die Verzeichnisse /proc/[PID] anderer
                  Benutzer unsichtbar. Das bedeutet, dass die Einträge /proc/[PID] nicht mehr zur
                  Aufdeckung  von  PIDs auf dem System genutzt werden können. Das versteckt nicht
                  die Tatsache, dass ein bestimmter PID-Wert existiert (dies  kann  durch  andere
                  Methoden,  beispielsweise  »kill  -0  $PID«,  herausgefunden  werden),  aber es
                  versteckt die UID und GID  des  Prozesses,  die  ansonsten  durch  Einsatz  von
                  stat(2)  auf  einem  /proc/[PID]-Verzeichnis herausgefunden werden könnte. Dies
                  verkompliziert  die  Aufgabe  eines  Angreifers  deutlich,  Informationen  über
                  laufende  Prozesse zu sammeln (z.B. zu entdecken, ob ein Daemon mit erweiterten
                  Privilegien läuft, ob ein anderer Benutzer ein bestimmtes  sensitives  Programm
                  ausführt,  ob  ein  anderer Benutzer ein bestimmtes Programm überhaupt ausführt
                  usw.).

       gid=gid (seit Linux 3.3)
              Legt  die  Kennung  einer  Gruppe   fest,   deren   Mitglieder   berechtigt   sind,
              Prozessinformationen  herauszufinden,  die  andernfalls  durch  hidepid  verweigert
              würden (d.h. für Benutzer in der Gruppe verhält es sich, als ob /proc mit hidepid=0
              eingehängt  worden wäre). Diese Gruppe sollte anderen Ansätzen (wie dem Eintrag von
              Benutzern in die Datei sudoers(5)) vorgezogen werden.

   Dateien und Verzeichnisse
       Die folgende Liste beschreibt viele der Dateien  und  Verzeichnisse  unter  der  Hierachie
       /proc:

       /proc/[PID]
              Für jeden laufenden Prozess gibt es ein numerisches Unterverzeichnis, dessen Nummer
              der Prozesskennung (PID) entspricht.

              Jedes /proc/[pid]-Unterverzeichnis enthält die unten  beschriebenen  Pseudo-Dateien
              und  -Verzeichnisse.  Als  Besitzer  der  Datei  ist  normalerweise  die effektiven
              Benutzer-  und  Gruppenkennung  des  Prozesses  eingetragen,  allerdings  wird  als
              Sicherheitsmaßnahme    der    Besitzer    auf    root:root    gesetzt,   wenn   das
              »dumpable«-Attribut des Prozesses auf einen anderen Wert als 1 gesetzt ist.  Dieses
              Attribut mag sich aus folgenden Gründen ändern:

              *  Das Attribut wurde mit der Aktion PR_SET_DUMPABLE von prctl(2) explizit gesetzt.

              *  Das  Attribut  wurde auf den Wert in der Datei /proc/sys/fs/suid_dumpable (unten
                 beschrieben) zurückgesetzt. Die Gründe sind in prctl(2) beschrieben.

              Das »dumpable«-Attribut auf 1 zurückzusetzen ändert auch den Besitzer  der  Dateien
              /proc/[PID]/* auf die reale UID und GID des Prozesses zurück.

       /proc/[PID]/attr
              Die  Dateien  in  diesem Verzeichnis stellen eine API für Sicherheitsmodule bereit.
              Die Inhalte dieses Verzeichnisses sind Dateien, die gelesen und geschrieben  werden
              können,  um  sicherheitsbezogene  Attribute  zu  setzen.  Dieses  Verzeichnis wurde
              hinzugefügt, um SELinux zu unterstützen. Der Ansatz  des  API  war  aber  allgemein
              genug,  um  andere Sicherheitsmodule zu unterstützen. Für den Zweck der Erläuterung
              werden Beispiele, wie SELinux diese Dateien verwendet, weiter unten angegeben.

              Dieses  Verzeichnis  ist  nur  vorhanden,  falls  der  Kernel  mit  CONFIG_SECURITY
              konfiguriert wurde.

       /proc/[PID]/attr/current (seit Linux 2.6.0)
              Der  Inhalt  dieser  Datei  stellt die aktuellen Sicherheitsattribute des Prozesses
              bereit.

              In SELinux wird diese Datei zur Ermittlung des Sicherheitskontextes eines Prozesses
              verwandt.   Vor   Linux   2.6.11   konnte   diese   Datei   nicht  zum  Setzen  des
              Sicherheitskontextes verwandt werden (ein Schreibzugriff wurde  immer  verweigert),
              da  SELinux  die  Prozesssicherheitsübergänge  auf  execve(2)  begrenzte (siehe die
              Beschreibung von /proc/[PID]/attr/exec weiter unten). Seit Linux 2.6.11 hat SELinux
              diese  Einschränkung  aufgehoben  und  begonnen,  »set«  (Setzen-)Aktionen  mittels
              Schreibzugriffen auf diesen Knoten zu unterstützen, falls  dies  durch  Richtlinien
              erlaubt  wurde.  Allerdings  ist  die  Verwendung dieser Aktion nur für Anwendungen
              geeignet, denen vertraut wird, die gewünschte Separierung zwischen  dem  alten  und
              dem  neuen  Sicherheitskontext  aufrechtzuerhalten.  Vor  Linux  2.6.28 erlaubte es
              SELinux   Threads   innerhalb    von    Multi-Threaded-Prozessen    nicht,    ihren
              Sicherheitskontext  mittels  dieses  Knotens zu setzen, da es zu einer Inkonsistenz
              innerhalb der Sicherheitskontexte der Threads, die den gleichen Speicher  gemeinsam
              benutzen,  führen würde. Seit 2.6.28 hat SELinux diese Einschränkung aufgehoben und
              begonnen, »set«-Aktionen für  Threads  innerhalb  von  Multi-Threaded-Prozessen  zu
              unterstützen,  falls  der  neue  Sicherheitskontext innerhalb der Grenzen des alten
              Sicherheitskontextes liegt, wobei die  begrenzende  Beziehung  in  den  Richtlinien
              definiert  ist und garantiert, dass der neue Sicherheitskontext über eine Teilmenge
              der Rechte des alten Sicherheitskontextes verfügt. Andere Sicherheitsmodule  können
              sich   entscheiden,  »set«-Aktionen  über  Schreibzugriffe  auf  diesen  Knoten  zu
              unterstützen.

       /proc/[PID]/attr/exec (seit Linux 2.6.0)
              Diese Datei repräsentiert  die  Attribute,  die  den  Prozessen  bei  nachfolgenden
              execve(2) zugewiesen werden sollen.

              In  SELinux,  this  is needed to support role/domain transitions, and execve(2)  is
              the preferred point to make such transitions because it offers better control  over
              the  initialization of the process in the new security label and the inheritance of
              state. In SELinux, this attribute is reset on execve(2)  so that  the  new  program
              reverts  to  the  default  behavior  for  any execve(2)  calls that it may make. In
              SELinux, a process can set only its own /proc/[pid]/attr/exec attribute.

       /proc/[PID]/attr/fscreate (seit Linux 2.6.0)
              Diese Datei  repräsentiert  die  Attribute,  die  Dateien,  die  von  nachfolgenden
              Aufrufen von open(2), mkdir(2), symlink(2) und mknod(2) erstellt werden, zugewiesen
              werden sollen.

              SELinux verwendet diese Datei,  um  die  Erstellung  einer  Datei  (mit  den  vorab
              erwähnten  Systemaufrufen)  in  einem  sicheren Zustand zu unterstützen, so dass es
              kein Risiko  gibt,  dass  ein  ungeeigneter  Zugriff  zwischen  dem  Zeitpunkt  der
              Erstellung und dem Zeitpunkt des Setzens der Attribute gibt. In SELinux wird dieses
              Attribut bei execve(2) zurückgesetzt, so dass das neue Programm wieder auf das alte
              Verhalten  für  alle  seine  Dateierstellungsaufrufe zurückfällt. Das Attribut wird
              aber über mehrere Dateierstellungsaufrufe hinweg innerhalb eines Programms erhalten
              bleiben,  solange  es  nicht  explizit  zurückgesetzt  wird. Unter SELinux kann ein
              Prozess nur sein eigenes Attribut /proc/[PID]/attr/fscreate setzen.

       /proc/[PID]/attr/keycreate (seit Linux 2.6.18)
              Falls ein Prozess ein Sicherheitskontext  in  diese  Datei  schreibt,  werden  alle
              nachfolgend  erstellten  Schlüssel  (add_key(2)) mit diesem Kontext gekennzeichnet.
              Für       weitere       Informationen       siehe       die        Kernelquelldatei
              Documentation/security/keys/core.rst  (oder  Datei  Documentation/security/keys.txt
              unter Linux zwischen 3.0 und 4.13 oder Documentation/keys.txt vor Linux 3.0).

       /proc/[PID]/attr/prev (seit Linux 2.6.0)
              Diese Datei enthält den Sicherheitskontext des Prozesses vor dem letzten execve(2);
              d.h. den vorherigen Wert von /proc/[PID]/attr/current.

       /proc/[PID]/attr/socketcreate (seit Linux 2.6.18)
              Falls  ein  Prozess  ein  Sicherheitskontext  in  diese Datei schreibt, werden alle
              nachfolgend erstellten Sockets mit diesem Kontext gekennzeichnet.

       /proc/[PID]/autogroup (seit Linux 2.6.38)
              siehe sched(7)

       /proc/[PID]/auxv (seit 2.6.0-test7)
              Dies ist der Inhalt der Informationen für den ELF-Interpreter, die dem Prozess  zur
              Ausführungszeit  übergeben  wurden.  Das Format ist eine unsigned long-Kennung plus
              ein unsigned long-Wert für jeden Eintrag. Der letzte Eintrag enthält  zwei  Nullen.
              Siehe auch getauxval(3).

              Die      Zugriffsberechtigungen      dieser      Datei     werden     von     einer
              Ptrace-Zugriffsmodusprüfung PTRACE_MODE_READ_FSCREDS geregelt; siehe ptrace(2).

       /proc/[PID]/cgroup (seit Linux 2.6.24)
              siehe cgroups(7)

       /proc/[PID]/clear_refs (seit Linux 2.6.22)

              In diese Datei kann nur  geschrieben  werden  und  nur  durch  den  Eigentümer  des
              Prozesses.

              Die folgenden Werte dürfen in die Datei geschrieben werden:

              1 (seit Linux 2.6.22)
                     setzt  die  Bits  PG_Referenced  und  ACCESSED/YOUNG für alle diesem Prozess
                     zugeordneten Seiten zurück. (Vor Kernel 2.6.32  hatte  das  Schreiben  eines
                     beliebigen von Null verschiedenen Wertes in diese Datei diesen Effekt.)

              2 (seit Linux 2.6.32)
                     setzt  die  Bits  PG_Referenced und ACCESSED/YOUNG für alle anonymen Seiten,
                     die dem Prozess zugeordnet sind, zurück.

              3 (seit Linux 2.6.32)
                     Reset the PG_Referenced and ACCESSED/YOUNG bits for  all  file-mapped  pages
                     associated with the process.

              Clearing  the  PG_Referenced  and  ACCESSED/YOUNG bits provides a method to measure
              approximately how much memory a process is using. One first inspects the values  in
              the  "Referenced"  fields for the VMAs shown in /proc/[pid]/smaps to get an idea of
              the memory footprint  of  the  process.  One  then  clears  the  PG_Referenced  and
              ACCESSED/YOUNG bits and, after some measured time interval, once again inspects the
              values in the "Referenced" fields to get an idea of the change in memory  footprint
              of  the  process  during  the  measured  interval.  If  one  is  interested only in
              inspecting the selected mapping types, then the value 2 or 3 can be used instead of
              1.

              Weitere Werte können geschrieben werden, um andere Eigenschaften zu beeinflussen:

              4 (seit Linux 3.11)
                     Clear the soft-dirty bit for all the pages associated with the process. This
                     is used  (in  conjunction  with  /proc/[pid]/pagemap)   by  the  check-point
                     restore  system to discover which pages of a process have been dirtied since
                     the file /proc/[pid]/clear_refs was written to.

              5 (seit Linux 4.0)
                     setzt die Resident Set Size (»Hochwassermarke«) auf den derzeitigen Wert der
                     resident set size des aktuellen Prozesses zurück.

              Wird  ein  anderer  als einer der oben aufgeführten Werte in /proc/[PID]/clear_refs
              geschrieben, so hat dies keinen Effekt.

              Die    Datei    /proc/[PID]/clear_refs    ist    nur    vorhanden,     wenn     die
              Kernel-Konfigurationsoption CONFIG_PROC_PAGE_MONITOR aktiviert ist.

       /proc/[PID]/cmdline
              In  dieser  nur  lesbaren  Datei  steht  die  vollständige  Befehlszeile für diesen
              Prozess, wenn er kein Zombie ist. Im letzteren Fall ist die Datei leer,  ein  Lesen
              der  Datei  wird  0  Zeichen zurückgeben. Die Befehlszeilenargumente sind in dieser
              Datei als ein Satz von Zeichenketten abgelegt, Trennzeichen sind Null-Bytes ('\0').
              Nach der letzten Zeichenkette folgt noch ein Null-Byte.

       /proc/[PID]/comm (seit Linux 2.6.33)
              Diese   Datei  legt  den  Wert  comm  des  Prozesses  offen  –  das  bedeutet,  den
              Befehlsnamen, der diesem  Prozess  zugeordnet  ist.  Verschiedene  Threads  in  dem
              gleichen  Prozess  können  verschiedene  Werte  von  comm  haben,  auf  die mittels
              /proc/[PID]/task/[TID]/comm  zugegriffen  werden  kann.  Ein  Thread  kann   seinen
              comm-Wert  verändern  oder  den eines anderen Threads in der gleichen Thread-Gruppe
              (siehe die Diskussion  von  CLONE_THREAD  in  clone(2)),  indem  er  in  die  Datei
              /proc/self/task/[TID]/comm  schreibt.  Zeichenketten  länger als TASK_COMM_LEN (16)
              Zeichen werden ohne Rückmeldung abgeschnitten.

              Diese Datei stellt eine Obermenge der Aktionen prctl(2) PR_SET_NAME und PR_GET_NAME
              bereit  und  wird  durch  pthread_setname_np(3)  eingesetzt,  wenn  vom Aufrufenden
              verschiedene Threads umbenannt werden.

       /proc/[PID]/coredump_filter (seit Linux 2.6.23)
              siehe core(5)

       /proc/[PID]/cpuset (seit Linux 2.6.12)
              siehe cpuset(7)

       /proc/[PID]/cwd
              Dies ist ein symbolischer Link auf das aktuelle Arbeitsverzeichnis  des  Prozesses.
              Um  dieses  z.B. für den Prozess 20 herauszufinden, geben Sie die folgenden Befehle
              ein:

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

              Beachten Sie, dass der  Befehl  pwd  häufig  in  die  Shell  eingebaut  ist  (shell
              built-in)  und  daher  möglicherweise  nicht  ordnungsgemäß  funktioniert.  Mit der
              bash(1) können Sie pwd -P verwenden.

              In einem Multithread-Prozess ist der Inhalt dieses symbolischen  Links  nicht  mehr
              verfügbar,  wenn  der  Haupt-Thread  schon  beendet ist (typischerweise durch einen
              Aufruf von pthread_exit(3)).

              Die  Rechte,  diesen  symbolischen  Link   zu   dereferenzieren   oder   zu   lesen
              (readlink(2)),       werden       von       einer       Ptrace-Zugriffsmodusprüfung
              PTRACE_MODE_READ_FSCREDS gesteuert; siehe ptrace(2).

       /proc/[PID]/environ
              Diese Datei enthält die anfängliche Prozess-Umgebung, die gesetzt  wurde,  als  das
              aktuell  ausgeführte  Programm  mit  einem  execve(2) gestartet wurde. Die Einträge
              werden durch Null-Bytes ('\0') getrennt, am  Ende  der  Liste  kann  ebenfalls  ein
              Null-Byte stehen. Die Umgebung von Prozess 1 geben Sie wie folgt aus:

                  $ strings /proc/1/environ

              Falls  ein Prozess nach einem execve(2) seine Umgebung verändert (z.B. durch Aufruf
              von   Funktionen   wie   putenv(3)   oder   durch   direkte    Veränderungen    der
              environ(7)-Variablen) wird diese Datei solche Änderungen nicht berücksichtigen.

              Ein Prozess kann desweiteren den Speicherort, auf den diese Datei verweist, mittels
              der prctl(2)-Aktionen wie PR_SET_MM_ENV_START verändern.

              Die     Zugriffsberechtigungen     dieser     Datei      werden      von      einer
              Ptrace-Zugriffsmodusprüfung PTRACE_MODE_READ_FSCREDS geregelt; siehe ptrace(2).

       /proc/[PID]/exe
              Unter  Linux  2.2  und  höher  ist  diese  Datei  ein  symbolischer  Link  mit  dem
              eigentlichen Pfad des ausgeführten Befehls. Dieser symbolische  Link  kann  in  der
              Regel dereferenziert werden; der Versuch, ihn zu öffnen, wird die ausführbare Datei
              öffnen. Sie können sogar  /proc/[PID]/exe  eingeben,  um  eine  weitere  Kopie  der
              gleichen ausführbaren Datei auszuführen, die für den Prozess [PID] läuft. Falls der
              Pfadname mit unlink gelöscht wurde  wird  der  symbolische  Link  die  Zeichenkette
              '(deleted)'   an   den   ursprünglichen   Dateinamen   angehängt  haben.  In  einem
              Multithread-Prozess ist der Inhalt dieses symbolischen Links nicht mehr  verfügbar,
              wenn  der  Haupt-Thread  schon  beendet  ist (typischerweise durch einen Aufruf von
              pthread_exit(3)).

              Die  Rechte,  diesen  symbolischen  Link   zu   dereferenzieren   oder   zu   lesen
              (readlink(2)),       werden       von       einer       Ptrace-Zugriffsmodusprüfung
              PTRACE_MODE_READ_FSCREDS gesteuert; siehe ptrace(2).

              Unter Linux 2.0 und früher ist /proc/[PID]/exe ein Zeiger  auf  das  Programm,  das
              ausgeführt  wurde  und  erscheint als symbolischer Link. Ein Aufruf von readlink(2)
              auf diese Datei unter Linux 2.0 gibt eine Zeichenkette im folgenden Format zurück:

                  [Gerät]:Inode

              Beispielsweise  wäre  [0301]:1502  also  Inode  1502  auf   dem   Gerät   mit   der
              Major-Gerätenummer  03 (IDE-, MFM-Festplatten) und der Minor-Gerätenummer 01 (erste
              Partition der ersten Platte).

              find(1) mit der Option -inum zeigt, in welchem Verzeichnis die Datei liegt.

       /proc/[PID]/fd/
              In diesem Unterverzeichnis stehen die  Dateideskriptoren  der  von  diesem  Prozess
              geöffneten  Dateien.  Diese  Einträge  sind  symbolische  Links zu den eigentlichen
              Dateien. Also ist 0 die Standardeingabe, 1  ist  die  Standardausgabe,  2  ist  der
              Standardfehlerkanal usw.

              Für  Dateideskriptoren  für Pipes und Sockets werden die Einträge symbolische Links
              sein, deren Inhalt der Dateityp mit dem Inode ist. Ein Aufruf von  readlink(2)  mit
              dieser Datei liefert eine Zeichenkette im folgenden Format zurück:

                  Typ:[Inode]

              Beispielsweise wird socket:[2248868] ein Socket sein, dessen Inode 2248868 ist. Für
              Sockets kann dieser Inode dazu verwandt werden, weitere Informationen in einem  der
              Dateien unter /proc/net/ zu finden.

              Für  Dateideskriptoren,  die  keinen  korrespondierenden  Inode  haben  (d.h. durch
              bpf(2),   epoll_create(2),   eventfd(2),    inotify_init(2),    perf_event_open(2),
              signalfd(2),  timerfd_create(2)  und  userfaultfd(2)  erstellte Dateideskriptoren),
              wird der Eintrag ein symbolischer Link sein mit Inhalten der Form

                  anon_inode:<Dateityp>

              In  vielen  (aber  nicht  allen)  Fällen  wird  Dateityp  durch   eckige   Klammern
              eingeschlossen.

              Beispielsweise  wird  ein  Epoll-Dateideskriptor  einen  symbolischen  Link, dessen
              Inhalt die Zeichenkette anon_inode:[eventpoll] ist, haben.

              In einem Multithread-Prozess  ist  der  Inhalt  dieses  Verzeichnisses  nicht  mehr
              verfügbar,  wenn  der  Haupt-Thread  schon  beendet ist (typischerweise durch einen
              Aufruf von pthread_exit(3)).

              Programme, die einen Dateinamen als Befehlszeilen-Argument verarbeiten,  aber  ohne
              Argument  keine  Eingaben  aus  der Standardeingabe annehmen oder die in eine Datei
              schreiben, deren Name als Befehlszeilen-Argument übergeben wird, aber bei fehlendem
              Argument  nicht  in  die  Standardausgabe  ausgeben, können dennoch mittels Dateien
              /proc/[PID]/fd als Befehlszeilenargument dazu gebracht werden, die  Standardeingabe
              oder  die  Standardausgabe zu verwenden. Angenommen, der Schalter -i bezeichnet die
              Eingabedatei und -o die Ausgabedatei:

                  $ foobar -i /proc/self/fd/0 -o /proc/self/fd/1 

              und Sie haben einen funktionierenden Filter.

              /proc/self/fd/N  ist  in  etwa  dasselbe  wie  /dev/fd/N  in  einigen   UNIX-   und
              UNIX-ähnlichen  Systemen. Die meisten MAKEDEV-Skripte legen tatsächlich symbolische
              Links von /proc/self/fd zu /dev/fd an.

              Die meisten Systeme stellen die  symbolischen  Links  /dev/stdin,  /dev/stdout  und
              /dev/stderr  bereit,  die  entsprechend auf die Dateien 0, 1 und 2 in /proc/self/fd
              weisen. Das letzte Beispiel könnte also auch alternativ geschrieben werden als:

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

              Die Rechte, die symbolischen Links in diesem Verzeichnis zu dereferenzieren oder zu
              lesen     (readlink(2)),     werden     von    einer    Ptrace-Zugriffsmodusprüfung
              PTRACE_MODE_READ_FSCREDS gesteuert; siehe ptrace(2).

              Beachten Sie, dass für Dateideskriptoren, die sich auf Inodes beziehen  (Pipes  und
              Sockets,  siehe oben), diese Inodes immer noch die von den Einträgen /proc/[PID]/fd
              verschiedenen Berechtigungsbits und Eigentümerinformationen haben und dass sich der
              Eigentümer von den Benutzer- und Gruppenkennungen des Prozesses unterscheiden kann.
              Einem nicht privilegierten Prozess könnten die Rechte zum  Öffnen  fehlen,  wie  in
              diesem Beispiel:

                  $ echo test | sudo -u nobody cat
                  test
                  $ echo test | sudo -u nobody cat /proc/self/fd/0
                  cat: /proc/self/fd/0: Permission denied

              Dateideskriptor  0  bezieht  sich  auf  die durch die Shell erzeugte und von diesem
              Shell-Benutzer (dies ist nobody)  besessene  Pipe,  so  dass  cat  nicht  über  die
              Berechtigungen  verfügt, um einen neuen Dateideskriptor zu erstellen, um von dieser
              Inode zu lesen, obwohl es immer noch  vom  existierenden  Dateideskriptor  0  lesen
              kann.

       /proc/[PID]/fdinfo/ (seit Linux 2.6.22)
              In  diesem  Unterverzeichnis  stehen die Dateideskriptoren aller von diesem Prozess
              geöffneten Dateien. Die Dateien in diesem Verzeichnis können nur von dem Eigentümer
              des  Prozesses  gelesen  werden.  Der  Inhalt  jeder  Datei kann gelesen werden, um
              Informationen über den entsprechenden Dateideskriptor zu bekommen. Der Inhalt hängt
              von  der  Art der Datei ab, die von dem entsprechenden Dateideskriptor referenziert
              wird.

              Für reguläre Dateien und Verzeichnisse ergibt sich etwas der Form:

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

              Die Bedeutung der Felder im Einzelnen:

              pos    Dies ist eine Dezimalzahl, die den Dateiversatz zeigt.

              flags  Dies  ist  eine  oktale   Zahl,   die   den   Dateizugriffsmodus   und   die
                     Dateistatusschalter      anzeigt      (siehe     open(2)).     Falls     der
                     »close-on-exec«-Dateideskriptorschalter gesetzt ist,  wird  flags  auch  den
                     Wert O_CLOEXEC enthalten.

                     Vor  Linux  3.1  zeigte  dieses  Feld  inkorrekterweise  die Einstellung von
                     O_CLOEXEC zum Zeitpunkt des Öffnens der Datei an, statt den  aktuellen  Wert
                     des Schalters close-on-exec.

              mnt_id Dieses seit Linux 3.15 vorhandene Feld zeigt die Kennung des Einhängepunktes
                     an,   der   diese   Datei    enthält.    Siehe    die    Beschreibung    von
                     /proc/[PID]/mountinfo.

              Für  den  Eventfd-Dateideskriptor  (siehe  eventfd(2)) gibt es (seit Linux 3.8) die
              folgenden Felder:

                  pos: 0
                  flags:    02
                  mnt_id:   10
                  eventfd-count:               40

              eventfd-count ist der aktuelle hexadezimale Wert des Eventfd-Zählers.

              Für den Epoll-Dateideskriptor  (siehe  epoll(7))  gibt  es  (seit  Linux  3.8)  die
              folgenden Felder:

                  pos: 0
                  flags:    02
                  mnt_id:   10
                  tfd:        9 events:       19 data: 74253d2500000009
                  tfd:        7 events:       19 data: 74253d2500000007

              Jede  mit  tfd  beginnende  Zeile  beschreibt  einen  Dateideskriptor,  der mit dem
              Epoll-Dateideskriptor überwacht wird (siehe epoll_ctl(2) für weitere Details).  Das
              Feld tfd ist die Nummer des Dateideskriptors. Das Feld events ist eine hexadezimale
              Maske der für diesen Dateideskriptor überwachten Ereignisse. Das Feld data ist  der
              diesem Dateideskriptor zugeordnete Datenwert.

              Für  den  Signalfd-Dateideskriptor (siehe signalfd(2)) gibt es (seit Linux 3.8) die
              folgenden Felder:

                  pos: 0
                  flags:    02
                  mnt_id:   10
                  sigmask:  0000000000000006

              sigmask   ist   die   hexadezimale   Maske   der   Signale,   die    über    diesen
              Signalfd-Dateideskriptor akzeptiert werden. (In diesem Beispiel sind die Bits 2 und
              3 gesetzt; dies entspricht den Signalen SIGINT und SIGQUIT; siehe signal(7).)

              Für Inotify-Dateideskriptoren (siehe inotify(7))  gibt  es  (seit  Linux  3.8)  die
              folgenden Felder:

                  pos: 0
                  flags:    00
                  mnt_id:   11
                  inotify wd:2 ino:7ef82a sdev:800001 mask:800afff ignored_mask:0 fhandle-bytes:8 fhandle-type:1 f_handle:2af87e00220ffd73
                  inotify wd:1 ino:192627 sdev:800001 mask:800afff ignored_mask:0 fhandle-bytes:8 fhandle-type:1 f_handle:27261900802dfd73

              Jede  der mit »inotify« beginnenden Zeilen zeigt Informationen über eine überwachte
              Datei oder ein überwachtes Verzeichnis an. Die Felder  in  dieser  Zeile  sind  wie
              folgt:

              wd     Eine Watch-Deskriptornummer (deziaml)

              ino    Die Inode-Nummer der Zieldatei (hexadezimal).

              sdev   Die Kennung des Gerätes, auf dem sich die Zieldatei befindet (hexadezimal).

              mask   Die Maske der für die Zieldatei überwachten Ereignisse (hexadezimal).

              Falls  der  Kernel  mit  Exportfs-Unterstützung  gebaut  wurde, ist der Pfad zu der
              Zieldatei  mittels  drei  hexadezimaler  Felder   als   Datei-Handle   offengelegt:
              fhandle-bytes, fhandle-type und f_handle.

              Für  Fanotify-Dateideskriptoren  (siehe  fanotify(7))  gibt es (seit Linux 3.8) die
              folgenden Felder:

                  pos: 0
                  flags:    02
                  mnt_id:   11
                  fanotify flags:0 event-flags:88002
                  fanotify ino:19264f sdev:800001 mflags:0 mask:1 ignored_mask:0 fhandle-bytes:8 fhandle-type:1 f_handle:4f261900a82dfd73

              Das vierte Feld zeigt Informationen, die bei  der  Erstellung  der  Fanotify-Gruppe
              mittels fanotify_init(2) definiert wurden:

              flags  Das an fanotify_init(2) übergebene Argument flags (hexadezimal ausgedrückt).

              event-flags
                     Das  an  fanotify_init(2)  übergebene  Argument  event_f_flags  (hexadezimal
                     ausgedrückt).

              Jede zusätzliche in der Datei gezeigte Zeile enthält Informationen  über  eine  der
              Markierungen  in  der  Fanotify-Gruppe.  Die  meisten  der Felder sind für Inotify,
              außer:

              mflags Die der Markierung zugeordneten Schalter (hexadezimal ausgedrückt).

              mask   Die Ereignismaske für diese Markierung (hexadezimal ausgedrückt).

              ignored_mask
                     Die Maske der  für  diese  Markierung  ignorierten  Ereignisse  (hexadezimal
                     ausgedrückt).

              Für Details über diese Felder lesen Sie fanotify_mark(2).

       /proc/[PID]/gid_map (seit Linux 3.5)
              Siehe user_namespaces(7).

       /proc/[PID]/io (seit Kernel 2.6.20)
              Diese Datei enthält E/A-Statistiken für den Prozess, beispielsweise:

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

              Die Bedeutung der Felder im Einzelnen:

              rchar: characters read (gelesene Zeichen)
                     Die  Anzahl  an  Bytes,  die  aufgrund dieses Prozesses vom Speicher gelesen
                     wurden. Dies ist einfach die Summe der Bytes, die dieser Prozess an  read(2)
                     und ähnliche Systemaufrufe übergeben hat. Sie enthält Dinge wie Terminal-E/A
                     und ist unabhängig davon, ob wirklich physische Platten-E/A  benötigt  wurde
                     (die  Leseanforderung  kann aus dem Seitenzwischenspeicher befriedigt worden
                     sein).

              wchar: characters written (geschriebene Zeichen)
                     Die Anzahl an Bytes, die aufgrund dieses Prozesses  auf  Platte  geschrieben
                     wurden oder werden. Es gelten ähnliche Warnungen wie bei rchar.

              syscr: Syscalls lesen
                     Ein  Versuch,  die  Anzahl  der  gelesen  E/A-Vorgänge  zu  zählen (d.h. der
                     Systemaufrufe wie read(2) und pread(2)).

              syscw: Syscalls schreiben
                     Ein Versuch, die Anzahl der geschriebenen E/A-Vorgänge zu zählen  (d.h.  der
                     Systemaufrufe wie write(2) und pwrite(2)).

              read_bytes: bytes read (gelesene Bytes)
                     Versucht,  die  Anzahl  der  Bytes  zu zählen, die aufgrund dieses Prozesses
                     wirklich  von  der  Speichereinheit  geholt  wurden.  Für  blockunterstützte
                     Dateisysteme ist dies genau.

              write_bytes: bytes written (geschriebene Bytes)
                     Ein  Versuch,  die  Anzahl der Bytes, die ausgelöst durch diesen Prozess zum
                     Speichermedium gesandt wurden, zu zählen.

              cancelled_write_bytes:
                     Die große Ungenauigkeit hier ist das Abschneiden. Falls ein Prozess 1 MB  in
                     eine   Datei  schreibt  und  diese  dann  löscht,  wird  tatsächlich  nichts
                     rausgeschrieben. Allerdings wird dies als  1  MB  Schreiben  in  eine  Datei
                     verbucht.  Mit  anderen  Worten: Dieses Feld stellt die Anzahl an Bytes dar,
                     die   durch   diesen   Prozess    nicht    passiert    sind,    indem    der
                     Seitenzwischenspeicher abgeschnitten wurde. Ein Prozess kann auch »negative«
                     E/A    hervorrufen.    Falls    dieser    Prozess    benutzten     (»dirty«)
                     Seitenzwischenspeicher  abschneidet,  wird  ein  Teil des E/A, der für einen
                     anderen Prozess (in seinem write_bytes) verbucht wurde, nicht passieren.

              Hinweis: In der aktuellen Implementierung gibt es auf 32-Bit-Systemen einen kleinen
              Ressourcenwettlauf:  Falls  Prozess  A  /proc/[PID]/io von Prozess B liest, während
              Prozess  B  einen  der   64-Bit-Zähler   aktualisiert,   könnte   Prozess   A   ein
              Zwischenergebnis sehen.

              Die      Zugriffsberechtigungen      dieser      Datei     werden     von     einer
              Ptrace-Zugriffsmodusprüfung PTRACE_MODE_READ_FSCREDS geregelt; siehe ptrace(2).

       /proc/[PID]/limits (seit Linux 2.6.24)
              Diese Datei enthält die weichen und harten Grenzen sowie die Maßeinheiten  der  für
              den   Prozess   geltenden   Ressourcenbeschränkungen   (siehe   getrlimit(2)).  Bis
              einschließlich Linux 2.6.35 darf die Datei nur mit der  realen  UID  des  Prozesses
              gelesen  werden. Seit Linux 2.6.36 kann diese Datei von allen Benutzern des Systems
              gelesen werden.

       /proc/[PID]/map_files/ (seit Kernel 3.3)
              This subdirectory  contains  entries  corresponding  to  memory-mapped  files  (see
              mmap(2)).  Entries are named by memory region start and end address pair (expressed
              as hexadecimal numbers), and are symbolic links to  the  mapped  files  themselves.
              Here  is an example, with the output wrapped and reformatted to fit on an 80-column
              display:

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

              Although these entries are present for memory regions that  were  mapped  with  the
              MAP_FILE flag, the way anonymous shared memory (regions created with the MAP_ANON |
              MAP_SHARED flags)  is implemented in Linux means that such regions also  appear  on
              this  directory.  Here is an example where the target file is the deleted /dev/zero
              one:

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

              Dieses   Verzeichnis   erscheint   nur,   falls   die   Kernel-Konfigurationsoption
              CONFIG_CHECKPOINT_RESTORE  aktiviert  ist.  Um  den Inhalt dieses Verzeichnisses zu
              sehen, wird das Privileg CAP_SYS_ADMIN benötigt.

       /proc/[PID]/maps
              A file containing the currently mapped memory regions and their access permissions.
              See mmap(2)  for some further information about memory mappings.

              Die      Zugriffsberechtigungen      dieser      Datei     werden     von     einer
              Ptrace-Zugriffsmodusprüfung PTRACE_MODE_READ_FSCREDS geregelt; siehe ptrace(2).

              Das Format der Datei lautet:

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

              The address field is the address space in the process that  the  mapping  occupies.
              The perms field is a set of permissions:

                  r = read (lesen)
                  w = write (schreiben)
                  x = execute (ausführen)
                  s = shared (gemeinsam benutzt)
                  p = private (copy on write) (Kopieren bei Schreibzugriffen)

              Das  Feld  offset  ist  der Abstand zum Anfang (der Datei oder was auch immer), dev
              steht für das Gerät (major:minor) und Inode ist der Inode  auf  diesem  Gerät.  Ist
              Inode  0,  dann  ist  keine Datei mit diesem Speicherbereich verbunden, wie z.B. im
              Falle von BSS (nicht initialisierte Daten).

              The pathname field will usually be the file that is backing the  mapping.  For  ELF
              files,  you  can  easily  coordinate with the offset field by looking at the Offset
              field in the ELF program headers (readelf -l).

              Es gibt zusätzliche, hilfreiche Pseudo-Pfade:

                   [stack]
                          Der initiale Stack des Prozesses (auch als Haupt-Thread bekannt).

                   [stack:<TID>] (seit Linux 3.4)
                          Der Stack eines Prozesses (wobei die <TID> eine Thread-Kennung ist). Er
                          entspricht dem Pfad /proc/[PID]/task/[TID]/.

                   [vdso] Das virtuelle dynamisch-gelinkte Laufzeitobjekt. Siehe vdso(7).

                   [heap] Der Prozess-Heap.

              If  the  pathname  field  is  blank,  this  is an anonymous mapping as obtained via
              mmap(2). There is no easy way to coordinate this back to a process's source,  short
              of running it through gdb(1), strace(1), or similar.

              Unter Linux 2.0 gibt es kein Feld, das den Pfadnamen angibt.

       /proc/[PID]/mem
              Diese  Datei  kann  genutzt werden, um auf die Speicherseiten des Prozesses mittels
              open(2), read(2) und lseek(2) zuzugreifen.

              Die    Rechte,    auf    diese    Datei    zuzugreifen,    werden     von     einer
              Ptrace-Zugriffsmodusprüfung PTRACE_MODE_ATTACH_FSCREDS gesteuert; siehe ptrace(2).

       /proc/[PID]/mountinfo (seit Linux 2.6.26)
              Diese  Datei  enthält  Informationen  über Einhängepunkte im Einhängenamensraum des
              Prozesses (siehe mount_namespaces(7)). Sie stellt verschiedene Informationen  (z.B.
              Ausbreitungszustand,  Wurzel  von  Einhängungen für Bind-Einhängungen, Kennzeichner
              für jede Einhängung und seine Elterneinhängung) bereit, die in der (älteren)  Datei
              /proc/[PID]/mounts  fehlen  und  korrigiert verschiedene andere Probleme mit dieser
              Datei (z.B. Nichterweiterbarkeit, keine Unterscheidbarkeit von pro-Einhängung-  vs.
              pro-Superblock-Optionen).

              Die Datei enthält Zeilen der folgenden Form:
(1)(2)(3)   (4)   (5)      (6)      (7)   (8) (9)   (10)         (11)

              Die Zahlen in Klammern sind Zuordnungen zu den folgenden Beschreibungen:

              (1)  Einhängekennung:  eine  eindeutige  Kennung  für  dieses  Einhängen (kann nach
                   umount(2) erneut verwendet werden).

              (2)  Elternkennung: die Kennung der Eltern-Einhängung  (oder  von  selbst  für  die
                   Wurzel des Einhängebaums dieses Einhängenamensraums)

                   Falls der Elterneinhängepunkt außerhalb des Wurzelverzeichnisses des Prozesses
                   liegt   (siehe   chroot(2))   wird   die   hier   gezeigte   Kennung    keinen
                   korrespondierenden  Datensatz in mountinfo haben, dessen Einhängekennung (Feld
                   1) auf die Einhängekennung des Elternprozesses passt (da  Einhängepunkte,  die
                   außerhalb  des  Wurzelverzeichnisses  des Prozesses liegen, nicht in mountinfo
                   angezeigt   werden).   Als   Sonderfall   bei   diesem    Punkt    kann    der
                   Wurzeleinhängungspunkt   dieses   Prozesses  eine  Elterneinhängung  (für  das
                   Initramfs-Dateisystem)  haben,  der  außerhalb  des  Wurzelverzeichnisses  des
                   Prozesses  liegt,  und  ein Eintrag für diesen Einhängepunkt wird in mountinfo
                   nicht auftauchen.

              (3)  Major:Minor: der Wert von st_dev für Dateien im Dateisystem (siehe stat(2)).

              (4)  Wurzel: der Pfadname des Verzeichnisses in dem  Dateisystem,  der  die  Wurzel
                   dieser Einhängung darstellt.

              (5)  Einhängepunkt: der Einhängepunkt relativ zum Wurzelverzeichnis des Prozesses.

              (6)  Einhängeoptionen: individuelle Einhängeoptionen.

              (7)  Optionale Felder: ein oder mehrere Felder der Form »Bezeichnung[:Wert]« (siehe
                   unten).

              (8)  Trennzeichen: Das Ende  der  optionalen  Felder  wird  durch  einen  einzelnen
                   Gedankenstrich markiert.

              (9)  Dateisystemtyp: der Typ des Dateisystems im Format »Typ[.Untertyp]«.

              (10) Einhänge-Ursprung: dateisystemspezifische Informationen oder »none«.

              (11) Super-Optionen: individuelle Superblock-Optionen.

              Derzeit  sind  shared,  master,  propagate_from  und  unbindable mögliche optionale
              Felder.  Siehe   mount_namespaces(7)   für   eine   Beschreibung   dieser   Felder.
              Auswertprogramme sollten alle nicht erkannten optionalen Felder ignorieren.

              Weitere   Informationen   zur   Ausbreitung   von  Einhängepunkten  finden  Sie  in
              Documentation/filesystems/sharedsubtree.txt im Linux-Kernel-Quelltext.

       /proc/[PID]/mounts (seit Linux 2.4.19)
              Diese Datei listet alle Dateisysteme auf, die derzeit in dem Einhängenamensraum des
              Prozesses eingehängt sind (siehe mount_namespaces(7)). Das Format dieser Datei wird
              in fstab(5) dokumentiert.

              Seit Kernel-Version 2.6.15 kann diese Datei abgefragt werden: Nach dem  Öffnen  der
              Datei  zum  Lesen  veranlasst  eine  Änderung in dieser Datei (d.h. ein Dateisystem
              einhängen oder aushängen) select(2), den Dateideskriptor  als  besondere  Bedingung
              und  poll(2)  und  epoll_wait(2)  die  Datei  als  Prioritätsereignis  (POLLPRI) zu
              markieren. (Vor Linux 2.6.30 führte eine Änderung in dieser Datei  dazu,  dass  der
              Dateideskriptor  als  lesbar  für  select(2)  und als Fehlerzustand für poll(2) und
              epoll_wait(2) markiert wurde.)

       /proc/[PID]/mountstats (seit Linux 2.6.17)
              Diese Datei macht Informationen (Statistiken, Konfigurationsinformation)  über  die
              Einhängepunkte    im    »mount«-Namensraum    des    Prozesses   verfügbar   (siehe
              mount_namespaces(7)). Zeilen in dieser Datei haben die folgende Form:

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

              Die Felder in jeder Zeile sind:

              (1)  Der Name des eingehängten Geräts (oder »nodevice«, wenn es kein entsprechendes
                   Gerät gibt).

              (2)  Der Einhängepunkt innerhalb des Dateisystembaums.

              (3)  Der Dateisystemtyp.

              (4)  Optionale  Statistiken  und  Konfigurationsinformationen. Derzeit (Stand Linux
                   2.6.26) stellen nur NFS-Dateisysteme Informationen in diesem Feld bereit.

              Diese Datei kann nur vom Eigentümer des Prozesses gelesen werden.

       /proc/[PID]/net (seit Linux 2.6.25)
              Siehe die Beschreibung von /proc/net.

       /proc/[PID]/ns/ (seit Linux 3.0)
              Dieses Unterverzeichnis enthält einen Eintrag für  jeden  Namensraum,  der  mittels
              setns(2) manipuliert werden kann. Für weitere Informationen siehe namespaces(7).

       /proc/[PID]/numa_maps (seit Linux 2.6.14)
              Siehe numa(7).

       /proc/[PID]/oom_adj (seit Linux 2.6.11)
              Diese  Datei  kann verwendet werden, um den Wert anzupassen, anhand dessen Prozesse
              bei Speichermangel (out-of-memory, OOM) abgebrochen werden.  Der  Kernel  verwendet
              diesen  Wert  für  eine  Bit-Verschiebeoperation des oom_score-Werts des Prozesses:
              Gültig sind Werte im Bereich von -16 bis +15, sowie der  besondere  Wert  -17,  der
              einen  Abbruch  des  Prozesses wegen Speichermangel deaktiviert. Ein positiver Wert
              erhöht die Wahrscheinlichkeit, dass der Prozess vom »OOM-Killer« abgebrochen  wird,
              ein negativer Wert senkt die Wahrscheinlichkeit.

              Der  Standardwert  für  diese  Datei  ist 0. Ein neuer Prozess erbt die Einstellung
              oom_adj  von   seinem   Elternprozess.   Ein   Prozess   muss   privilegiert   sein
              (CAP_SYS_RESOURCE), um diese Datei zu aktualisieren.

              seit    Linux    2.6.36    wird    die    Verwendung    dieser    Datei   gegenüber
              /proc/[PID]/oom_score_adj missbilligt.

       /proc/[PID]/oom_score (seit Linux 2.6.11)
              Diese Datei zeigt die  aktuelle  Bewertung  des  Kernels  für  diesen  Prozess  als
              Grundlage  für  die  Auswahl  als  Opfer  des  OOM-Killers.  Eine  höhere Bewertung
              bedeutet, dass der Prozess eher von dem  OOM-Killer  ausgewählt  werden  soll.  Die
              Grundlage  dieser Bewertung ist der Speicherverbrauch. Verschiedene andere Faktoren
              erhöhen (+) oder verringern (-) diesen Wert. Diese Faktoren sind:

              * ob der Prozess privilegiert ist (-).

              Vor Kernel 2.6.36 wurden  die  folgenden  Faktoren  auch  bei  der  Berechnung  von
              oom_score benutzt:

              * ob der Prozess mittels fork(2) viele Kinder erzeugt (+);

              * ob der Prozess schon lange läuft oder viel CPU-Zeit verbraucht hat (-);

              * ob der Prozess einen niedrigen Nice-Wert hat (d.h. > 0) (+); und

              * ob der Prozess direkt auf die Hardware zugreift (-).

              Der   oom_score   spiegelt   auch  die  Anpassung  durch  die  oom_score_adj-  oder
              oom_adj-Einstellung für den Prozess.

       /proc/[PID]/oom_score_adj (seit Linux 2.6.36)
              Diese Datei kann zur Anpassung der Schlechtigkeitsheuristik  verwandt  werden,  die
              eingesetzt  wird,  um  in  Speichererschöpfungssituationen  den zu tötenden Prozess
              auszuwählen.

              Die Schlechtigkeits-Heuristik weist  jedem  möglichen  Prozess  einen  Wert  von  0
              (niemals töten) bis 1000 (immer töten) zu, um zu bestimmen, welcher Prozess infrage
              kommt.  Der  Wert  beschreibt  im  Wesentlichen  den  kontinuierlichen  Anteil  des
              erlaubten Speichers, aus dem sich der Prozess Speicher zuweisen darf. Als Grundlage
              dient dazu der aktuelle verwendete  Speicher  und  Auslagerungsspeicher.  Wenn  ein
              Prozess   beispielsweise   sämtlichen   erlaubten   Speicher   nutzt,   ist  dessen
              Schlechtigkeitsbewertung bei 1000. Nutzt er die  Hälfte  des  erlaubten  Speichers,
              beträgt die Bewertung 500.

              Es  gibt einen weiteren Faktor in der Schlechtigkeitsbewertung: Root-Prozessen wird
              3% zusätzlicher Speicher gegenüber anderen Prozessen gegeben.

              Die Menge des »erlaubten« Speichers hängt von dem Kontext ab, in dem der OOM-Killer
              aufgerufen  wurde. Falls der Kontext ist, dass der oder die Prozessoren ausgelastet
              sind, entspricht der erlaubte Speicher dem Speicher, der diesem  Cpuset  zugewiesen
              ist  (siehe  cpuset(7)).  Falls  der  oder die Mempolicy-Knoten erschöpft ist/sind,
              repräsentiert   der   erlaubte   Speicher   die   Mempolicy-Knoten.   Falls    eine
              Arbeitsspeicher- (oder Auslagerungsspeicher-) Grenze erreicht wurde, entspricht der
              erlaubte Speicher dieser Grenze. Sollte das gesamte  System  keinen  Speicher  mehr
              übrig haben, steht der erlaubte Speicher für alle verfügbaren Ressoucen.

              Die  Wert  aus oom_score_adj wird zum Schlechtigkeitswert hinzugefügt, bevor dieser
              zur Ermittlung des zu tötenden Prozesses verwendet  wird.  Zulässige  Werte  liegen
              zwischen  -1000  (OOM_SCORE_ADJ_MIN)  und +1000 (OOM_SCORE_ADJ_MAX), einschließlich
              dieser. Dies ermöglicht auf Anwendungsebene die Einstellungen für das OOM-Töten  zu
              steuern; dies reicht von der permanentes Bevorzugen eines bestimmten Prozesses oder
              deren vollständige Deaktivierung des OOM-Tötens für ihn.  Der  niedrigste  mögliche
              Wert  von  -1000  ist  gleichbedeutend  mit  der  vollständigen  Deaktivierung  des
              OOM-Tötens für diesen Prozess, da dieser  stets  einen  Schlechtigkeitswert  von  0
              meldet.

              Infolgedessen  ist  es  für  die Anwendungsebene sehr einfach, die Speichermenge zu
              definieren, die für jeden Prozess in Betracht gezogen wird.  Die  Festlegung  eines
              Wertes  von  +500  für oom_score_adj ist beispielsweise etwa gleichbedeutend damit,
              dass  die  übrigen  Prozesse,  die  das  gleiche  System,  Cpuset,  Mempolicy  oder
              Speicher-Controller-Ressourcen   mit   verwenden,   mindestens  50%  mehr  Speicher
              verwenden. Andererseits wäre ein Wert von  -500  etwa  gleichbedeutend  damit,  den
              erlaubten  Speicher  eines  Prozesses bei der Bewertung des erlaubten Speichers des
              Prozesses um 50% zu reduzieren.

              Zur Rückwärtskompatibilität mit früheren  Kerneln  kann  /proc/[PID]/oom_adj  immer
              noch zur Feineinstellung der Schlechtigkeitsbewertung verwendet werden. Dieser Wert
              skaliert linear mit oom_score_adj.

              Schreiben in /proc/[PID]/oom_score_adj oder /proc/[PID]/oom_adj führt zur  Änderung
              des anderen mit dem skalierten Wert.

       /proc/[PID]/pagemap (seit Linux 2.6.25)
              This  file  shows  the mapping of each of the process's virtual pages into physical
              page frames or swap area. It contains one 64-bit value for each virtual page,  with
              the bits set as follows:

                   63     Falls gesetzt ist die Seite im RAM

                   62     Falls gesetzt, befindet sich die Seite im Auslagerungsbereich (Swap)

                   61 (seit Linux 3.5)
                          The page is a file-mapped page or a shared anonymous page.

                   60-57 (seit Linux 3.11)
                          Null

                   56 (seit Linux 4.2)
                          The page is exclusively mapped.

                   55 (seit Linux 3.11)
                          PTE     is     soft-dirty     (see     the     kernel    source    file
                          Documentation/vm/soft-dirty.txt).

                   54-0   If the page is present in RAM (bit 63), then  these  bits  provide  the
                          page  frame  number,  which  can  be used to index /proc/kpageflags and
                          /proc/kpagecount. If the page is present in swap (bit  62),  then  bits
                          4–0 give the swap type, and bits 54–5 encode the swap offset.

              Vor  Linux  3.11 wurden die Bits 60-55 dazu verwandt, den Logarithmus (in der Basis
              2) der Seitengröße zu halten.

              To employ /proc/[pid]/pagemap efficiently, use /proc/[pid]/maps to determine  which
              areas of memory are actually mapped and seek to skip over unmapped regions.

              Die     Datei     /proc/[PID]/pagemap     ist     nur     vorhanden,    wenn    die
              Kernel-Konfigurationsoption CONFIG_PROC_PAGE_MONITOR aktiviert ist.

              Die     Zugriffsberechtigungen     dieser     Datei      werden      von      einer
              Ptrace-Zugriffsmodusprüfung PTRACE_MODE_READ_FSCREDS geregelt; siehe ptrace(2).

       /proc/[PID]/personality (seit Linux 2.6.28)
              Diese  nur  lesbare  Datei legt die Ausführungs-Domain des Prozesses offen, wie sie
              von personality(2) gesehen wird. Der Wert ist hexadezimal dargestellt.

              Die    Rechte,    auf    diese    Datei    zuzugreifen,    werden     von     einer
              Ptrace-Zugriffsmodusprüfung PTRACE_MODE_ATTACH_FSCREDS gesteuert; siehe ptrace(2).

       /proc/[PID]/root
              UNIX  und  Linux  unterstützen das Konzept eines prozesseigenen Wurzel-Dateisystems
              (root), das für jeden Prozess mit dem Systemauf chroot(2) gesetzt wird. Diese Datei
              ist  ein  symbolischer  Link, der auf das Root-Verzeichnis des Prozesses weist, und
              verhält sich wie es auch exe und fd/* tun.

              Beachten Sie, dass diese Datei nicht nur ein einfacher symbolischer Link  ist.  Sie
              stellt  den  gleichen Blick auf das Dateisystem (einschließlich Namensräume und der
              Gruppe der pro-Prozess-Einhängungen) wie der Prozess dar.  Ein  Beispiel  erläutert
              diesen  Punkt.  In  einem  Terminal  wird  eine  Shell in einem neuen Benutzer- und
              Einhängenamensraum gestartet und in dieser Shell werden einige neue  Einhängepunkte
              erstellt:

                  $ PS1='sh1# ' unshare -Urnm
                  sh1# mount -t tmpfs tmpfs /etc  # Leeres Tmpfs unter /etc einhängen
                  sh1# mount --bind /usr /dev     # /usr unter /dev einhängen
                  sh1# echo $$
                  27123

              In  einem  zweiten  Terminalfenster, in dem ursprünglichen Einhängenamensraum, wird
              der Inhalt der entsprechenden Einhängungen in  dem  ursprünglichen  und  dem  neuen
              Namensraum angeschaut:

                  $ PS1='sh2# ' sudo sh
                  sh2# ls /etc | wc -l                  # Im anfänglichen NR
                  309
                  sh2# ls /proc/27123/root/etc | wc -l  # /etc in anderem NR
                  0                                     # Das leere Verz tmpfs
                  sh2# ls /dev | wc -l                  # Im anfänglichen NR
                  205
                  sh2# ls /proc/27123/root/dev | wc -l  # /dev in anderem NR
                  11                                    # Tatsächlich bind-
                                                        # eingehängt in /usr
                  sh2# ls /usr | wc -l                  # /usr im anfänglichen NR
                  11

              In einem Multithread-Prozess ist der Inhalt des symbolischen Links /proc/[PID]/root
              nicht mehr verfügbar, wenn der Haupt-Thread schon beendet ist (typischerweise durch
              einen Aufruf von pthread_exit(3)).

              Die   Rechte,   diesen   symbolischen   Link   zu  dereferenzieren  oder  zu  lesen
              (readlink(2)),       werden       von       einer       Ptrace-Zugriffsmodusprüfung
              PTRACE_MODE_READ_FSCREDS gesteuert; siehe ptrace(2).

       /proc/[PID]/seccomp (Linux 2.6.12 bis 2.6.22)
              Diese  Datei  kann  zum  Lesen  und  Ändern  der  Moduseinstellungen  der  sicheren
              Berechnung (Seccomp) des Prozesses verwandt werden. Sie enthält den Wert  0,  falls
              der  Prozess  sich nicht im Seccomp-Modus befindet und 1, falls der Prozess sich im
              strikten  Seccomp-Modus  befindet  (siehe  seccomp(2)).  Wird  1  in  diese   Datei
              geschrieben,   wird  der  Prozess  unwiderruflich  in  den  strikten  Seccomp-Modus
              gebracht. (Weitere Versuche, in diese Datei zu schreiben,  werden  mit  dem  Fehler
              EPERM fehlschlagen.)

              Unter   Linux   2.6.23   verschwand  diese  Datei  und  wurde  durch  die  Aktionen
              PR_GET_SECCOMP und PR_SET_SECCOMP von prctl(2) ersetzt (und später durch seccomp(2)
              und das Feld Seccomp in /proc/[PID]/status).

       /proc/[PID]/setgroups (seit Linux 3.19)
              Siehe user_namespaces(7).

       /proc/[PID]/smaps (seit Linux 2.6.14)
              This file shows memory consumption for each of the process's mappings. (The pmap(1)
              command displays similar information, in a form that may be  easier  for  parsing.)
              For each mapping there is a series of lines such as the following:

                  00400000-0048a000 r-xp 00000000 fd:03 960637       /bin/bash
                  Size:                552 kB
                  Rss:                 460 kB
                  Pss:                 100 kB
                  Shared_Clean:        452 kB
                  Shared_Dirty:          0 kB
                  Private_Clean:         8 kB
                  Private_Dirty:         0 kB
                  Referenced:          460 kB
                  Anonymous:             0 kB
                  AnonHugePages:         0 kB
                  ShmemHugePages:        0 kB
                  ShmemPmdMapped:        0 kB
                  Swap:                  0 kB
                  KernelPageSize:        4 kB
                  MMUPageSize:           4 kB
                  KernelPageSize:        4 kB
                  MMUPageSize:           4 kB
                  Locked:                0 kB
                  ProtectionKey:         0
                  VmFlags: rd ex mr mw me dw

              The first of these lines shows the same information as is displayed for the mapping
              in /proc/[pid]/maps. The following lines show the size of the mapping,  the  amount
              of   the  mapping  that  is  currently  resident  in  RAM  ("Rss"),  the  process's
              proportional share of this mapping ("Pss"), the number of clean  and  dirty  shared
              pages  in  the  mapping,  and  the  number  of clean and dirty private pages in the
              mapping. "Referenced" indicates the amount of memory currently marked as referenced
              or  accessed.  "Anonymous"  shows  the amount of memory that does not belong to any
              file. "Swap" shows how much would-be-anonymous memory is  also  used,  but  out  on
              swap.

              Die  Zeile  »KernelPageSize«  (verfügbar  seit  Linux  2.6.29)  ist  die vom Kernel
              verwandte Seitengröße, um den virtuellen Speicherbereich zu hinterlegen. Dies passt
              in  den  meisten  Fällen  auf  die Größe, die von der MMU verwandt wird. Allerdings
              tritt ein Gegenbeispiel auf PPC64-Kerneln auf, auf denen 64 kB als Basisseitengröße
              verwandt  wird,  aber  auf  älteren Prozessoren 4 kB für die MMU verwendet wird. Um
              zwischen den zwei Attributen zu unterscheiden, meldet die Zeile »MMUPageSize« (auch
              seit Linux 2.6.29 verfügbar) die von der MMU verwandte Seitengröße.

              The "Locked" indicates whether the mapping is locked in memory or not.

              Die  Zeile  »ProtectionKey«  (verfügbar  seit  Linux  4.9,  nur  x86)  enthält  den
              Speicherschutzschlüssel  (siehe  pkeys(7)),  der  dem  virtuellen   Speicherbereich
              zugeordnet  ist.  Dieser  Eintrag  ist  nur  vorhanden,  falls  der  Kernel mit der
              Konfigurationsoption CONFIG_X86_INTEL_MEMORY_PROTECTION_KEYS gebaut wurde.

              Die  Zeile  »VmFlags«  (verfügbar  seit  Linux  3.8)  stellt  die  dem   virtuellen
              Speicherbereich  zugeordneten  Kernelschalter  dar,  kodiert  mittels der folgenden
              zwei-Buchstaben-Codes:

                  rd  - lesbar
                  wr  - schreibbar
                  ex  - ausführbar
                  sh  - shared
                  mr  - könnte lesen
                  mw  - könne schreiben
                  me  - könnte ausführen
                  ms  - may share
                  gd  - stack segment grows down
                  pf  - reiner PFN-Bereich
                  dw  - disabled write to the mapped file
                  lo  - pages are locked in memory
                  io  - memory mapped I/O area
                  sr  - sequential read advise provided
                  rr  - random read advise provided
                  dc  - do not copy area on fork
                  de  - do not expand area on remapping
                  ac  - area is accountable
                  nr  - Auslagerungsbereich ist für den Bereich nicht reserviert
                  ht  - area uses huge tlb pages
                  nl  - non-linear mapping
                  ar  - architecture specific flag
                  dd  - Bereich nicht in den Kernspeicherabzug einschließen
                  sd  - soft-dirty flag
                  mm  - mixed map area
                  hg  - huge page advise flag
                  nh  - no-huge page advise flag
                  mg  - mergeable advise flag

              Die Feld »ProtectionKey« enthält den Speicherschutzschlüssel (siehe pkeys(5)),  der
              dem  virtuellen  Speicherbereich  zugeordnet ist. Dieser Eintrag ist nur vorhanden,
              falls        der        Kernel         mit         der         Konfigurationsoption
              CONFIG_X86_INTEL_MEMORY_PROTECTION_KEYS gebaut wurde (seit Linux 4.6).

              Die Datei /proc/[PID]/smaps ist nur vorhanden, wenn die Kernel-Konfigurationsoption
              CONFIG_PROC_PAGE_MONITOR aktiviert ist.

       /proc/[PID]/stack (seit Linux 2.6.29)
              Diese  Datei  stellt  eine  symbolische  Verfolgung  der  Funktionsaufrufe  in  dem
              Kernel-Stack  dieses  Prozesses  bereit. Diese Datei wird nur bereitgestellt, falls
              der Kernel mit der Konfigurationsoption CONFIG_STACKTRACE gebaut wurde.

              Die    Rechte,    auf    diese    Datei    zuzugreifen,    werden     von     einer
              Ptrace-Zugriffsmodusprüfung PTRACE_MODE_ATTACH_FSCREDS gesteuert; siehe ptrace(2).

       /proc/[PID]/stat
              Statusinformationen  des  Prozesses.  Wird  von  ps(1)  benutzt.  Sie werden in der
              Kernelquelldatei fs/proc/array.c definiert.

              Die    Felder    werden    in    dieser    Reihenfolge    mit    ihrem    passenden
              scanf(3)-Formatkennzeichnern  unten  aufgeführt. Ob bestimmte dieser Felder gültige
              Informationen    anzeigen,    wird    von     einer     Ptrace-Zugriffsmodusprüfung
              PTRACE_MODE_READ_FSCREDS | PTRACE_MODE_NOAUDIT  gesteuert  (siehe ptrace(2)). Falls
              die Prüfung den  Zugriff  verweigert,  wird  der  Feldwert  mit  0  angegeben.  Die
              betroffenen Felder werden mit der Markierung [PT] gekennzeichnet.

              (1) PID  %d
                        Die Prozesskennung.

              (2) comm  %s
                        Der  Name  der  ausführbaren  Datei,  in  Klammern.  Dies wird angezeigt,
                        unabhängig davon, ob das Programm ausgelagert ist oder nicht.

              (3) state  %c
                        Eines der folgenden Zeichen zur Angabe des Prozesszustandes:

                        R  Laufend

                        S  Schlafend in einem unterbrechbaren Wartezustand

                        D  Wartend in einem nicht unterbrechbaren Plattenschlaf

                        Z  Zombie

                        T  Gestoppt (aufgrund eines Signals) oder (vor Linux  2.6.33)  Verfolgung
                           gestoppt

                        t  Verfolgung gestoppt (seit Linux 2.6.33)

                        W  Paging (nur vor Linux 2.6.0)

                        X  Getötet (seit Linux 2.6.0)

                        x  Getötet (nur Linux 2.6.33 bis 3.13)

                        K  Wakekill (Linux 2.6.33 to 3.13 only)

                        W  Aufwachend (nur Linux 2.6.33 bis 3.13)

                        P  Geparkt (nur Linux 3.9 bis 3.13)

              (4) ppid  %d
                        Die Prozesskennung (PID) des Elternprozesses dieses Prozesses.

              (5) pgrp  %d
                        Die Prozess-Gruppenkennung des Prozesses.

              (6) session  %d
                        Die Sitzungskennung des Prozesses.

              (7) tty_nr  %d
                        Das  steuernde Terminal des Prozesses. (Die Minor-Gerätenummer ist in der
                        Kombination  der  Bits  31  bis  20  und   7   bis   0   enthalten;   die
                        Major-Gerätenummer befindet sich in den Bits 15 bis 8.)

              (8) tpgid  %d
                        Die  Kennung  der  Vordergrund-Prozessgruppe des steuernden Terminals des
                        Prozesses.

              (9) flags  %u
                        Das Wort mit den Kernel-Schaltern des Prozesses. Die Bedeutung  der  Bits
                        finden  Sie  in  den PF_*-#define-Anweisungen in der Linux-Quellcodedatei
                        <linux/sched.h>. Die Details hängen von der Kernel-Version ab.

                        Das Format dieses Feldes war %lu vor Linux 2.6.

              (10) minflt  %lu
                        The number of minor faults the process has made which have  not  required
                        loading a memory page from disk.

              (11) cminflt  %lu
                        The  number  of  minor faults that the process's waited-for children have
                        made.

              (12) majflt  %lu
                        The number of major faults the  process  has  made  which  have  required
                        loading a memory page from disk.

              (13) cmajflt  %lu
                        The  number  of  major faults that the process's waited-for children have
                        made.

              (14) utime  %lu
                        Gesamtzeit, die dieser Prozess im Benutzermodus verbracht  hat,  gemessen
                        in  Uhren-Ticks  (dividieren Sie durch sysconf(_SC_CLK_TCK)). Das umfasst
                        Gastzeit, guest_time (aufgewendete Zeit für den Betrieb einer  virtuellen
                        CPU,  siehe  unten),  so  dass  Anwendungen,  die das Gastzeit-Feld nicht
                        kennen, diese Zeit in ihren Berechnungen nicht außer acht lassen.

              (15) stime  %lu
                        Gesamtzeit, die dieser Prozess im Kernel-Modus verbracht hat, gemessen in
                        Uhren-Ticks (dividieren Sie durch sysconf(_SC_CLK_TCK)).

              (16) cutime  %ld
                        Gesamtzeit,  die  abgewartete  Kindprozesse  im  Benutzermodus  verbracht
                        haben,    gemessen    in    Uhren-Ticks     (dividieren     Sie     durch
                        sysconf(_SC_CLK_TCK))   (siehe  auch  times(2)).  Das  umfasst  Gastzeit,
                        guest_time (Laufzeit in einer virtuellen CPU, siehe unten).

              (17) cstime  %ld
                        Gesamtzeit, die abgewartete Kindprozesse im Kernel-Modus verbracht haben,
                        gemessen in Uhren-Ticks (dividieren Sie durch sysconf(_SC_CLK_TCK)).

              (18) priority  %ld
                        (Erklärung   für   Linux  2.6)  Für  Prozesse,  die  im  Scheduling  eine
                        Echtzeit-Strategie    verfolgen    (policy    weiter     unten,     siehe
                        sched_setscheduler(2)),  ist dies die negierte Scheduling-Priorität minus
                        eins, das heißt, eine Zahl im Bereich von -2 bis -100,  entsprechend  den
                        Echtzeitprioritäten  1  bis  99.  Für  Prozesse,  deren  Scheduling keine
                        Echtzeit-Strategie   verfolgt,   ist   das   ist   der   rohe   Nice-Wert
                        (setpriority(2)),  wie er im Kernel dargestellt ist. Der Kernel speichert
                        Nice-Werte als Zahlen im Bereich 0 (hoch) bis 39 (niedrig),  entsprechend
                        des für den Benutzer sichtbaren Nice-Bereichs von -20 bis 19.

                        Vor  Linux  2.6  war  dies  ein  skalierter  Wert  auf  Grundlage des vom
                        Scheduler an den Prozess zugewiesenen Gewichts.

              (19) nice  %ld
                        Der  Nice-Wert  (siehe  setpriority(2)),  ein  Wert  im  Bereich  von  19
                        (niedrige Priorität) bis -20 (hohe Priorität).

              (20) num_threads  %ld
                        Anzahl von Threads in diesem Prozess (seit Linux 2.6). Vor Kernel 2.6 war
                        dieses Feld mit dem Wert 0 als Platzhalter für ein früher entferntes Feld
                        hartkodiert.

              (21) itrealvalue  %ld
                        Die  Zeit (in Jiffies), bevor dem Prozess aufgrund eines Intervall-Timers
                        ein SIGALRM gesendet wird. Seit Kernel 2.6.17 wird dieses Feld nicht mehr
                        gewartet und wird mit 0 hartkodiert.

              (22) starttime  %llu
                        Die  Zeit,  zu  der  der Prozess nach dem Systemstart gestartet wurde. In
                        Kerneln vor Linux 2.6 wurde dieser Wert in Jiffies ausgegeben. Seit Linux
                        2.6  wird  der  Wert  in  Uhren-Ticks ausgedrückt (teilen Sie diese durch
                        sysconf(_SC_CLK_TCK)).

                        Das Format dieses Feldes war %lu vor Linux 2.6.

              (23) vsize  %lu
                        Größe des virtuellen Speichers in Bytes.

              (24) rss  %ld
                        Resident Set Size: Anzahl der Seiten,  die  der  Prozess  tatsächlich  im
                        Speicher  hat.  Dabei  zählen  nur  die Seiten von Text, Daten und Stack.
                        Nicht abgerufene oder ausgelagerte Bereiche zählen nicht mit.

              (25) rsslim  %lu
                        Aktuelle weiche Grenze für die RSS des Prozesses; siehe die  Beschreibung
                        von RLIMIT_RSS in getrlimit(2).

              (26) startcode  %lu  [PT]
                        Die Adresse, oberhalb derer Programmtext ausgeführt werden kann.

              (27) endcode  %lu  [PT]
                        Die Adresse, unterhalb derer Programmtext ausgeführt werden kann.

              (28) startstack  %lu  [PT]
                        Die Startadresse des Stacks (also der »Boden«).

              (29) kstkesp  %lu  [PT]
                        Derzeitiger   Wert   von   ESP   (Stack   Pointer),   wie   er   in   der
                        Kernel-Stack-Seite für diesen Prozess steht.

              (30) kstkeip  %lu  [PT]
                        Der aktuelle EIP (Instruction Pointer, Anweisungszeiger).

              (31) signal  %lu
                        Die Bitmap anstehender Signale, angezeigt als Dezimalzahl. Obsolet,  weil
                        sie   keine   Informationen  über  Echtzeitsignale  gibt;  verwenden  Sie
                        stattdessen /proc/[PID]/status.

              (32) blocked  %lu
                        Die Bitmap blockierter Signale, angezeigt als Dezimalzahl. Obsolet,  weil
                        sie   keine   Informationen  über  Echtzeitsignale  gibt;  verwenden  Sie
                        stattdessen /proc/[PID]/status.

              (33) sigignore  %lu
                        Die Bitmap ignorierter Signale, angezeigt als Dezimalzahl. Obsolet,  weil
                        sie   keine   Informationen  über  Echtzeitsignale  gibt;  verwenden  Sie
                        stattdessen /proc/[PID]/status.

              (34) sigcatch  %lu
                        Die Bitmap abgefangener Signale, angezeigt als Dezimalzahl. Obsolet, weil
                        sie   keine   Informationen  über  Echtzeitsignale  gibt;  verwenden  Sie
                        stattdessen /proc/[PID]/status.

              (35) wchan  %lu  [PT]
                        Dies ist der »Kanal«, in dem der Prozess wartet. Es ist die  Adresse  des
                        Orts im Kernel, an dem der Prozess schläft. Der entsprechende symbolische
                        Name kann in /proc/[PID]/wchan gefunden werden.

              (36) nswap  %lu
                        Anzahl ausgelagerter Seiten (nicht gewartet).

              (37) cnswap  %lu
                        Aufaddiertes nswap der Kindprozesse (nicht gewartet).

              (38) exit_signal  %d  (seit Linux 2.1.22)
                        Das an den Elternprozess zu sendende Signal, wenn wir sterben.

              (39) processor  %d  (seit Linux 2.2.8)
                        Nummer der CPU, auf der der Prozess zuletzt lief.

              (40) rt_priority  %u  (seit Linux 2.5.19)
                        Priorität für das Echtzeit-Scheduling, eine Zahl im Bereich von 1 bis  99
                        für  Prozesse, deren Scheduling einer Echtzeit-Strategie folgt oder 0 für
                        andere Prozesse (siehe sched_setscheduler(2)).

              (41) policy  %u  (seit Linux 2.5.19)
                        Scheduling-Strategie (siehe sched_setscheduler(2)).  Dekodieren  Sie  mit
                        den SCHED_*-Konstanten in linux/sched.h.

                        Das Format dieses Feldes war %lu vor Linux 2.6.22.

              (42) delayacct_blkio_ticks  %llu  (seit Linux 2.6.18)
                        Kumulierte     Block-E/A-Verzögerungen,     gemessen    in    Uhren-Ticks
                        (Hundertstelsekunden).

              (43) guest_time  %lu  (seit Linux 2.6.24)
                        Gastzeit  des  Prozesses  (aufgewendete  Zeit  für  den   Betrieb   einer
                        virtuellen  CPU  für  ein  Gast-Betriebssystem),  gemessen in Uhren-Ticks
                        (dividieren Sie durch sysconf(_SC_CLK_TCK)).

              (44) cguest_time  %ld  (seit Linux 2.6.24)
                        Gastzeit  der  Kindprozesse  des  Prozesses,  gemessen   in   Uhren-Ticks
                        (dividieren Sie durch sysconf(_SC_CLK_TCK)).

              (45) start_data  %lu  (seit Linux 3.3)  [PT]
                        Adresse,  oberhalb  derer  die  initialisierten und nicht-initialisierten
                        Programmdaten (BSS) abgelegt werden.

              (46) end_data  %lu  (seit Linux 3.3)  [PT]
                        Adresse, unterhalb derer die  initialisierten  und  nicht-initialisierten
                        Programmdaten (BSS) abgelegt werden.

              (47) start_brk  %lu  (seit Linux 3.3)  [PT]
                        Adresse,  oberhalb  derer  der  Heap von Programmen mit brk(2) ausgedehnt
                        werden kann.

              (48) arg_start  %lu  (seit Linux 3.5)  [PT]
                        Adresse,  oberhalb  derer  die  Befehlszeilenargumente  (argv)   abgelegt
                        werden.

              (49) arg_end  %lu  (seit Linux 3.5)  [PT]
                        Adresse,  unterhalb  derer  die  Befehlszeilenargumente  (argv)  abgelegt
                        werden.

              (50) env_start  %lu  (seit Linux 3.5)  [PT]
                        Adresse, oberhalb derer die Programmumgebung abgelegt wird.

              (51) env_end  %lu  (seit Linux 3.5)  [PT]
                        Adresse, unterhalb derer die Programmumgebung abgelegt wird.

              (52) exit_code  %d  (seit Linux 3.5)  [PT]
                        Der Exit-Status des Threads in dem durch waitpid(2) berichteten Format.

       /proc/[PID]/statm
              Informiert über den Speicherverbrauch, gemessen in Seiten. Die Spalten bedeuten:

                  Größe         (1) Gesamtgröße des Programms
                                (dasselbe wie VmSize in /proc/[PID]/status)
                  im Speicher   (2) Größe des Resident Set
                                (dasselbe wie VmRSS in /proc/[PID]/status)
                  gemeinsam     (3) Anzahl von residenten (d.h. dateigestützten) gemeinsamen
                                Seiten
                   (dasselbe wie RssFile+RssShmem in
                                /proc/[PID]/status)
                  Text          (4) Text (Code)
                  Bibliothek    (5) Bibliothek (seit Linux 2.6 nicht verwendet, immer 0)
                  Daten         (6) Daten + Stack
                  geändert      (7) geänderte Seiten (dirty) (seit Linux 2.6
                                nicht verwendet, immer 0)

       /proc/[PID]/status
              Stellt viele der Informationen in /proc/[PID]/stat und /proc/[PID]/statm  in  einem
              Format bereit, das für Menschen einfacher auszuwerten ist. Ein Beispiel:

                  $ cat /proc/$$/status
                  Name:   bash
                  Umask:  0022
                  State:  S (sleeping)
                  Tgid:   17248
                  Ngid:   0
                  Pid:    17248
                  PPid:   17200
                  TracerPid:      0
                  Uid:    1000    1000    1000    1000
                  Gid:    100     100     100     100
                  FDSize: 256
                  Groups: 16 33 100
                  NStgid: 17248
                  NSpid:  17248
                  NSpgid: 17248
                  NSsid:  17200
                  VmPeak:     131168 kB
                  VmSize:     131168 kB
                  VmLck:           0 kB
                  VmPin:           0 kB
                  VmHWM:       13484 kB
                  VmRSS:       13484 kB
                  RssAnon:     10264 kB
                  RssFile:      3220 kB
                  RssShmem:        0 kB
                  VmData:      10332 kB
                  VmStk:         136 kB
                  VmExe:         992 kB
                  VmLib:        2104 kB
                  VmPTE:          76 kB
                  VmPMD:          12 kB
                  VmSwap:          0 kB
                  HugetlbPages:          0 kB        # 4.4
                  Threads:        1
                  SigQ:   0/3067
                  SigPnd: 0000000000000000
                  ShdPnd: 0000000000000000
                  SigBlk: 0000000000010000
                  SigIgn: 0000000000384004
                  SigCgt: 000000004b813efb
                  CapInh: 0000000000000000
                  CapPrm: 0000000000000000
                  CapEff: 0000000000000000
                  CapBnd: ffffffffffffffff
                  CapAmb:   0000000000000000
                  NoNewPrivs:     0
                  Seccomp:        0
                  Cpus_allowed:   00000001
                  Cpus_allowed_list:      0
                  Mems_allowed:   1
                  Mems_allowed_list:      0
                  voluntary_ctxt_switches:        150
                  nonvoluntary_ctxt_switches:     545

              Die Bedeutung der Felder im Einzelnen:

              * Name: der von diesem Prozess ausgeführte Befehl.

              * Umask:  die  Umask des Prozesses, oktal mit führender Null, siehe umask(2). (Seit
                Linux 4.7.)

              * State: aktueller Prozesszustand; einer der Werte »R (running)«,  »S  (sleeping)«,
                »D  (disk  sleep)«,  »T  (stopped)«,  »T  (tracing  stop)«,  »Z (zombie)« oder »X
                (dead)«.

              * Tgid: Gruppenkennung des Threads (d.h. die Prozesskennung).

              * Ngid: NUMA-Gruppenkennung (0 falls keine; seit Linux 3.13).

              * PID: Thread-Kennung (siehe gettid(2)).

              * PPid: PID des Elternprozesses.

              * TracerPid: PID des Prozesses, der diesen Prozess beobachtet (0 ohne Beobachtung).

              * Uid, Gid: reale, effektive, gespeicherte sowie Dateisystem-UIDs (GIDs).

              * FDSize: Anzahl der aktuell bereitgestellten Dateideskriptor-Slots.

              * Groups: ergänzende Gruppenliste.

              * NStgid: Thread-Gruppenkennung (d.h. PID) in jedem der PID-Namensräume,  in  denen
                [PID]  ein  Mitglied  ist. Der ganz linke Eintrag zeigt den Wert in Bezug auf den
                PID-Namensraum  des  lesenden  Prozesses,  gefolgt  von  den  Werten  nachfolgend
                geschachtelter innerer Namensräume. (Seit Linux 4.1)

              * NSpid:  Thread-Kennung  in jedem der PID-Namensräume, in denen [PID] ein Mitglied
                ist. Die Felder sind wie bei NStgid sortiert. (Seit Linux 4.1.)

              * NSpgid: Prozessgruppenkennung in jedem der PID-Namensräume, in  denen  [PID]  ein
                Mitglied ist. Die Felder sind wie bei NStgid sortiert. (Seit Linux 4.1.)

              * NSsid:  Sitzungskennung  der Nachkommens-Namensraum-Sitzungs-Kennungs-Hierarchie,
                in jedem der PID-Namensraumen, in denen [PID] ein Mitglied ist. Die  Felder  sind
                wie bei NStgid sortiert. (Seit Linux 4.1.)

              * VmPeak: Maximalwert des genutzten virtuellen Speichers.

              * VmSize: Größe des virtuellen Speichers.

              * VmLck: Größe des gesperrten Speichers (siehe mlock(3)).

              * VmPin:  Größe  des  befestigten  Speichers  (seit Linux 3.2). Diese Seiten können
                nicht verschoben werden, da etwas den direkten Zugriff  auf  physischen  Speicher
                benötigt.

              * VmHWM: Maximalwert der Resident Set Size (»Hochwassermarke«).

              * VmRSS:  Resident  set size. Beachten Sie, dass dieser Wert die Summe aus RssAnon,
                RssFile und RssShmem ist.

              * RssAnon: Größe des residenten anonymen Speichers. (seit Linux 4.5).

              * RssFile: Size of resident file mappings. (since Linux 4.5).

              * RssShmem: Size of resident  shared  memory  (includes  System  V  shared  memory,
                mappings from tmpfs(5), and shared anonymous mappings). (since Linux 4.5).

              * VmData, VmStk, VmExe: Größe der Daten-, Stack und Text-Segmente.

              * VmLib: Code-Größe von Laufzeitbibliotheken.

              * VmPTE: Größe der Einträge in der Page Table (seit Linux 2.6.10).

              * VmPMD: Größe der Page Tables zweiter Stufe (seit Linux 4.0).

              * VmSwap:   ausgelagerte  virtuelle  Speichergröße  durch  anonyme  private  Pages;
                Shmem-Auslagerungsverwendung ist nicht enthalten (seit Linux 2.6.34).

              * HugetlbPages: Größe der Hugetlb-Speicheranteile. (seit Linux 4.4).

              * Threads: Anzahl der Threads im Prozess, zu dem dieser Thread gehört.

              * SigQ: Dieses Feld enthält zwei durch Schrägstriche getrennte Zahlen, die sich auf
                Signale  in  der  Warteschlange  für  die  reale  Benutzerkennung  des  Prozesses
                beziehen. Die erste davon  ist  die  Anzahl  der  derzeit  in  der  Warteschlange
                befindlichen  Signale  für  diese  reale  Benutzerkennung  und die zweite ist die
                Ressourcenbegrenzung für die Anzahl wartender Signale für diesen  Prozess  (siehe
                die Beschreibung von RLIMIT_SIGPENDING in getrlimit(2)).

              * SigPnd,  ShdPnd:  Anzahl der insgesamt für Thread und Prozess anstehenden Signale
                (siehe pthreads(7) und signal(7)).

              * SigBlk, SigIgn, SigCgt: Masken  für  die  Anzeige  blockierter,  ignorierter  und
                abgefangener Signale (siehe signal(7)).

              * CapInh,   CapPrm,   CapEff:   in   den   vererbbaren,  erlaubten  und  effektiven
                Capability-Mengen aktivierte Masken (siehe capabilities(7)).

              * CapBnd: Capability-Begrenzungsmenge (seit Linux 2.6.26, siehe capabilities(7)).

              * CapAmb: Umgebungs-Capability-Menge (seit Linux 4.3, siehe capabilities(7)).

              * NoNewPrivs: Wert des Bits no_new_privs (seit Linux 4.10, siehe prctl(2)).

              * Seccomp: Seccomp-Modus des  Prozesses  (seit  Linux  3.8,  siehe  seccomp(2)).  0
                bedeutet   SECCOMP_MODE_DISABLED;  1  bedeutet  SECCOMP_MODE_STRICT;  2  bedeutet
                SECCOMP_MODE_FILTER. Dieses Feld wird nur bereitgestellt, falls  der  Kernel  mit
                der aktivierten Kernelkonfigurationsoption CONFIG_SECCOMP gebaut wurde.

              * Cpus_allowed:  Maske  von  CPUs,  auf  denen  der Prozess laufen kann (seit Linux
                2.6.24, siehe cpuset(7)).

              * Cpus_allowed_list: dasselbe wie das vorhergehende, aber in  »Listenformat«  (seit
                Linux 2.6.26, siehe cpuset(7)).

              * Mems_allowed:  Maske  von für diesen Prozess erlaubten Speicherknoten (seit Linux
                2.6.24, siehe cpuset(7)).

              * Mems_allowed_list: dasselbe wie das vorhergehende, aber in  »Listenformat«  (seit
                Linux 2.6.26, siehe cpuset(7)).

              * voluntary_ctxt_switches,  nonvoluntary_ctxt_switches: Anzahl der freiwilligen und
                der unfreiwilligen Kontextwechsel (seit Linux 2.6.23).

       /proc/[PID]/syscall (seit Linux 2.6.27)
              Diese Datei legt die Systemaufrufnummer und  -argumentenregister  für  den  derzeit
              durch  den  Prozess  ausgeführten  Systemaufruf  offen.  Es  folgen  die  Werte des
              Stack-Zeigers   und   der   Programmzählerregister.   Die   Werte    aller    sechs
              Argumentenregister  werden  offengelegt,  obwohl  die meisten Systemaufrufe weniger
              Register verwenden.

              Falls der Prozess blockiert aber nicht in einem Systemaufruf ist,  dann  zeigt  die
              Datei  -1  an  der Stelle der Systemaufrufnummer an, gefolgt von nur den Werten des
              Stack-Zeigers und des Programmzählers. Falls der Prozess nicht blockiert ist,  dann
              enthält die Datei nur die Zeichenkette »running«.

              Diese  Datei  ist  nur  vorhanden,  falls der Kernel mit CONFIG_HAVE_ARCH_TRACEHOOK
              konfiguriert wurde.

              Die    Rechte,    auf    diese    Datei    zuzugreifen,    werden     von     einer
              Ptrace-Zugriffsmodusprüfung PTRACE_MODE_ATTACH_FSCREDS gesteuert; siehe ptrace(2).

       /proc/[PID]/task (seit Linux 2.6.0-test6)
              Dieses  Verzeichnis  enthält  ein Unterverzeichnis für jeden Thread in dem Prozess.
              Der Name jedes Unterverzeichnisses ist die numerische  Thread-Kennung  ([TID])  des
              Threads  (siehe  gettid(2)). Innerhalb jedes dieser Unterverzeichnisse gibt es eine
              Reihe   von   Dateien   mit   gleichem   Namen   und   Inhalt   wie    unter    den
              /proc/[PID]-Verzeichnissen.   Für   Attribute,  die  von  allen  Threads  gemeinsam
              verwendet  werden,  sind   die   Inhalte   für   jede   der   Dateien   unter   den
              /task/[TID]-Unterverzeichnissen  die  gleichen  wie  in der entsprechenden Datei im
              Elternverzeichnis   /proc/[PID]   (z.B.   in   einem   Multithread-Prozess   werden
              task/[TID]/cwd-Dateien   den   gleichen   Wert   wie   die  Datei  task/pid/cwd  im
              Elternverzeichnis  haben,   da   alle   Threads   in   einem   Prozess   sich   ein
              Arbeitsverzeichnis  teilen).  Für Attribute, die für jeden Thread verschieden sind,
              können die entsprechenden Dateien unter task/[TID] unterschiedliche Werte  annehmen
              (z.B.  können  verschiedene Felder in jeder der task/[TID]/status-Dateien für jeden
              Thread unterschiedlich sein)  oder  sie  könnten  in  /proc/[PID]  überhaupt  nicht
              existieren.   In   Multithread-Prozessen   sind   die  Inhalte  des  Verzeichnisses
              /proc/[PID]/task überhaupt nicht verfügbar, falls der Haupt-Thread bereits  beendet
              wurde (typischerweise durch den Aufruf von pthread_exit(3)).

       /proc/[PID]/task/[TID]/children (seit Linux 3.5)
              Eine  durch  Leerzeichen  getrennte Liste von Kindprozessen dieses Prozesses. Jeder
              Kindprozess wird durch seine TID dargestellt.

              Diese Option ist für die  Verwendung  durch  das  Prüfpunktwiederherstellungssystem
              (Checkpoint/Restore  In  Userspace/CRIU)  gedacht  und  stellt nur verlässlich eine
              Liste von Kindprozessen bereit, falls alle Kindprozesse gestoppt  oder  eingefroren
              sind. Sie funktioniert nicht richtig, falls Kindprozesse des Ziel-Tasks während des
              Lesens der Datei beendet werden. Kindprozesse, die enden, können dazu führen,  dass
              nicht  endende  Kindprozesse  in  der  Liste  weggelassen  werden. Dies macht diese
              Schnittstelle   sogar   noch   unzuverlässiger   als   herkömmliche    PID-basierte
              Herangehensweisen,   wenn   der  untersuchte  Task  und  seine  Kindprozesse  nicht
              eingefroren sind und der meiste  Code  sollte  wahrscheinlich  diese  Schnittstelle
              nicht benutzen.

              Bis  Linux 4.2 wurde die Existenz dieser Datei durch die Kernelkonfigurationsoption
              CONFIG_CHECKPOINT_RESTORE gesteuert. Seit Linux  4.2  wird  sie  durch  die  Option
              CONFIG_PROC_CHILDREN gesteuert.

       /proc/[PID]/timers (seit Linux 3.10)
              Eine  Liste  der  POSIX-Timer  für diesen Prozess. Jeder Timer wird mit einer Zeile
              aufgeführt, die mit der Zeichenkette »ID:« beginnt, beispielsweise:

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

              Die gezeigten Zeilen für jeden Timer haben die folgenden Bedeutungen:

              ID     Die Kennung für diesen Timer. Dies ist nicht  mit  der  von  timer_create(2)
                     zurückgelieferten  Timer-Kennung  identisch.  Stattdessen ist es die gleiche
                     Kernel-interne Kennung, die  mittels  des  Feldes  si_timerid  der  Struktur
                     siginfo_t verfügbar ist (siehe sigaction(2)).

              signal Dies   ist   die   Signalnummer,  die  dieser  Timer  zur  Auslieferung  von
                     Benachrichtigungen verwendet. Ihr folgt ein Schrägstrich und  dann  der  dem
                     Signal-Handler  übergebene  Wert  sigev_value.  Gültig  nur  für  Timer, die
                     mittels Signal benachrichtigen.

              notify Der Teil vor dem Schrägstrich legt den Mechanismus fest,  den  dieser  Timer
                     zur  Auslieferung  von  Nachrichten  verwendet.  Er  ist  entweder »thread«,
                     »signal«  oder  »none«.  Direkt  nach  dem  Schrägstrich  ist  entweder  die
                     Zeichenkette  »tid«  für  Timer  mit SIGEV_THREAD_ID-Benachrichtigungen oder
                     »pid« für Timer, die mittels andere Mechanismen  benachrichtigen.  Nach  dem
                     ».«  folgt  die  PID  des  Prozesses  (oder  der  Kernel-Thread-Kennung  des
                     Threads),   der   ein   Signal   geliefert   bekommt,   falls   der    Timer
                     Benachrichtigungen über ein Signal ausliefert.

              ClockID
                     Dieses  Feld  identifiziert  die  Uhr,  die  der  Timer  für die Zeitmessung
                     verwendet. Für die meisten Uhren ist dies  eine  Zahl,  die  auf  einen  der
                     Konstanten   der   Anwendungsebene   CLOCK_*  passt,  die  mittels  <time.h>
                     offengelegt werden. CLOCK_PROCESS_CPUTIME_ID-Timer zeigen mit einem Wert  -6
                     in  diesem  Feld.  CLOCK_THREAD_CPUTIME_ID-Timer zeigen mit einem Wert -2 in
                     diesem Feld.

              Diese Datei ist nur  vorhanden,  falls  der  Kernel  mit  CONFIG_CHECKPOINT_RESTORE
              konfiguriert wurde.

       /proc/[PID]/timerslack_ns (seit Linux 4.6)
              This  file  exposes  the  process's  "current"  timer  slack  value,  expressed  in
              nanoseconds. The file is writable, allowing the process's timer slack value  to  be
              changed.  Writing  0 to this file resets the "current" timer slack to the "default"
              timer slack value. For further details, see the discussion of PR_SET_TIMERSLACK  in
              prctl(2).

              Ursprünglich   wurde   die   Zugriffsberechtigung   für   diese   Datei  über  eine
              Ptrace-Zugriffsmodusprüfung PTRACE_MODE_ATTACH_FSCREDS geregelt (siehe  ptrace(2)).
              Allerdings wurde dies nachfolgend als zu strenge Anforderung erachtet (und es hatte
              den  Seiteneffekt,  dass  die  Notwendigkeit  für  einen  Prozess,  die  Capability
              CAP_SYS_PTRACE  zu  haben,  auch  dazu führte, dass er den Speicher jedes Prozesses
              lesen und verändern konnte).  Daher  wird  seit  Linux  4.9  nur  die  (schwächere)
              Capability CAP_SYS_NICE für den Zugriff auf diese Datei benötigt.

       /proc/[PID]/uid_map, /proc/[PID]/gid_map (seit Linux 3.5)
              Siehe user_namespaces(7).

       /proc/[PID]/wchan (seit Linux 2.6.0)
              Der symbolische Name, der dem Ort im Kernel entspricht, an dem der Prozess schläft.

              Die      Zugriffsberechtigungen      dieser      Datei     werden     von     einer
              Ptrace-Zugriffsmodusprüfung PTRACE_MODE_READ_FSCREDS geregelt; siehe ptrace(2).

       /proc/apm
              Version von »advanced power management« und Informationen zur  Batterie,  wenn  bei
              der Kompilierung des Kernels CONFIG_APM definiert wird.

       /proc/buddyinfo
              Diese     Datei     enthält     Informationen,     die     zur     Diagnose     von
              Speicherfragmentierungsproblemen  verwandt  werden.  Jede  Zeile  beginnt  mit  der
              Kennzeichnung des Knotens und dem Name der Zone, die zusammen einen Speicherbereich
              identifizieren. Dies wird von der Anzahl  der  verfügbaren  Stücke  (Chunks)  einer
              bestimmten  Ordnung,  in  die diese Zonen geteilt sind, gefolgt. Die Größe in Bytes
              einer bestimmten Ordnung wird von der folgenden Formel bestimmt:

                  (2^Ordnung) * PAGE_SIZE

              Der binäre Buddy-Speicherverwaltungsalgorithmus  innerhalb  des  Kernels  wird  ein
              Stück  in  zwei  Stücke  einer  geringeren  Ordnung  (daher  mit  der halben Größe)
              unterteilen oder zwei angrenzende Stück  in  ein  größeres  Stück  höherer  Ordnung
              (daher  mit  der doppelten Größe) kombinieren, um Reservierungsanfragen zu erfüllen
              und um Speicherfragmentierung etwas entgegenzusetzen. Die  Ordnung  entspricht  der
              Spaltennummer, wenn mit dem Zählen bei Null begonnen wird.

              Auf einem x86-64-System zum Beispiel:

  Node 0, zone     DMA     1    1    1    0    2    1    1    0    1    1    3
  Node 0, zone   DMA32    65   47    4   81   52   28   13   10    5    1  404
  Node 0, zone  Normal   216   55  189  101   84   38   37   27    5    3  587

              In  diesem  Beispiel  gibt  es  einen Knoten, der drei Zonen enthält und es gibt 11
              verschiedene Stückgrößen. Falls die Seitengröße 4 Kilobyte beträgt,  dann  hat  die
              erste Zone, genannt DMA, (auf X86 die ersten 16 Megabyte an Speicher) ein Stück von
              4 Kilobyte (Ordnung 0) verfügbar und hat 3  Stücke  von  4  Megabyte  (Ordnung  10)
              verfügbar.

              Falls  der  Speicher  stark  fragmentiert ist, werden die Zähler für Stücke höherer
              Ordnung  Null  sein  und  Zuweisungen  von  großen,   zusammenhängenden   Bereichen
              fehlschlagen.

              Weitere Informationen über die Zonen können in /proc/zoneinfo gefunden werden.

       /proc/bus
              Enthält Unterverzeichnisse für installierte Busse.

       /proc/bus/pccard
              Unterverzeichnis   für   PCMCIA-Geräte,  wenn  bei  der  Kompilierung  des  Kernels
              CONFIG_PCMCIA gesetzt wird.

       /proc/bus/pccard/drivers

       /proc/bus/pci
              Enthält diverse  Bus-Unterverzeichnisse  und  Pseudodateien  mit  Informationen  zu
              PCI-Bussen,  installierten  Geräten  und Gerätetreibern. Einige dieser Dateien sind
              nicht in ASCII codiert.

       /proc/bus/pci/devices
              Informationen über PCI-Geräte.  Auf  diese  kann  mittels  lspci(8)  und  setpci(8)
              zugegriffen werden.

       /proc/cgroups (seit Linux 2.6.24)
              siehe cgroups(7)

       /proc/cmdline
              Dem  Kernel  beim  Startvorgang  übergebene Argumente. Oft geschieht das über einen
              Bootmanager wie lilo(8) oder grub(8).

       /proc/config.gz (seit Linux 2.6)
              Diese Datei macht die Konfigurationsoptionen verfügbar, die für den Bau des aktuell
              laufenden  Kernels  verwendet  wurden.  Das Format ist das gleiche wie in der Datei
              .config, die bei der Konfiguration des Kernels (mittels make xconfig,  make  config
              oder ähnlichem) erzeugt wird. Der Inhalt der Datei ist komprimiert; er kann mittels
              zcat(1) und zgrep(1) angezeigt und durchsucht werden. Solange keine  Änderungen  in
              der  folgenden  Datei  vorgenommen wurden, sind die Inhalte von /proc/config.gz die
              gleichen, die wie folgt gewonnen werden können:

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

              /proc/config.gz wird nur bereitgestellt, wenn der Kernel  mit  CONFIG_IKCONFIG_PROC
              konfiguriert wird.

       /proc/crypto
              Eine  Liste  der durch das Kernel-Krypto-API bereitgestellten Chiffren. Für Details
              schauen Sie in die Kerneldokumentation zum  Thema  Linux  Kernel  Crypto  API,  die
              unterhalb    des    Kernelquellbaumverzeichnisses    Documentation/crypto/    (oder
              Documentation/DocBook vor 4.10) verfügbar ist. (Die Dokumentation  kann  mit  einem
              Befehl wie make htmldocs im Wurzelverzeichnis des Kernelquellbaums gebaut werden.)

       /proc/cpuinfo
              Dies ist eine Sammlung von Informationen, die von der CPU und der Systemarchitektur
              abhängen. Die Liste  sieht  für  jede  unterstützte  Architektur  anders  aus.  Die
              einzigen Einträge, die man überall antrifft, sind processor, welcher die Nummer der
              CPU   anzeigt   und   BogoMIPS,   eine    Systemkonstante,    die    während    der
              Kernel-Initialisierung  errechnet  wird. SMP-Maschinen haben Informationen für jede
              CPU. Der Befehl lscpu(1) sammelt seine Informationen aus dieser Datei.

       /proc/devices
              Eine Textliste der Major-Gerätenummern und Gerätegruppen. Kann von MAKEDEV-Skripten
              genutzt werden, um mit dem Kernel überein zu stimmen.

       /proc/diskstats (seit Linux 2.5.69)
              Diese   Datei   enthält   Platten-E/A-Statistiken   für   jedes  Plattengerät.  Die
              Linux-Kernel-Quelldatei Documentation/iostats.txt gibt weitere Informationen.

       /proc/dma
              Das ist eine Liste von registrierten ISA-DMA-Kanälen, die zur Zeit  benutzt  werden
              (DMA: Direct Memory Access).

       /proc/driver
              Leeres Unterverzeichnis.

       /proc/execdomains
              Liste der Ausführungsdomänen (ABI-Personalitäten).

       /proc/fb
              Information  zum Bildspeicher (frame buffer), wenn bei der Kompilierung des Kernels
              CONFIG_FB definiert wird.

       /proc/filesystems
              Eine Auflistung der  Dateisysteme,  die  vom  Kernel  unterstützt  werden,  nämlich
              Dateisysteme,  die in den Kernel kompiliert wurden oder deren Kernel-Module derzeit
              geladen sind  (siehe  auch   filesystems(5)).  Wenn  ein  Dateisystem  mit  »nodev«
              gekennzeichnet  ist,  bedeutet  dies,  dass kein Block-Gerät eingehängt werden muss
              (z.B. virtuelles Dateisystem, Netzwerk-Dateisystem).

              Im Übrigen kann diese Datei von mount(8) verwendet werden,  wenn  kein  Dateisystem
              angegeben wurde und es den Typ des Dateisystems nicht bestimmen konnte. Dann werden
              in dieser Datei enthaltene Dateisysteme ausprobiert  (ausgenommen  diejenigen,  die
              mit »nodev« gekennzeichnet sind).

       /proc/fs
              Enthält Unterverzeichnisse, die wiederum Dateien mit Informationen über (bestimmte)
              eingehängte Dateisysteme enthalten.

       /proc/ide
              Dieses Verzeichnis gibt es auf Systemen mit dem IDE-Bus. Es gibt Verzeichnisse  für
              jeden IDE-Kanal und jedes zugeordnete Gerät. Zu den Dateien gehören:

                  cache              Puffergröße in KB
                  capacity           Anzahl der Sektoren
                  driver             Version des Treibers
                  geometry           physikalische und logische Geometrie
                  identify           hexadezimal
                  media              Medientyp
                  model              Modellnummer des Herstellers
                  settings           Laufwerkeinstellungen
                  smart_thresholds   hexadezimal
                  smart_values       hexadezimal

              Das Werkzeug hdparm(8) ermöglicht einen angenehmen Zugriff auf diese Informationen.

       /proc/interrupts
              Diese  Datei  wurde  verwendet,  um die Anzahl der Interrupts pro CPU pro E/A-Gerät
              aufzunehmen. Seit Linux 2.6.24 werden außerdem,  zumindest  für  die  Architekturen
              i386  und x86-64, systeminterne Interrupts (das sind nicht unmittelbar an ein Gerät
              gebundene) wie beispielsweise NMI  (nicht  maskierbarer  Interrupt),  LOC  (lokaler
              Timer-Interrupt), und für SMP-Systeme TLB (TLB Flush Interrupt), RES (Interrupt für
              Änderungen im Scheduling), CAL (Remote Function Call Interrupt) und  möglicherweise
              andere mit eingetragen. Sie ist in ASCII codiert und sehr leicht zu lesen.

       /proc/iomem
              E/A-Speicherbelegung in Linux 2.4

       /proc/ioports
              Das     ist    eine    Liste    der    derzeit    registrierten    und    benutzten
              Ein-/Ausgabe-Port-Regionen.

       /proc/kallsyms (seit Linux 2.5.71)
              Hier   stehen   die   vom   Kernel   exportierten   Symboldefinitionen,   die   von
              modules(X)-Tools  benutzt  werden,  um  ladbare  Module  dynamisch zu linken und zu
              binden. Bis einschließlich Linux 2.5.47 gab es eine ähnliche Datei ksyms mit leicht
              abweichender Syntax.

       /proc/kcore
              Diese  Datei  repräsentiert  den  physikalischen  Speicher  des Systems und hat das
              Elf-core-Dateiformat. Mit dieser Pseudodatei und einem  Kernel  mit  Debug-Symbolen
              (/usr/src/linux/vmlinux)    kann    mit    GDB    der    aktuelle    Zustand    der
              Kernel-Datenstrukturen untersucht werden.

              Die Gesamtgröße dieser Datei ist die Größe  des  physischen  Speichers  (RAM)  plus
              4 KiB.

       /proc/keys (seit Linux 2.6.10)
              Siehe keyrings(7).

       /proc/key-users (seit Linux 2.6.10)
              Siehe keyrings(7).

       /proc/kmsg
              Diese  Datei kann anstelle des Systemaufrufs syslog(2) benutzt werden, um Meldungen
              des Kernels zu lesen. Ein Prozess muss Superuser-Privilegien haben, um diese  Datei
              zu  lesen  und  nur  ein  einziger  Prozess sollte dies tun. Die Datei sollte nicht
              ausgelesen werden, wenn ein Syslog-Prozess läuft, der  den  Systemaufruf  syslog(2)
              zur Protokollierung benutzt.

              Die Informationen in dieser Datei können mit dmesg(1) dargestellt werden.

       /proc/kpagecgroup (seit Linux 4.3)
              Diese  Datei  enthält  64-Bit-Inode-Nummern der Speicher-Cgroup, auf die jede Seite
              berechnet  wird.  Sie  ist  durch  die  Seitenrahmennummer  indiziert  (siehe   die
              Erörterung von /proc/[PID]/pagemap).

              Die     Datei    /proc//proc/kpagecgroup    ist    nur    vorhanden,    wenn    die
              Kernel-Konfigurationsoption CONFIG_MEMCG aktiviert ist.

       /proc/kpagecount (seit Linux 2.6.25)
              This file contains a 64-bit count of the number of times each physical  page  frame
              is    mapped,   indexed   by   page   frame   number   (see   the   discussion   of
              /proc/[pid]/pagemap).

              Die Datei /proc/kpagecount ist nur vorhanden, wenn die  Kernel-Konfigurationsoption
              CONFIG_PROC_PAGE_MONITOR aktiviert ist.

       /proc/kpageflags (seit Linux 2.6.25)
              Diese  Datei  enthält 64-Bit-Masken, die jedem physischen Seitenrahmen (page frame)
              entsprechen. Sie ist durch die Seitenrahmennummer indiziert (siehe  die  Erörterung
              von /proc/[PID]/pagemap). Die Bits sind wie folgt:

                   0 - KPF_LOCKED
                   1 - KPF_ERROR
                   2 - KPF_REFERENCED
                   3 - KPF_UPTODATE
                   4 - KPF_DIRTY
                   5 - KPF_LRU
                   6 - KPF_ACTIVE
                   7 - KPF_SLAB
                   8 - KPF_WRITEBACK
                   9 - KPF_RECLAIM
                  10 - KPF_BUDDY
                  11 - KPF_MMAP           (seit Linux 2.6.31)
                  12 - KPF_ANON           (seit Linux 2.6.31)
                  13 - KPF_SWAPCACHE      (seit Linux 2.6.31)
                  14 - KPF_SWAPBACKED     (seit Linux 2.6.31)
                  15 - KPF_COMPOUND_HEAD  (seit Linux 2.6.31)
                  16 - KPF_COMPOUND_TAIL  (seit Linux 2.6.31)
                  17 - KPF_HUGE           (seit Linux 2.6.31)
                  18 - KPF_UNEVICTABLE    (seit Linux 2.6.31)
                  19 - KPF_HWPOISON       (seit Linux 2.6.31)
                  20 - KPF_NOPAGE         (seit Linux 2.6.31)
                  21 - KPF_KSM            (seit Linux 2.6.32)
                  22 - KPF_THP            (seit Linux 3.4)
                  23 - KPF_BALLOON        (seit Linux 3.18)
                  24 - KPF_ZERO_PAGE      (seit Linux 4.0)
                  25 - KPF_IDLE           (seit Linux 4.3)

              Für  weitere  Details  zur  Bedeutung  dieser  Bits  lesen Sie die Kernelquelldatei
              Documentation/vm/pagemap.txt.   Vor   Kernel   2.6.29   lieferten    KPF_WRITEBACK,
              KPF_RECLAIM, KPF_BUDDY und KPF_LOCKED nicht die korrekten Werte.

              Die  Datei /proc/kpageflags ist nur vorhanden, wenn die Kernel-Konfigurationsoption
              CONFIG_PROC_PAGE_MONITOR aktiviert ist.

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

       /proc/loadavg
              Die ersten drei Felder in dieser Datei geben die durchschnittliche Anzahl von  Jobs
              an,  die  in  der  Run-Warteschlange  sind  (Status  R) oder auf Platten-E/A warten
              (Status D), gemittelt über 1, 5, und 15 Minuten. Das sind die gleichen Angaben  für
              die  durchschnittliche  Belastung,  wie  sie  von  uptime(1) und anderen Programmen
              angegeben werden. Das vierte Feld besteht aus zwei  durch  einen  Schrägstrich  (/)
              getrennten  Zahlen.  Die  erste  davon  ist  die  Anzahl  von  derzeit ausführbaren
              Kernel-Scheduling-Einheiten (Prozesse, Threads). Der Wert nach dem Schrägstrich ist
              die  Anzahl der Kernel-Scheduling-Einheiten, die aktuell auf dem System existieren.
              Das fünfte Feld ist die PID des Prozesses,  der  zuletzt  auf  dem  System  erzeugt
              wurde.

       /proc/locks
              Diese  Datei  zeigt  aktuelle  Datei-Sperren (flock(2) und fcntl(2)) und -Ausleihen
              (fcntl(2)) an.

              Ein Beispiel für den Inhalt in dieser Datei wird nachfolgend gezeigt:

                  1: POSIX  ADVISORY  READ  5433 08:01:7864448 128 128
                  2: FLOCK  ADVISORY  WRITE 2001 08:01:7864554 0 EOF
                  3: FLOCK  ADVISORY  WRITE 1568 00:2f:32388 0 EOF
                  4: POSIX  ADVISORY  WRITE 699 00:16:28457 0 EOF
                  5: POSIX  ADVISORY  WRITE 764 00:16:21448 0 0
                  6: POSIX  ADVISORY  READ  3548 08:01:7867240 1 1
                  7: POSIX  ADVISORY  READ  3548 08:01:7865567 1826 2335
                  8: OFDLCK ADVISORY  WRITE -1 08:01:8713209 128 191

              Die gezeigten Felder in jeder Zeile sind wie folgt:

              (1) Die ordinale Position der Sperre in der Liste.

              (2) Der Sperrtyp. Folgende Werte können hier u.A. erscheinen:

                  FLOCK  Dies ist eine mittels flock(2) erstellte BSD-Sperrdatei.

                  OFDLCK Dies ist eine mittels fcntl(2)  erstellte  offene  Dateideskriptorsperre
                         (OFD).

                  POSIX  Dies ist eine mittels fcntl(2) erstellte POSIX-Byte-Bereichssperre.

              (3) Unter den hier auftretenden Zeichenketten sind auch die folgenden:

                  ADVISORY
                         Dies ist eine empfohlene Sperre.

                  MANDATORY
                         Dies ist eine Pflichtsperre.

              (4) Die Art der Sperre. Folgende Werte können hier auftauchen:

                  READ   Dies   ist   eine   POSIX-  oder  OFD-Lesesperre  oder  eine  gemeinsame
                         BSD-Sperre.

                  WRITE  Dies  ist  eine  POSIX-  oder  OFD-Schreibsperre  oder  eine   exklusive
                         BSD-Sperre.

              (5) die PID des Prozesses, der die Sperre besitzt,

                  Da  OFD-Sperren nicht einem einzelnen Prozess gehören (da mehrere Prozesse über
                  Dateideskriptoren  verfügen  können,  die   sich   auf   die   gleiche   offene
                  Dateideskription  beziehen),  wird  in  diesem Feld der Wert -1 für OFD-Sperren
                  angezeigt. (Vor Kernel 4.14 wurde durch einen Fehler die PID des Prozesses, der
                  ursprünglich die Sperre erwarb, statt des Wertes -1 angezeigt.)

              (6) Drei  Doppelpunkt-getrennte Unterlisten, die die Major- und Minor-Gerätekennung
                  des Geräts, das das Dateisystem enthält,  auf  dem  sich  die  gesperrte  Datei
                  befindet, gefolgt von der Inode-Nummer der gesperrten Datei.

              (7) Der  Byte-Versatz  des ersten Bytes der Sperre. Für BSD-Sperren ist dieser Wert
                  immer 0.

              (8) Der Byteversatz des letzten Bytes der Sperre. EOF im Feld bedeutet,  dass  sich
                  die  Sperre bis zum Ende der Datei ausdehnt. Für BSD-Sperren ist der angezeigte
                  Wert immer EOF.

              Seit Linux 4.9 wird die Liste der in /proc/locks gezeigten  Sperren  gefiltert,  um
              nur  die  Sperren für die Prozesse in dem PID-Namensraum (siehe pid_namespaces(7)),
              für den das Dateisystem /proc eingehängt worden war, anzuzeigen. (Im ursprünglichen
              PID-Namensraum gibt es keine Filterung der in dieser Datei angezeigten Datensätze.)

              Der Befehl lslocks(8) stellt etwas mehr Informationen über jede Sperre bereit.

       /proc/malloc (nur bis zu einschließlich Linux 2.2)
              Diese    Datei   existiert   nur,   wenn   bei   der   Kompilierung   des   Kernels
              CONFIG_DEBUG_MALLOC definiert war.

       /proc/meminfo
              Diese Datei berichtet Statistiken über die Speicherverwendung auf dem  System.  Sie
              wird  von  free(1)  benutzt, um den freien und benutzen (sowohl physischen als auch
              Auslagerungs-)Speicher auf dem System zu berichten, sowie den  gemeinsam  benutzten
              Speicher  und  die  vom  Kernel  benutzten Puffer. Jede Zeile der Datei besteht aus
              einem Parameternamen, gefolgt von einem Doppelpunkt, dem Wert  des  Parameters  und
              einer  Maßeinheit  der  Option  (z.B.  »kB«). Die nachfolgende Liste beschreibt die
              Parameternamen und die Formatkennzeichner, die zum Lesen  des  Feldwertes  benötigt
              wird.  Außer  falls  unten  angegeben  sind alle Felder seit mindestens Linux 2.6.0
              vorhanden. Einige Felder werden nur angezeigt,  falls  der  Kernel  mit  bestimmten
              Optionen konfiguriert wurde, diese Abhängigkeiten sind in der Liste vermerkt.

              MemTotal %lu
                     Gesamter   verwendbarer  Arbeitsspeicher  (d.h.  physischer  Arbeitsspeicher
                     abzüglich ein paar reservierter Bits und dem Binärcode des Kernels).

              MemFree %lu
                     Die Summe von LowFree+HighFree.

              MemAvailable %lu (seit Linux 3.14)
                     Eine Abschätzung, wieviel Speicher zum Starten neuer  Anwendungen  verfügbar
                     ist, ohne auszulagern.

              Buffers %lu
                     Relativ  temporärer  Speicher  für rohe Diskblöcke, der nicht besonders groß
                     werden sollte (20 MB oder so).

              Cached %lu
                     Speicherinterner Zwischenspeicher  für  von  Platte  gelesene  Dateien  (der
                     Seiten-Zwischenspeicher). Enthält SwapCached nicht.

              SwapCached %lu
                     Speicher,  der  schon ausgelagert war, und wieder hereingelagert wurde, aber
                     noch in der Auslagerungsdatei ist. (Falls der Speicherdruck hoch ist, müssen
                     diese  Seiten  nicht  wieder  ausgelagert  werden,  da  sie  bereits  in der
                     Auslagerungsdatei sind. Dies spart E/A).

              Active %lu
                     Speicher,  der  kürzlich  verwandt  wurde  und  normalerweise   noch   nicht
                     zurückgefordert wurde, falls nicht absolut notwendig.

              Inactive %lu
                     Speicher,  der nicht kürzlich verwandt wurde. Er ist für Rückforderungen für
                     andere Zwecke geeigneter.

              Active(anon) %lu (seit Linux 2.6.28)
                     [Muss noch dokumentiert werden.]

              Inactive(anon) %lu (seit Linux 2.6.28)
                     [Muss noch dokumentiert werden.]

              Active(file) %lu (seit Linux 2.6.28)
                     [Muss noch dokumentiert werden.]

              Inactive(file) %lu (seit Linux 2.6.28)
                     [Muss noch dokumentiert werden.]

              Unevictable %lu (seit Linux 2.6.28)
                     (Von Linux 2.6.28 bis 2.6.30: CONFIG_UNEVICTABLE_LRU war  notwendig.)  [Muss
                     noch dokumentiert werden.]

              Mlocked %lu (seit Linux 2.6.28)
                     (Von  Linux  2.6.28 bis 2.6.30: CONFIG_UNEVICTABLE_LRU war notwendig.) [Muss
                     noch dokumentiert werden.]

              HighTotal %lu
                     (Beginnend mit Linux 2.6.19 wird CONFIG_HIGHMEM benötigt).  Gesamtmenge  von
                     Highmem.  Highmem  ist aller Speicher oberhalb ~860 MB physischen Speichers.
                     Highmem-Bereiche   können   von   Anwendungsprogrammen    oder    für    den
                     Seiten-Zwischenspeicher  verwandt werden. Der Kernel muss Tricks zum Zugriff
                     auf diesen Speicher verwenden, wodurch der Zugriff langsamer als bei  Lowmem
                     ist.

              HighFree %lu
                     (Beginnend  mit  Linux 2.6.19 wird CONFIG_HIGHMEM benötigt) Menge des freien
                     Highmems.

              LowTotal %lu
                     (Beginnend mit Linux 2.6.19 wird  CONFIG_HIGHMEM  benötigt)  Gesamtmenge  an
                     Lowmem.  Lowmem  ist  Speicher,  der  für  alles verwandt werden kann, wofür
                     Highmem verwandt werden kann, er ist aber auch für die Verwendung durch  den
                     Kernel  für seine eigenen Datenstrukturen verfügbar. Unter anderem wird hier
                     heraus Slab zugewiesen. Schlimme Dinge passieren,  falls  kein  Lowmem  mehr
                     verfügbar ist.

              LowFree %lu
                     (Beginnend  mit  Linux 2.6.19 wird CONFIG_HIGHMEM benötigt) Menge des freien
                     Lowmems.

              MmapCopy %lu (seit Linux 2.6.29)
                     (CONFIG_MMU ist notwendig.) [Muss noch dokumentiert werden.]

              SwapTotal %lu
                     Gesamtmenge des verfügbaren Auslagerungsbereichs.

              SwapFree %lu
                     Größe des derzeit ungenutzten Auslagerungsbereichs.

              Dirty %lu
                     Speicher, der darauf wartet, zurück auf Platte geschrieben zu werden.

              Writeback %lu
                     Speicher, der aktiv zurück auf Platte geschrieben wird.

              AnonPages %lu (seit Linux 2.6.18)
                     Non-file backed pages mapped into user-space page tables.

              Mapped %lu
                     Files which have been mapped into memory (with mmap(2)), such as libraries.

              Shmem %lu (seit Linux 2.6.32)
                     Speichermenge, die vom tmpfs(5) belegt wird.

              Slab %lu
                     Zwischenspeicher für In-Kernel-Datenstrukturen. (siehe slabinfo(5))

              SReclaimable %lu (seit Linux 2.6.19)
                     Teil von Slab, der zurückgewonnen werden könnte, wie Zwischenspeicher.

              SUnreclaim %lu (seit Linux 2.6.19)
                     Teil von Slab, der bei Speicherknappheit nicht zurückgewonnen werden kann.

              KernelStack %lu (seit Linux 2.6.32)
                     Teil des Speichers, der Kernel-Stacks zugewiesen wurde.

              PageTables %lu (seit Linux 2.6.18)
                     Menge des Speichers, der der niedrigsten Stufe der Seitentabellen zugeordnet
                     ist.

              Quicklists %lu (seit Linux 2.6.27)
                     (CONFIG_QUICKLIST ist notwendig.) [Muss noch dokumentiert werden.]

              NFS_Unstable %lu (seit Linux 2.6.18)
                     NFS-Seiten,  die  an  den  Server  gesandt,  aber noch nicht dem dauerhaften
                     Speicher übergeben wurden.

              Bounce %lu (seit Linux 2.6.18)
                     Speicher, der für Blockgerät-»bounce buffer« verwendet wird.

              WritebackTmp %lu (seit Linux 2.6.26)
                     Speicher, das von FUSE für temporäre Rückschreibe-Puffer verwandt wird.

              CommitLimit %lu (seit Linux 2.6.10)
                     This is the total amount of memory currently available to  be  allocated  on
                     the  system, expressed in kilobytes. This limit is adhered to only if strict
                     overcommit accounting is enabled (mode 2 in /proc/sys/vm/overcommit_memory).
                     The   limit   is   calculated  according  to  the  formula  described  under
                     /proc/sys/vm/overcommit_memory. For further details, see the  kernel  source
                     file Documentation/vm/overcommit-accounting.

              Committed_AS %lu
                     Die  derzeit  im  System  belegte  Speichermenge. Der gebundene (»commited«)
                     Speicher ist die Summe des Speichers, der vom Prozess  belegt  wird,  selbst
                     wenn  der  noch  nicht  durch  ihn  »verwandt«  wurde. Ein Prozess, der 1 GB
                     Speicher (mittels malloc(3) oder ähnlichem) belegt, aber nur  300  MB  davon
                     anrührt,  wird  mit  300  MB  an  Speicher  angezeigt,  selbst wenn er einen
                     Adressraum für das gesamte 1 GB belegt hat.

                     This 1GB is memory which has been "committed" to by the VM and can  be  used
                     at any time by the allocating application. With strict overcommit enabled on
                     the system (mode 2  in  /proc/sys/vm/overcommit_memory),  allocations  which
                     would  exceed  the  CommitLimit will not be permitted. This is useful if one
                     needs to guarantee that processes will not fail due to lack of  memory  once
                     that memory has been successfully allocated.

              VmallocTotal %lu
                     Gesamtgröße des Vmalloc-Speicherbereichs.

              VmallocUsed %lu
                     Größe des benutzten Vmalloc-Bereichs.

              VmallocChunk %lu
                     Größter freier zusammenhängender Block im Vmalloc-Bereich.

              HardwareCorrupted %lu (seit Linux 2.6.32)
                     (CONFIG_MEMORY_FAILURE ist notwendig.) [Muss noch dokumentiert werden.]

              AnonHugePages %lu (seit Linux 2.6.38)
                     (CONFIG_TRANSPARENT_HUGEPAGE is required.) Non-file backed huge pages mapped
                     into user-space page tables.

              ShmemHugePages %lu (seit Linux 4.8)
                     (CONFIG_TRANSPARENT_HUGEPAGE  wird  benötigt.)   Von   gemeinsam   benutztem
                     Speicher   (shem)   benutzter   Speicher   und   mit  großen  Speicherseiten
                     reserviertes tmpfs(5).

              ShmemPmdMapped %lu (seit Linux 4.8)
                     (CONFIG_TRANSPARENT_HUGEPAGE is required.) Shared memory  mapped  into  user
                     space with huge pages.

              CmaTotal %lu (seit Linux 3.1)
                     Gesamte   CMA-   (Contiguous  Memory  Allocator)  Seiten.  (CONFIG_CMA  wird
                     benötigt.)

              CmaFree %lu (seit Linux 3.1)
                     Freie CMA- (Contiguous Memory Allocator) Seiten. (CONFIG_CMA wird benötigt.)

              HugePages_Total %lu
                     (CONFIG_HUGETLB_PAGE wird benötigt.)  Die  Größe  der  Sammlung  der  großen
                     Speicherseiten.

              HugePages_Free %lu
                     (CONFIG_HUGETLB_PAGE wird benötigt.) Die Anzahl der großen Speicherseiten in
                     der Sammlung, die noch nicht reserviert worden sind.

              HugePages_Rsvd %lu (seit Linux 2.6.17)
                     (CONFIG_HUGETLB_PAGE is required.) This is the  number  of  huge  pages  for
                     which  a  commitment  to  allocate  from  the  pool  has  been  made, but no
                     allocation has yet been made. These reserved huge pages  guarantee  that  an
                     application will be able to allocate a huge page from the pool of huge pages
                     at fault time.

              HugePages_Surp %lu (seit Linux 2.6.24)
                     (CONFIG_HUGETLB_PAGE  wird  benötigt.)  Dies  ist  die  Anzahl   an   großen
                     Speicherseiten     in     der    Sammlung    oberhalb    des    Wertes    in
                     /proc/sys/vm/nr_hugepages.  Die  maximale  Anzahl  an  zusätzlichen   großen
                     Speicherseiten wird durch /proc/sys/vm/nr_overcommit_hugepages gesteuert.

              Hugepagesize %lu
                     (CONFIG_HUGETLB_PAGE wird benötigt.) Die Größe der großen Speicherseiten.

              DirectMap4k %lu (seit Linux 2.6.27)
                     Number of bytes of RAM linearly mapped by kernel in 4kB pages. (x86.)

              DirectMap4M %lu (seit Linux 2.6.27)
                     Number  of  bytes  of  RAM linearly mapped by kernel in 4MB pages. (x86 with
                     CONFIG_X86_64 or CONFIG_X86_PAE enabled.)

              DirectMap2M %lu (seit Linux 2.6.27)
                     Number of bytes of RAM linearly mapped by kernel in  2MB  pages.  (x86  with
                     neither CONFIG_X86_64 nor CONFIG_X86_PAE enabled.)

              DirectMap1G %lu (seit Linux 2.6.27)
                     (x86 mit CONFIG_X86_64 und CONFIG_X86_DIRECT_GBPAGES aktiviert.)

       /proc/modules
              Eine Textliste der vom System geladenen Module (siehe auch lsmod(8)) .

       /proc/mounts
              Vor  Kernel  2.4.19 war diese Datei eine Liste aller aktuell im System eingehängten
              Dateisysteme. Mit der Einführung der prozesseigenen  Einhängenamensräume  in  Linux
              2.4.19    (siehe    mount_namespaces(7))   wurde   diese   Datei   ein   Link   auf
              /proc/self/mounts, die die Einhängepunkte  des  prozesseigenen  Einhängenamensraums
              auflistet. Das Format dieser Datei wird in fstab(5) dokumentiert.

       /proc/mtrr
              Die   Memory   Type  Range  Register,  Details  siehe  die  Linux-Kernel-Quelldatei
              Documentation/x86/mtrr.txt (oder Documentation/mtrr.txt vor Linux 2.6.28).

       /proc/net
              Dieses  Verzeichnis  enthält  verschiedene  Dateien  und  Unterverzeichnisse,   die
              Informationen   über   die   Netzwerkschicht  enthalten.  Diese  Dateien  enthalten
              ASCII-Strukturen  und  sind  daher  mit  »cat«  lesbar.   Allerdings   stellt   der
              Standardbefehl netstat(8) einen sehr viel saubereren Zugang zu diesen Dateien dar.

              Mit  dem  Aufkommen  von  Netznamensräumen sind verschiedene Informationen über den
              Netzwerkstapel virtualisiert (siehe namespaces(7)). Daher  ist  seit  Linux  2.6.25
              /proc/net  ein  symbolischer  Link  auf  das  Verzeichnis  /proc/self/net,  das die
              gleichen unten aufgeführten Dateien und Verzeichnisse enthält.  Allerdings  stellen
              diese  Dateien  und Verzeichnisse nun die Informationen für den Netznamensraum dar,
              bei dem der Prozess Mitglied ist.

       /proc/net/arp
              Enthält einen in  ASCII  lesbaren  Abzug  der  ARP-Tabelle  des  Kernels,  die  zur
              Adressauflösung   dient.  Angezeigt  werden  sowohl  dynamisch  gelernte  wie  auch
              vorprogrammierte ARP-Einträge in folgendem Format:

       IP address     HW type   Flags     HW address          Mask   Device
       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

              Here "IP address" is the IPv4 address of the machine  and  the  "HW  type"  is  the
              hardware  type of the address from RFC 826. The flags are the internal flags of the
              ARP structure (as defined in /usr/include/linux/if_arp.h) and the "HW  address"  is
              the data link layer mapping for that IP address if it is known.

       /proc/net/dev
              Die  Pseudodatei  dev  enthält  Statusinformationen  über  die Netzwerkkarte. Darin
              stehen  die  Anzahl  der  empfangenen  und  gesendeten  Pakete,  die   Anzahl   der
              Übertragungsfehler und Kollisionen und weitere grundlegende Statistik. Das Programm
              ifconfig(8) benutzt diese Werte für die Anzeige des Gerätestatus. Das Format ist:

 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
              Definiert in /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
              Internet Group Management Protocol. Definiert in /usr/src/linux/net/core/igmp.c.

       /proc/net/rarp
              Diese Datei benutzt das gleiche Format wie die arp-Datei und enthält  die  aktuelle
              Datenbank  für  die »umgekehrte Adressauflösung« (reverse mapping), mit der rarp(8)
              arbeitet. Wenn RARP nicht in den Kernel  hineinkonfiguriert  ist,  dann  ist  diese
              Datei nicht vorhanden.

       /proc/net/raw
              Enthält  einen  Abzug  der RAW-Socket-Tabelle. Der Großteil der Informationen dient
              nur zur Fehlersuche. Der »sl«-Wert ist der »kernel hash slot«  für  diesen  Socket,
              »local  address«  enthält  das Wertepaar für lokale Adresse und Protokoll. "St" ist
              der interne Status des Sockets. »tx_queue« und »rx_queue« sind  Warteschlangen  für
              ausgehende  bzw.  eintreffende  Daten,  angegeben als Kernel-Speichernutzung, »tr«,
              »tm->when« und »rexmits« werden von RAW nicht benutzt. Das »uid«-Feld  enthält  die
              effektive UID des Socket-Erstellers.

       /proc/net/snmp
              Diese  Datei  enthält die ASCII-Daten, die für die Verwaltung von IP, ICMP, TCP und
              UDP durch einen SNMP-Agenten benötigt werden.

       /proc/net/tcp
              Enthält einen Abzug der TCP-Socket-Tabelle. Der Großteil  der  Informationen  dient
              nur  zur  Fehlersuche.  Der »sl«-Wert ist der »kernel hash slot« für diesen Socket,
              »local address« ist ein  Wertepaar  aus  lokaler  Adresse  und  Port.  Die  »remote
              address«  ist  (bei  einer  bestehenden  Verbindung)  ein Wertepaar aus Adresse der
              Gegenstation und deren Port. "St" ist der interne Status  des  Sockets.  »tx_queue«
              und   »rx_queue«  sind  aus-  und  eingehenden  Datenwarteschlangen  bezüglich  der
              Kernelspeicherverwendung. Die  Felder  »tr«,  »tm->when«  und  »rexmits«  enthalten
              interne   Kernel-Informationen   zum   Zustand  des  Sockets  und  nutzen  nur  zur
              Fehlersuche. Das »uid«-Feld enthält die effektive UID des Socket-Erstellers.

       /proc/net/udp
              Enthält einen Abzug der UPD-Socket-Tabelle. Der Großteil  der  Informationen  dient
              nur  zur  Fehlersuche.  Der »sl«-Wert ist der »kernel hash slot« für diesen Socket,
              »local address« ist ein  Wertepaar  aus  lokaler  Adresse  und  Port.  Die  »remote
              address«  ist  (bei  einer  bestehenden  Verbindung)  ein Wertepaar aus Adresse der
              Gegenstation und deren Port. "St" ist der interne Status  des  Sockets.  »tx_queue«
              und   »rx_queue«  sind  aus-  und  eingehenden  Datenwarteschlangen  bezüglich  der
              Kernelspeicherverwendung. Die Felder »tr«, »tm->when« und »rexmits« werden von  UDP
              nicht  genutzt. Das »uid«-Feld enthält die effektive UID des Socket-Erstellers. Das
              Format ist:

 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 der UNIX Domain Sockets im System und ihr Status. Format:

 Num RefCount Protocol Flags    Type St Path
  0: 00000002 00000000 00000000 0001 03
  1: 00000001 00000000 00010000 0001 01 /dev/printer

              Die Bedeutung der Felder im Einzelnen:

              Num:      the kernel table slot number.

              RefCount: Die Anzahl der Benutzer des Sockets.

              Protokoll:
                        Derzeit immer 0.

              Flags:    Die internen Kernel-Schalter, die den Status des Sockets halten.

              Type:     Der   Socket-Typ.   Für   SOCK_STREAM-Sockets   ist   dies   0001,    für
                        SOCK_DGRAM-Sockets  ist dies 0002 und für SOCK_SEQPACKET-Sockets ist dies
                        0005.

              St:       Der interne Zustand des Sockets.

              Path:     Der  gebundene  Pfad  (falls  vorhanden)  des  Sockets.  Sockets  in  dem
                        abstrakten  Namensraum  sind  Teil  der  Liste  und werden mit einem Path
                        angezeigt, der mit dem Zeichen »@« beginnt.

       /proc/net/netfilter/nfnetlink_queue
              Diese    Datei    enthält    Informationen    über    den    Umgang     mit     der
              Netfilter-Anwendungsebene-Warteschlange,  falls  diese  benutzt  wird.  Jede  Zeile
              stellt eine Warteschlange dar. Warteschlangen,  die  von  der  Anwendungsebene  aus
              nicht abonniert wurden, werden nicht angezeigt.

                     1   4207     0  2 65535     0     0        0  1
                    (1)   (2)    (3)(4)  (5)    (6)   (7)      (8)

              Die Felder in jeder Zeile sind:

              (1)  Die  Kennung  der Warteschlange. Dies passt auf die Angabe in --queue-num oder
                   der  Option   --queue-balance   im   NFQUEUE-Ziel   von   iptables(8).   Siehe
                   iptables-extensions(8) für weitere Informationen.

              (2)  Die Netlink-Port-Kennung, die von der Warteschlange abonniert wurde.

              (3)  Die  Anzahl  der derzeit eingereihten und auf Verarbeitung durch die Anwendung
                   wartenden Pakete.

              (4)  Der Kopiermodus der Warteschlange. Er ist entweder 1 (nur  Metadaten)  oder  2
                   (auch Nutzdaten in die Anwendungsebene kopieren).

              (5)  Kopierbereich. Dies gibt an, wie viele Bytes der Paketnutzdaten maximal in die
                   Anwendungsebene kopiert werden sollen.

              (6)  in  Warteschlange  weggelassen.  Die  Anzahl  der  Pakete,  die   vom   Kernel
                   weggelassen werden mussten, da bereits zu viele Pakete darauf warten, dass ein
                   Anwendungsprogramm   die   verpflichtenden    Akzeptier-/Verwerfentscheidungen
                   zurückliefert.

              (7)  in  Warteschlange  durch  Benutzer  weggelassen.  Die  Anzahl  der Pakete, die
                   innerhalb des Netlink-Untersystems weggelassen werden mussten. Diese entfallen
                   normalerweise,   wenn   der   entsprechende   Socket-Puffer   voll  ist,  d.h.
                   Benutzeranwendungen nicht schnell genug sind, die Meldungen zu lesen.

              (8)  Sequenznummer.  Jedes   Paket   ist   einer   (32-bit),   monoton-ansteigenden
                   Sequenznummer  zugeordnet.  Dies  zeigt  die  Kennung des neusten eingereihten
                   Pakets.

              Die letzte Zahl existiert nur aus Kompatibilitätsgründen und ist immer 1.

       /proc/partitions
              Enthält neben den Major- und Minor-Gerätenummern jeder Partition  auch  die  Anzahl
              der 1024-Byte-Blöcke und dem Partitionsnamen.

       /proc/pci
              Das  ist  eine  Liste aller PCI-Geräte, die während der Initialisierung des Kernels
              gefunden und konfiguriert wurden.

              Diese Datei wurde zugunsten einer neuen /proc-Schnittstelle für PCI (/proc/bus/pci)
              verworfen.   Sie   wurde   in  Linux  2.2  optional  (verfügbar  durch  Setzen  von
              CONFIG_PCI_OLD_PROC  bei  der   Kernel-Kompilierung).   Sie   wurde   noch   einmal
              non-optional  in  Linux  2.4  aktiviert.  Als  nächstes  wurde  sie  in  Linux  2.6
              missbilligt (mit gesetztem CON-FIG_PCI_LEGACY_PROC noch verfügbar) und  schließlich
              seit Linux 2.6.17 entfernt.

       /proc/profile (seit Linux 2.4)
              Diese  Datei  ist  nur  verfügbar,  falls  der  Kernel  mit der Befehlszeilenoption
              profile=1 gestartet wurde. Er legt die Profiling-Informationen des Kernels in einem
              binären  Format  für die Verwendung mit readprofile(1) offen. Wird (z.B. eine leere
              Zeichenkette)   in   diese   Datei   geschrieben,   werden   die   Profiling-Zähler
              zurückgesetzt;  auf einigen Architekturen setzt das Schreiben einer binäre Ganzzahl
              (»Profiling-Vervielfacher«) der Größe sizeof(int) die Profiling-Interrupt-Frequenz.

       /proc/scsi
              Ein Verzeichnis mit der scsi-»mid-level«-Pseudodatei  und  diversen  Verzeichnissen
              für systemnahe SCSI-Treiber, die eine Datei pro SCSI-Host im System enthalten. Alle
              diese spiegeln den Status  eines  Teils  des  SCSI-Subsystems  wider.  Die  Dateien
              enthalten ASCII-Strukturen, können also mit cat(1) gelesen werden.

              In  einige  Dateien  kann  auch  geschrieben  werden,  um  das  Teilsystem  neu  zu
              konfigurieren oder um bestimmte Eigenschaften ein- oder auszuschalten.

       /proc/scsi/scsi
              Dies ist eine Liste aller SCSI-Geräte, die dem Kernel bekannt sind. Sie ähnelt der,
              die  beim  Hochfahren  des  Rechners zu sehen ist. SCSI unterstützt derzeit nur den
              Befehl singledevice, der root  ermöglicht,  im  laufenden  Betrieb  der  Liste  ein
              zusätzliches Gerät hinzuzufügen.

              Der Befehl

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

              veranlasst  Host  scsi1  nachzusehen,  ob auf SCSI-Kanal 0 ein Gerät mit ID 5 LUN 0
              existiert. Wenn an dieser Adresse schon ein Gerät ist, oder  die  Adresse  ungültig
              ist, wird ein Fehler zurückgeliefert.

       /proc/scsi/[Treibername]
              Treibername  kann  derzeit  sein:  NCR53c7xx,  aha152x,  aha1542, aha1740, aic7xxx,
              buslogic, eata_dma, eata_pio, fdomain, in2000, pas16, qlogic, scsi_debug,  seagate,
              t128, u15-24f, ultrastore oder wd7000. Diese Verzeichnisse werden für jeden Treiber
              angezeigt, der zumindest ein SCSI-HBA registriert hat.  Jedes  Verzeichnis  enthält
              eine Datei pro registriertem Host, die als Namen die Nummer haben, die dem Host bei
              der Initialisierung zugewiesen wurde.

              Das  Lesen  der  Dateien  zeigt  normalerweise  Treiber-  und   Host-Konfiguration,
              Statistik usw.

              Schreiben  in  diese  Dateien  hat  Host-abhängige  Auswirkungen.  Mit den Befehlen
              latency und nolatency kann Root den  Code  zur  Latenzmessung  im  eata_dma-Treiber
              ein-/ausschalten.  Mit  lockup und unlock kann Root Bus-Verklemmungen (bus lockups)
              steuern, wie sie vom scsi_debug-Treiber simuliert werden.

       /proc/self
              Dieses Verzeichnis bezieht sich auf den  Prozess,  der  auf  das  /proc-Dateisystem
              zugreift   und   ist  mit  dem  /proc-Verzeichnis  identisch,  das  als  Namen  die
              Prozessnummer dieses Prozesses hat.

       /proc/slabinfo
              Informationen über Kernel-Zwischenspeicher. Siehe slabinfo(5) für Details.

       /proc/stat
              Von der Architektur abhängige Kernel- und Systemstatistiken. Gebräuchliche Einträge
              sind:

              cpu 10132153 290696 3084719 46828483 16683 0 25195 0 175628 0
              cpu0 1393280 32966 572056 13343292 6130 0 17875 0 23933 0
                     Die   Zeitdauer   (gemessen   in  USER_HZ,  auf  den  meisten  Architekturen
                     Hundertstelsekunden,    ermitteln    Sie    den    richtigen    Wert     mit
                     sysconf(_SC_CLK_TCK)),  die  das System (»cpu«-Zeile) oder die spezielle CPU
                     (»cpuN«-Zeile) in verschiedenen Status verbracht hat:

                     user   (1) Zeit, die auf der Anwendungsebene verbracht wurde.

                     nice   (2) Zeit, die auf der Anwendungsebene mit niedriger Priorität  (nice)
                            verbracht wurde.

                     system (3) Zeit, die im Systemmodus verbracht wurde.

                     idle   (4)  Im  Leerlaufprozess  verbrachte Zeit. Dieser Wert sollte USER_HZ
                            mal den zweiten Eintrag in der Pseudo-Datei /proc/uptime sein.

                     iowait (seit Linux 2.5.41)
                            (5) Zeit, die für den  Abschluss  der  E/A  wartend  verbracht  wird.
                            Dieser Wert ist aus den folgenden Gründen nicht zuverlässig:

                            1. Die  CPU wartet nicht, dass E/A abgeschlossen wird; Iowait ist die
                               Zeit, die ein Prozess auf den Abschluss von E/A wartet. Wenn  eine
                               CPU  aufgrund  ausstehender Prozess-E/A in den Leerlauf geht, wird
                               ein anderer Prozess auf der CPU eingeplant.

                            2. Auf einer  Mehrkern-CPU  läuft  der  auf  den  Abschluss  von  E/A
                               wartende Prozess auf keiner CPU, so dass die Berechnung von Iowait
                               für jede CPU schwierig ist.

                            3. Der Wert in diesem Feld kann unter gewissen Umständen abnehmen.

                     irq (seit Linux 2.6.0-test4)
                            (6) Zeit, die zum Ausliefern von Interrupts verbracht wurde.

                     softirq (seit Linux 2.6.0-test4)
                            (7) Zeit, die zum Ausliefern von Softirqs verbracht wurde.

                     steal (seit Linux 2.6.11)
                            (8) Gestohlene Zeit, die in anderen Betriebssystemen verbracht wurde,
                            wenn der Prozess in einer virtualisierten Umgebung läuft.

                     guest (seit Linux 2.6.24)
                            (9)   Zeit,   die   für   den   Betrieb   einer  virtuellen  CPU  für
                            Gastbetriebssysteme unter der Steuerung des  Linux-Kernels  verbracht
                            wurde.

                     guest_nice (seit Linux 2.6.33)
                            (10)  Time  spent  running  a  niced  guest  (virtual  CPU  for guest
                            operating systems under the control of the Linux kernel).

              page 5741 1808
                     Die Anzahl Speicherseiten, die das System von der Platte geladen  hat  sowie
                     die Anzahl der dorthin ausgelagerten Speicherseiten.

              swap 1 0
                     Die  Anzahl  an  Auslagerungsseiten,  die  hereingeholt  und  herausgebracht
                     wurden.

              intr 1462898
                     Diese Zeile zeigt Zählungen der seit dem Systemstart bearbeiteten Interrupts
                     für  jeden  der  möglichen System-Interrupts. Die erste Spalte ist die Summe
                     aller  bearbeiteten   Interrupts   (einschließlich   architekturspezifischer
                     Interrupts  ohne  Nummer);  jede  weitere  Spalte  ist  die Summe für diesen
                     bestimmten  Interrupt  mit  Nummer.  Interrupts  ohne  Nummer  werden  nicht
                     angezeigt, nur in der Gesamtsumme berücksichtigt.

              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)
                     (nur Linux 2.4)

              ctxt 115315
                     Anzahl Kontextwechsel, die das System durchlaufen hat.

              btime 769041601
                     Zeitpunkt des Systemstarts, in Sekunden seit dem 1. Januar 1970  0  Uhr  UTC
                     (Epoch).

              processes 86031
                     Anzahl der seit dem Systemstart erzeugten Prozesse.

              procs_running 6
                     Anzahl der lauffähigen Prozesse (von Linux 2.5.45 aufwärts).

              procs_blocked 2
                     Anzahl  von  Prozessen,  die  durch  das  Warten  auf  den Abschluss von E/A
                     blockiert sind (2.5.45 aufwärts).

              softirq 229245889 94 60001584 13619 5175704 2471304 28 51212741 59130143 0 51240672
                     Diese Zeile zeigt die Anzahl von Softirqs für alle CPUs.  Die  erste  Spalte
                     ist  die  Gesamtsumme  aller  Softirqs  und jede nachfolgende Spalte ist die
                     Gesamtsumme für einen bestimmten Softirq (2.6.31 aufwärts).

       /proc/swaps
              Genutzte Auslagerungsbereiche; siehe auch swapon(8).

       /proc/sys
              Dieses  Verzeichnis  (vorhanden   seit   1.3.57)   enthält   einige   Dateien   und
              Unterverzeichnisse,   die  Kernel-Variablen  entsprechen.  Diese  Variablen  können
              gelesen und manchmal auch mittels des /proc-Dateisystems oder  des  (missbilligten)
              Systemaufrufs sysctl(2) geändert werden.

              Zeichenkettenwerte dürfen entweder von »\0« oder »\n« eingeschlossen werden.

              Werte  vom Typ Integer oder Long können entweder in dezimaler oder in hexadezimaler
              Schreibweise (z.B. 0x3FFF) geschrieben werden. Beim Schreiben von  mehreren  Werten
              vom  Typ  Integer  oder Long können diese durch eines der folgenden Leerraumzeichen
              getrennt werden: » «, »\t« oder »\n«. Die Verwendung anderer Trennzeichen führt zum
              Fehler EINVAL.

       /proc/sys/abi (seit Linux 2.4.10)
              Dieses Verzeichnis enthält möglicherweise binäre Anwendungsinformationen; siehe die
              Linux-Kernel-Quelldatei Documentation/sysctl/abi.txt für weitere Informationen.

       /proc/sys/debug
              Dieses Verzeichnis kann leer sein.

       /proc/sys/dev
              Dieses Verzeichnis enthält gerätespezifische Informationen (z.B.  /dev/cdrom/info).
              Auf einigen Systemen kann es leer sein.

       /proc/sys/fs
              Dieses  Verzeichnis enthält die Dateien und Unterverzeichnisse für Kernel-Variablen
              in Zusammenhang mit Dateisystemen.

       /proc/sys/fs/binfmt_misc
              Dokumentation für Dateien in diesem Verzeichnis kann in den Linux-Kernelquellen  in
              der       Datei       Documentation/admin-guide/binfmt-misc.rst       (oder      in
              Documentation/binfmt_misc.txt auf älteren Kerneln) gefunden werden.

       /proc/sys/fs/dentry-state (seit Linux 2.2)
              Diese     Datei     enthält     Informationen     über     den     Zustand      des
              Verzeichnis-Zwischenspeichers  (directory  cache,dcache).  Die  Datei enthält sechs
              Zahlen: nr_dentry, nr_unused, age_limit (Alter in Sekunden), want_pages (vom System
              angeforderte Seiten) und zwei Dummy-Werte.

              * nr_dentry  ist die Anzahl der zugewiesenen Dentries (dcache entries). Dieses Feld
                wird in Linux 2.2 nicht genutzt.

              * nr_unused ist die Anzahl ungenutzter Dentries.

              * age_limit  ist  das   Alter   in   Sekunden,   nach   dem   Dcache-Einträge   bei
                Speicherknappheit zurückgefordert werden können.

              * want_pages  ist  ungleich  null, wenn der Kernel shrink_dcache_pages() aufgerufen
                hat und der Dcache noch nicht bereinigt ist.

       /proc/sys/fs/dir-notify-enable
              Diese   Datei   kann   genutzt   werden,   um   die   in   fcntl(2)    beschriebene
              dnotify-Schnittstelle  auf  systemweiter  Basis zu aktivieren oder zu deaktivieren.
              Ein Wert von 0 in dieser Datei  deaktiviert  die  Schnittstelle,  ein  Wert  von  1
              aktiviert sie.

       /proc/sys/fs/dquot-max
              Diese Datei zeigt die maximale Anzahl von zwischengespeicherten Quota-Einträgen für
              die Festplatte. Auf einigen (2.4)-Systemen ist sie nicht vorhanden. Wenn die Anzahl
              der  freien  Festplatten-Quota-Einträge  im Cache sehr klein ist und Sie haben eine
              außergewöhnliche  Anzahl  gleichzeitiger  Systembenutzer,  möchten  Sie  vielleicht
              diesen Grenzwert erhöhen.

       /proc/sys/fs/dquot-nr
              Diese    Datei    zeigt   die   Anzahl   zugewiesener   und   die   Anzahl   freier
              Disk-Quota-Einträge.

       /proc/sys/fs/epoll (seit Linux 2.6.28)
              Dieses Verzeichnis enthält die Datei max_user_watches, mit der  der  insgesamt  von
              der  epoll-Schnittstelle beanspruchte Kernel-Speicher begrenzt werden kann. Weitere
              Einzelheiten finden Sie in epoll(7).

       /proc/sys/fs/file-max
              Diese Datei legt eine systemweite Grenze für die Anzahl offener  Dateien  für  alle
              Prozesse  fest.  Systemaufrufe,  die  beim  Erreichen  dieser  Grenze fehlschlagen,
              schlagen mit dem Fehler ENFILE fehl. (Siehe auch setrlimit(2), mit der ein  Prozess
              seine  prozess-spezifische  Begrenzung,  RLIMIT_NOFILE, für die Anzahl zu öffnender
              Dateien festlegen kann.) Wenn Sie  viele  Fehlermeldungen  im  Kernelprotkoll  über
              nicht  ausreichende  Datei-Handles  bekommen  (suchen Sie nach »VFS: file-max limit
              <number> reached«), versuchen Sie es mit einer Vergrößerung des Wertes:

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

              Ein privilegierter Prozess (CAP_SYS_ADMIN) kann die Begrenzung file-max außer Kraft
              setzen.

       /proc/sys/fs/file-nr
              Diese   (nur   lesbare)   Datei  enthält  drei  Zahlen:  die  Anzahl  der  belegten
              Datei-Handles (d.h. die Anzahl der derzeit offenen Dateien); die Anzahl der  freien
              Datei-Handles  und  die maximale Anzahl an Datei-Handles (d.h. der gleiche Wert wie
              /proc/sys/fs/file-max).  Falls  die  Anzahl  an  belegten  Datei-Handles  nahe  dem
              Maximalwert  ist, sollten Sie in Betracht ziehen, das Maximum zu erhöhen. Vor Linux
              2.6 belegte der Kernel Datei-Handles dynamisch, aber gab  sie  nicht  wieder  frei.
              Stattdessen  wurden  die  freien  Datei-Handles  in  einer  Liste  zur  Neubelegung
              verwaltet, der Wert »free file handles« zeigt die Größe dieser Liste an. Ein  große
              Anzahl  an  freien  Datei-Handles  zeigt  an,  dass  es  in  der Vergangenheit eine
              Benutzungsspitze für offene Datei-Handles gab.  Seit  Linux  2.6  gibt  der  Kernel
              freigegebene  Datei-Handles  wieder frei und der Wert »free file handles« ist immer
              Null.

       /proc/sys/fs/inode-max (nur bis Linux 2.2 vorhanden)
              Diese Datei enthält die maximale Anzahl von im Speicher befindlichen Inodes. Dieser
              Wert  sollte drei- bis viermal größer sein als der Wert von file-max, weil auch die
              Bearbeitung von stdin, stdout und  Netzwerk-Sockets  einen  Inode  erfordert.  Wenn
              Ihnen regelmäßig die Inodes knapp werden, müssen Sie diesen Wert erhöhen.

              Beginnend  mit  Linux  2.4 gibt es keine statische Begrenzung der Anzahl der Inodes
              mehr und diese Datei wurde entfernt.

       /proc/sys/fs/inode-nr
              Diese Datei enthält die ersten zwei Werte von inode-state.

       /proc/sys/fs/inode-state
              Diese Datei enthält sieben Zahlen: nr_inodes, nr_free_inodes,  preshrink  und  vier
              Dummy-Werte (immer Null).

              nr_inodes  ist  die Anzahl der Inodes, die das System zugeteilt hat. nr_free_inodes
              stellt die Anzahl der freien Inodes dar.

              preshrink ist von Null verschieden, wenn nr_inodes > inode-max und das  System  die
              Inode-Liste  abschneiden  muss,  statt mehr zu belegen; seit Linux 2.4 ist das Feld
              ein Blindwert (immer Null).

       /proc/sys/fs/inotify (seit Linux 2.6.13)
              Dieses Verzeichnis enthält die Dateien max_queued_events,  max_user_instances,  und
              max_user_watches,   mit   denen   der   Verbrauch  von  Kernel-Speicher  durch  die
              inotify-Schnittstelle begrenzt werden kann.  Weitere  Einzelheiten  finden  Sie  in
              inotify(7).

       /proc/sys/fs/lease-break-time
              Diese  Datei  legt  die Gnadenfrist fest, die der Kernel einem Prozess gewährt, der
              über einen  Dateiausleihe  (fcntl(2))  verfügt,  nachdem  der  Kernel  dem  Prozess
              signalisiert  hat,  das ein anderer Prozess die Datei öffnen will. Wenn der Prozess
              innerhalb dieser Frist die Ausleihe nicht entfernt oder herabstuft, wird der Kernel
              die Ausleihe zwangsweise zurückziehen.

       /proc/sys/fs/leases-enable
              Mit  dieser  Datei  können  Dateiausleihen  (fcntl(2))  systemweit  aktiviert  oder
              deaktiviert  werden.  Wenn  diese  Datei  den  Wert  0  enthält,  werden  Ausleihen
              deaktiviert. Ein Wert ungleich null aktiviert Ausleihen.

       /proc/sys/fs/mount-max (seit Linux 4.9)
              Der  Wert  in  dieser  Datei legt die maximale Anzahl an Einhängungen, die in einem
              Einhängenamensraum existieren dürfen, fest. Der Vorgabewert ist 100.000.

       /proc/sys/fs/mqueue (seit Linux 2.6.6)
              Dieses Verzeichnis enthält die Dateien msg_max, msgsize_max und queues_max, die den
              Ressourcenverbrauch  von  POSIX-Meldungswarteschlangen steuern. mq_overview(7) gibt
              weitere Informationen.

       /proc/sys/fs/nr_open (seit Linux 2.6.25)
              Diese  Datei  erzwingt  eine   obere   Grenze   für   den   Wert,   auf   den   die
              Ressourcenbeschränkung RLIMIT_NOFILE erhöht werden kann (siehe getrlimit(2)). Diese
              obere Grenze wird sowohl für unprivilegierte als auch  für  privilegierte  Prozesse
              durchgesetzt.  Der  Vorgabewert  in dieser Datei ist 1048576. (Vor Linux 2.6.25 war
              die obere Grenze für RLIMIT_NOFILE hart auf den gleichen Wert einkodiert.)

       /proc/sys/fs/overflowgid und /proc/sys/fs/overflowuid
              Diese Dateien ermöglichen Ihnen, die festen Maximalwerte für UID und GID zu ändern.
              Der  Vorgabewert  ist  65534.  Einige Dateisysteme unterstützen nur 16-Bit-UIDs und
              -GIDs, obwohl in  Linux  UIDs  und  GIDs  32  Bit  lang  sind.  Wenn  eines  dieser
              Dateisysteme  schreibbar  eingehängt  wird,  würden  alle UIDs oder GIDs, die 65535
              überschreiten würden, vor dem  Schreiben  auf  die  Platte  in  ihren  Überlaufwert
              übersetzt werden.

       /proc/sys/fs/pipe-max-size (seit Linux 2.6.35)
              siehe pipe(7).

       /proc/sys/fs/pipe-user-pages-hard (seit Linux 4.5)
              siehe pipe(7).

       /proc/sys/fs/pipe-user-pages-soft (seit Linux 4.5)
              siehe pipe(7).

       /proc/sys/fs/protected_hardlinks (seit Linux 3.6)
              Wenn  der  Wert  in  dieser Datei 0 ist, werden keine Einschränkungen bezüglich der
              Erstellung von harten Links gesetzt (d.h. dies ist das  historische  Verhalten  vor
              Linux  3.6). Wenn der Wert in dieser Datei 1 ist, kann ein harter Link auf ein Ziel
              nur erstellt werden, falls einer der folgenden Bedingungen zutrifft:

              *  The calling process has the CAP_FOWNER capability in its user namespace and  the
                 file UID has a mapping in the namespace.

              *  Die  Dateisystem-UID  des  Prozesses,  der  den  Link  erstellt,  passt  auf den
                 Eigentümer (UID) der Zieldatei  (wie  in  credentials(7)  beschrieben,  ist  die
                 Dateisystem-UID   eines   Prozesses   normalerweise  zu  seiner  effektiven  UID
                 identisch).

              *  Alle der folgenden Bedingungen sind wahr:

                  ·  das Ziel ist eine reguläre Datei;

                  ·  die Zieldatei hat nicht ihr Modus-Bit »set-user-ID« aktiviert;

                  ·  die  Zieldatei  hat  nicht  sowohl  ihr  Modus-Bit  »set-user-ID«  als  auch
                     »group-executable« aktiviert; und

                  ·  der Aufrufende hat Rechte, die Zieldatei zu lesen und zu schreiben (entweder
                     über  die  Dateiberechtigungsmaske  oder  weil  er   über   die   geeigneten
                     Capabilities verfügt).

              Der  Vorgabewert  in  dieser  Datei  ist 0. Durch Setzen des Wertes auf 1 wird eine
              lange  existierende  Klasse   von   Sicherheitsproblemen   durch   hardlinkbasierte
              Prüfungszeitpunkt-Nutzungszeitpunkt-Ressourcenwettläufe verhindert, die meistens in
              weltschreibbaren  Verzeichnissen  wie   /tmp   beobachtet   wird.   Die   häufigste
              Ausnutzungsmethode  dieses  Problems  besteht darin, Privilegiengrenzen beim Folgen
              eines gegebenen harten Links zu überschreiten (d.h. ein  Root-Prozess  folgt  einem
              harten  Link,  den  ein  anderer Benutzer erstellt hat). Zusätzlich verhindert dies
              unberechtigte Benutzer auf Systemen ohne separierte Partitionen  vom  »Festklemmen«
              verwundbarer   set-user-ID-  und  set-group-ID-Dateien  gegen  Upgrades  durch  den
              Administrator oder dem Linken auf besondere Dateien.

       /proc/sys/fs/protected_symlinks (seit Linux 3.6)
              Wenn der Wert in dieser Datei 0 ist, werden keine Einschränkungen auf die folgenden
              symbolischen Links gesetzt (d.h. das historische Verhalten vor Linux 3.6). Wenn der
              Wert in dieser Datei 1  ist,  wird  symbolischen  Links  nur  unter  den  folgenden
              Umständen gefolgt:

              *  Die  Dateisystem-UID  des  Prozesses, der dem symbolischen Link folgt, passt auf
                 den Eigentümer (UID) des symbolischen Links (wie in credentials(7)  beschrieben,
                 ist  die  Dateisystem-UID  eines  Prozesses  normalerweise  identisch  zu seiner
                 effektiven UID);

              *  der Link ist nicht in einem weltschreibbaren Verzeichnis mit Sticky-Bit; oder

              *  der symbolische Link und sein Elternverzeichnis haben  den  gleichen  Eigentümer
                 (UID).

              Ein  Systemaufruf,  der  beim  Folgen  eines  symbolischen  Links  wegen der obigen
              Einschränkungen fehlschlägt, liefert den Fehler EACCES in errno zurück.

              Der Vorgabewert in dieser Datei ist 0. Wird der  Wert  auf  1  gesetzt,  wird  eine
              bereits    lang    existierende    Klasse   von   Sicherheitsproblemen,   die   auf
              Ressourcenwettläufen zwischen dem Zeitpunkt der Überprüfung und dem  Zeitpunkt  der
              Verwendung beim Zugriff auf symbolische Links basieren, vermieden.

       /proc/sys/fs/suid_dumpable (seit Linux 2.6.13)
              Der  Wert  in  dieser  Datei  wird  dem  Schalter  »dumpable« unter den in prctl(2)
              beschriebenen Umständen zugewiesen. Der Wert dieser Datei bestimmt schließlich,  ob
              Speicherabbilder  (Core-Dump-Dateien)  für  Set-User-ID-Programme  oder anderweitig
              geschützte/unsaubere Binärprogramme  erzeugt  werden.  Die  Einstellung  »dumpable«
              betrifft  auch  die  Eigentümerschaft  von Dateien im Verzeichnis /proc/[PID] eines
              Prozesses, wie oben beschrieben.

              Es können drei verschiedene Ganzzahlwerte festgelegt werden:

              0 (Standard)
                     0 (Standard) Das bewirkt das traditionelle Verhalten (vor Linux 2.6.13). Ein
                     Kernspeicherabzug  wird  nicht  für  Prozesse  erzeugt,  die  ihre Identität
                     änderten (durch Aufruf von seteuid(2), setgid(2) oder ähnliches  oder  durch
                     das  Ausführen  eines  set-user-ID  oder  set-group-ID-Programms) oder deren
                     Binärprogramm nicht die Leseberechtigung aktiviert hat.

              1 (»debug«)
                     Alle Prozesse geben einen  Kernspeicherabzug  aus,  wenn  möglich.  (Gründe,
                     warum  ein Prozess dennoch keinen Kernspeicherabzug ausgibt, sind in core(5)
                     beschrieben.) Der Kernspeicherabzug trägt  die  Benutzer-Kennung  (UID)  des
                     erzeugenden  Prozesses, es gibt keine Sicherheitsprüfungen. Dies ist nur für
                     die Fehlersuche im System gedacht: Dieser  Modus  ist  unsicher,  da  er  es
                     unprivilegierten  Benutzern  erlaubt, die Speicherinhalte von privilegierten
                     Prozessen zu untersuchen.

              2 (»suidsafe«)
                     2 (»suidsafe«) Für alle Programme, für die normalerweise kein Abzug  erzeugt
                     würde  (siehe  »0«  oben),  wird  ein  nur  für Root lesbarer Abzug erzeugt.
                     Dadurch kann der Benutzer die Kernspeicherabzugsdatei  entfernen,  sie  aber
                     nicht  lesen.  Aus  Sicherheitsgründen  überschreiben  Kernspeicherabzüge in
                     diesem Modus keine anderen Abzüge oder Dateien. Dieser  Modus  eignet  sich,
                     wenn Administratoren Probleme in einer normalen Umgebung untersuchen.

                     Zusätzlich  muss  wie  in  core(5)  ausführlich  beschrieben  seit Linux 3.6
                     /proc/sys/kernel/core_pattern  entweder  ein  absoluter  Pfadname  oder  ein
                     Pipe-Befehl  sein.  Falls  core_pattern diesen Regeln nicht folgt, werden in
                     das  Kernelprotokoll  Warnungen  ausgegeben   und   kein   Kernspeicherabzug
                     erstellt.

              For  details  of the effect of a process's "dumpable" setting on ptrace access mode
              checking, see ptrace(2).

       /proc/sys/fs/super-max
              Diese Datei steuert die maximale Anzahl der  Superblocks  und  damit  die  maximale
              Anzahl  von  Dateisystemen, die der Kernel einhängen kann. Sie müssen nur super-max
              erhöhen, wenn Sie mehr Dateisysteme einhängen müssen,  als  der  aktuelle  Wert  in
              super-max zulässt.

       /proc/sys/fs/super-nr
              Diese Datei enthält die Anzahl aktuell eingehängter Dateisysteme.

       /proc/sys/kernel
              Dieses  Verzeichnis  enthält Dateien, die eine Reihe von Kernel-Parametern steuern,
              wie es im Folgenden beschrieben wird.

       /proc/sys/kernel/acct
              Diese  Datei  enthält  drei  Zahlen:  highwater,  lowwater  und   frequency.   Wenn
              BSD-Prozessabrechnung   (accounting)   aktiviert   ist,  steuern  diese  Werte  ihr
              Verhalten. Wenn der freie Platz auf dem Dateisystem mit  der  Protokolldatei  unter
              lowwater  Prozent  sinkt, wird die Abrechnung ausgesetzt. Wenn der freie Platz über
              highwater steigt, wird die Abrechnung fortgesetzt.  frequency  (Wert  in  Sekunden)
              legt  fest,  wie oft der Kernel die Größe des freien Speichers prüft. Standardwerte
              sind 4, 2 und 30: Die Abrechnung wird unter 2% freiem Speicher ausgesetzt, über  4%
              fortgesetzt und alle 30 Sekunden der freie Speicher überprüft.

       /proc/sys/kernel/auto_msgmni (Linux 2.6.27 bis 3.18)
              Von  Linux  2.6.27  bis 3.18 wurde diese Datei dazu verwandt, die Neuberechnung des
              Werts in /proc/sys/kernel/msgmni, basierend auf der Hinzufügung oder der Entfernung
              von Speicher oder der Erstellung/Entfernung von IPC-Namensräumen, zu steuern. Wurde
              der  Wert  »1«  per  Echo  in  diese  Datei  geschrieben,  wurde  die  automatische
              Neuberechnung von msgmni aktiviert (und eine Neuberechnung von msgmni basierend auf
              der aktuellen Menge von verfügbaren Speicher und der  Anzahl  von  IPC-Namensräumen
              ausgelöst).  Wurde  »0«  per Echo geschrieben, wurde die automatische Neuberechnung
              deaktiviert. (Die automatische Neuberechnung war auch deaktiviert,  falls  explizit
              ein  Wert  /proc/sys/kernel/msgmni  zugewiesen  worden  war.)  Der  Vorgabewert  in
              auto_msgmni war 1.

              Seit Linux 3.19 hat der Inhalt dieser Datei keinen Effekt (da msgmni  standardmäßig
              fast  den  maximalen  Wert  enthält) und beim Lesen aus dieser Datei wird immer der
              Wert »0« zurückgeliefert.

       /proc/sys/kernel/cap_last_cap (seit Linux 3.2)
              siehe capabilities(7).

       /proc/sys/kernel/cap-bound (von Linux 2.2 bis 2.6.24)
              Diese Datei enthält den Wert  der  Kernel-Capability-Begrenzungsmenge  (ausgedrückt
              als  vorzeichenbehaftete  Dezimalzahl).  Dieser Satz wird logisch UND-verknüpft mit
              den Capabilities, die während  execve(2)  bestanden.  Beginnend  mit  Linux  2.6.25
              verschwand  dieser Wert und wurde durch seine prozess-spezifische Variante ersetzt;
              siehe capabilities(7).

       /proc/sys/kernel/core_pattern
              siehe core(5)

       /proc/sys/kernel/core_pipe_limit
              siehe core(5)

       /proc/sys/kernel/core_uses_pid
              siehe core(5)

       /proc/sys/kernel/ctrl-alt-del
              Diese Datei steuert den Umgang mit Strg-Alt-Entf von der Tastatur. Wenn der Wert in
              dieser  Datei  0  ist,  wird  Strg-Alt-Entf  abgefangen und an das init(1)-Programm
              weitergeleitet, um einen ordnungsgemäßen Neustart auszulösen. Wenn der Wert  größer
              als  Null  ist,  wird  Linux'  Reaktion  auf  einen  vulkanischen  Nackengriff™ ein
              sofortiger  Neustart  sein,   ohne   auch   nur   seine   schmutzigen   Puffer   zu
              synchronisieren.  Anmerkung:  Wenn  ein  Programm  (wie  DOSEMU)  die  Tastatur  im
              »raw«-Modus betreibt, wird das Strg-Alt-Entf durch das Programm  abgefangen,  bevor
              es  die  Kernel-TTY-Schicht  erreicht.  Das Programm muss entscheiden, wie es damit
              umgeht.

       /proc/sys/kernel/dmesg_restrict (seit Linux 2.6.37)
              Der Wert in dieser Datei bestimmt, wer den Inhalt des  Syslogs  des  Kernels  sehen
              kann.  Ein  Wert  von  0 in dieser Datei führt zu keinen Einschränkungen. Falls der
              Wert 1 ist, können nur privilegierte Benutzer den Syslog des Kernels lesen.  (Siehe
              syslog(2)  für  weitere  Details). Seit Linux 3.4 können nur Benutzer, die über das
              Capability CAP_SYS_ADMIN verfügen, den Wert dieser Datei ändern.

       /proc/sys/kernel/domainname und /proc/sys/kernel/hostname
              können benutzt werden, um den NIS/YP-Domainnamen und den Namen  Ihres  Systems  auf
              genau  dieselbe Weise wie mit den Befehlen domainname(1) und hostname(1) zu setzen.
              Also hat

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

              den gleichen Effekt wie

                  # hostname 'darkstar'
                  # domainname 'meineDomain'

              Beachten  Sie  jedoch,  dass  der  klassische  darkstar.frop.org  den  Rechnernamen
              »darkstar«  und  den  DNS-Domainnamen (Internet Domain Name Server) »frop.org« hat,
              der nicht mit den Domainnamen von NIS (Network Information Service) oder YP  (Gelbe
              Seiten) verwechselt werden darf. Diese beiden Domainnamen sind in der Regel anders.
              Für eine ausführliche Diskussion siehe die Handbuchseite hostname(1).

       /proc/sys/kernel/hotplug
              Diese   Datei   enthält   den   Pfad   für   das   Programm   zur   Umsetzung   der
              »Hotplug«-Richtlinie. Der Standardwert in dieser Datei ist /sbin/hotplug.

       /proc/sys/kernel/htab-reclaim (vor Linux 2.4.9.2)
              (nur  PowerPC)  Wenn diese Datei auf einen Wert ungleich Null gesetzt ist, wird die
              »PowerPC htab«  (siehe  Kernel-Datei  Documentation/powerpc/ppc_htab.txt)  jedesmal
              »zurückgeschnitten«, wenn das System in den Leerlauf geht.

       /proc/sys/kernel/keys/*
              Dieses Verzeichnis enthält verschiedene Dateien, die Parameter und Begrenzungen für
              die Schlüsselverwaltungseinrichtung definieren. Diese Dateien werden in keyrings(7)
              beschrieben.

       /proc/sys/kernel/kptr_restrict (seit Linux 2.6.38)
              Der  Wert  in dieser Datei bestimmt, ob die Kerneladressen mittels Dateien in /proc
              und anderen Schnittstellen offengelegt werden. Ein Wert von 0 in dieser Datei führt
              zu  keinen  Einschränkungen.  Falls  der  Wert 1 ist, werden alle Kernelzeiger, die
              mittels des Formatkennzeichners %pK ausgegeben werden, durch Nullen ersetzt, es sei
              denn,  der  Benutzer  verfügt über die Capability CAP_SYSLOG. Falls der Wert 2 ist,
              werden Kernelzeiger, die mittels des  Formatkennzeichners  %pK  ausgegeben  werden,
              durch   Nullen   ersetzt,   unabhängig   von  den  Capabilitys  der  Benutzer.  Der
              ursprüngliche Vorgabewert dieser Datei war 1,  aber  die  Vorgabe  wurde  in  Linux
              2.6.39  auf  0  geändert.  Seit  Linux  3.4  können nur Benutzer mit der Capability
              CAP_SYS_ADMIN den Wert in dieser Datei ändern.

       /proc/sys/kernel/l2cr
              (nur PowerPC) Diese Datei enthält einen Schalter für die  Steuerung  des  L2-Caches
              von  Platinen  mit  dem  G3-Prozessor.  Der  Wert 0 deaktiviert den Cache, ein Wert
              ungleich null aktiviert ihn.

       /proc/sys/kernel/modprobe
              Diese  Datei  enthält  den  Pfad  zum  Programm,  das   die   Kernel-Module   lädt,
              standardmäßig  /sbin/modprobe.  Diese  Datei existiert nur, falls die Kernel-Option
              CONFIG_MODULES (CONFIG_KMOD in Linux 2.6.26 und älter) aktiviert ist. Diese wird in
              der  Linux-Kernel-Quelldatei  Documentation/kmod.txt beschrieben (nur in Kernel 2.4
              und älter vorhanden).

       /proc/sys/kernel/modules_disabled (seit Linux 2.6.31)
              Ein Umschaltwert, der angibt, ob  Module  in  einen  andernfalls  modularen  Kernel
              geladen werden dürfen. Dieser Umschaltwert ist standardmäßig aus (0), kann aber auf
              wahr (true, 1) gesetzt werden. Sobald er wahr ist, können Module weder geladen noch
              entladen  werden  und der Umschaltwert kann nicht zurück auf falsch gesetzt werden.
              Diese Datei ist  nur  vorhanden,  falls  der  Kernel  mit  der  aktivierten  Option
              CONFIG_MODULES gebaut wurde.

       /proc/sys/kernel/msgmax (seit Linux 2.2)
              Diese Datei enthält eine systemweite Begrenzung der Maximalzahl von Bytes, die eine
              einzelne Nachricht in einer System-V-Nachrichtenschlange enthalten darf.

       /proc/sys/kernel/msgmni (seit Linux 2.4)
              Diese   Datei   legt    die    systemweite    Grenze    für    die    Anzahl    der
              Nachrichtenschlangen-Bezeichner fest. Siehe auch /proc/sys/kernel/auto_msgmni.

       /proc/sys/kernel/msgmnb (seit Linux 2.2)
              Diese  Datei  definiert  einen  systemweiten  Parameter für die Initialisierung der
              Einstellung msg_qbytes für nachfolgend erstellte  Nachrichtenschlangen.  msg_qbytes
              legt  fest,  wie viele Bytes maximal in eine Nachrichtenschlange geschrieben werden
              dürfen.

       /proc/sys/kernel/ngroups_max (seit Linux 2.6.4)
              Dies ist eine  nur  lesbare  Datei,  die  die  obere  Grenze  für  die  Anzahl  der
              Gruppenmitgliedschaften eines Prozesses anzeigt.

       /proc/sys/kernel/ns_last_pid (seit Linux 3.3)
              Siehe pid_namespaces(7).

       /proc/sys/kernel/ostype und /proc/sys/kernel/osrelease
              Diese Dateien enthalten Teilzeichenketten von /proc/version.

       /proc/sys/kernel/overflowgid und /proc/sys/kernel/overflowuid
              Diese    Dateien    duplizieren    die    Dateien    /proc/sys/fs/overflowgid   und
              /proc/sys/fs/overflowuid.

       /proc/sys/kernel/panic
              Diese  Datei  ermöglicht  Lese-  und  Schreib-Zugriff   auf   die   Kernel-Variable
              panic_timeout.  Steht  hier eine 0, dann bleibt der Kernel in einer Panic-Schleife;
              ungleich 0 bedeutet, dass der Kernel nach dieser Anzahl  Sekunden  automatisch  das
              System  wieder  hochfahren  soll.  Wenn  Sie die Laufzeitüberwachungs-Gerätetreiber
              (software watchdog device driver) nutzen, ist der empfohlene Wert 60.

       /proc/sys/kernel/panic_on_oops (seit Linux 2.5.68)
              Diese Datei steuert das Verhalten des Kernels, wenn ein  Problem  (oops)  oder  ein
              Fehler  aufgetreten  ist. Falls diese Datei den Wert 0 enthält, versucht das System
              eine Fortsetzung des Betriebs. Falls sie 1 enthält, gibt das System klogd ein  paar
              Sekunden Zeit für die Protokollierung des Problems und verfällt dann in die »kernel
              panic«. Wenn in der Datei /proc/sys/kernel/panic ein Wert ungleich Null steht, wird
              der Rechner neu gestartet.

       /proc/sys/kernel/pid_max (seit Linux 2.5.34)
              Diese Datei gibt den Wert an, an dem PIDs überlaufen (d.h. der Wert in dieser Datei
              ist um eins größer als die maximal zulässige PID).  PIDs  größer  als  dieser  Wert
              werden  nicht  zugewiesen;  daher  fungiert  der  Wert  in  dieser  Datei  auch als
              systemweite Grenze der Gesamtanzahl an Prozessen und Threads. Der Standardwert  für
              diese  Datei  ist  32768;  dieser  bewirkt den gleichen PID-Bereich wie auf älteren
              Kerneln. Auf 32-Bit-Plattformen ist 32768 der Maximalwert. Auf 64-Bit-Systemen kann
              pid_max auf einen beliebigen Wert bis zu 2^22 (PID_MAX_LIMIT, ungefähr 4 Millionen)
              gesetzt werden.

       /proc/sys/kernel/powersave-nap (nur PowerPC)
              Diese Datei enthält einen Schalter zur Steuerung von Linux-PPC.  Ist  er  betätigt,
              wird   Linux-PPC  den  »nap«-Energiesparmodus  verwenden,  ansonsten  wird  es  der
              »doze«-Modus sein.

       /proc/sys/kernel/printk
              siehe syslog(2)

       /proc/sys/kernel/pty (seit Linux 2.6.4)
              Dieses Verzeichnis enthält zwei Dateien mit Bezug  zu  den  Unix-98-Pseudoterminals
              (siehe pts(4)) des Systems.

       /proc/sys/kernel/pty/max
              Diese Datei definiert die Maximalzahl von Pseudoterminals.

       /proc/sys/kernel/pty/nr
              Diese  (nur  lesbare)  Datei  gibt  die  Anzahl  der  derzeit  im  System genutzten
              Pseudoterminals an

       /proc/sys/kernel/random
              Dieses Verzeichnis enthält verschiedene  Parameter,  um  das  Verhalten  der  Datei
              /dev/random zu steuern. random(4) gibt weitere Informationen.

       /proc/sys/kernel/random/uuid (seit Linux 2.4)
              Jeder  Lesevorgang  aus  dieser nur lesbaren Datei liefert eine zufällig generierte
              128-Bit UID als Zeichenkette, die im Standard-UID-Format ist, zurück.

       /proc/sys/kernel/randomize_va_space (seit Linux 2.6.12)
              Wählt die Adressraumlayoutverwürfelungsregelungen (ASLR) für das  System  aus  (auf
              Architekturen,   die   ASLR  unterstützen).  Für  diese  Datei  werden  drei  Werte
              unterstützt:

              0  Schaltet ASLR aus. Dies ist  die  Vorgabe  für  Architekturen,  die  ASLR  nicht
                 unterstützen und wenn der Kernel mit dem Parameter norandmaps gestartet wird.

              1  Macht  die  Zuweisung  von  Adressen durch mmap(2), den Stack und die VDSO-Seite
                 zufällig. Unter anderem bedeutet dies, dass Laufzeitbibliotheken  an  zufälligen
                 Adressen  geladen werden. Das Textsegment von PIE-gelinkten Programmen wird auch
                 an zufälligen Adressen geladen. Dieser Wert ist die Vorgabe,  falls  der  Kernel
                 mit CONFIG_COMPAT_BRK konfiguriert wurde.

              2  (Seit  Linux 2.6.25) Speicherverwürfelung wird auch unterstützt. Dieser Wert ist
                 die Vorgabe, falls der Kernel nicht mit CONFIG_COMPAT_BRK konfiguriert wurde.

       /proc/sys/kernel/real-root-dev
              Diese        Datei        wird        in        der         Linux-Kernel-Quelldatei
              Documentation/admin-guide/initrd.rst (oder Documentation/initrd.txt vor Linux 4.10)
              beschrieben.

       /proc/sys/kernel/reboot-cmd (nur Sparc)
              Diese  Datei  scheint   eine   Möglichkeit   zu   sein,   ein   Argument   an   den
              SPARC-ROM/Flash-Bootloader  zu  übergeben.  Vielleicht kann man ihm Anweisungen für
              die Zeit nach dem Neustart geben?

       /proc/sys/kernel/rtsig-max
              (Nur in Kerneln bis einschließlich 2.6.7; siehe  setrlimit(2)).  Mit  dieser  Datei
              kann  die  maximale  Anzahl  (anstehender)  von POSIX-Echtzeit-Signalen eingestellt
              werden, die im System anstehen dürfen.

       /proc/sys/kernel/rtsig-nr
              (Nur in Kerneln bis einschließlich 2.6.7). Diese  Datei  gibt  die  Anzahl  derzeit
              anstehender POSIX-Echtzeitsignale an.

       /proc/[pid]/sched_autogroup_enabled (seit Linux 2.6.38)
              siehe sched(7)

       /proc/sys/kernel/sched_child_runs_first (seit Linux 2.6.23)
              Falls  diese  Datei  den Wert Null enthält, dann wird der Elternprozess zuerst nach
              einem fork(2) auf der CPU eingeplant. Andernfalls wird das Kind zuerst auf der  CPU
              eingeplant.   (Auf   einem   Mehrprozessorsystem   können   natürlich   sowohl  der
              Elternprozess als auch das Kind sofort auf einer CPU eingeplant werden.)

       /proc/sys/kernel/sched_rr_timeslice_ms (seit Linux 3.9)
              Siehe sched_rr_get_interval(2).

       /proc/sys/kernel/sched_rt_period_us (seit Linux 2.6.25)
              siehe sched(7)

       /proc/sys/kernel/sched_rt_runtime_us (seit Linux 2.6.25)
              siehe sched(7)

       /proc/sys/kernel/seccomp (seit Linux 4.14)
              Dieses Verzeichnis stellt zusätzliche  Seccomp-Informationen  und  -konfigurationen
              bereit. Siehe seccomp(2) für weitere Details.

       /proc/sys/kernel/sem (since Linux 2.4)
              Diese Datei enthält vier Zahlen, die Grenzen für System-V-IPC-Semaphore definieren.
              Der Reihe nach sind das:

              SEMMSL  die maximale Anzahl von Semaphoren pro Satz von Semaphoren

              SEMMNS  eine systemweite Begrenzung für die Anzahl in allen Semaphoren-Sätzen

              SEMOPM  die maximale Anzahl von Operationen,  die  in  einem  Aufruf  von  semop(2)
                      festgelegt werden dürfen

              SEMMNI  eine  systemweite  Grenze  für  die  maximale  Anzahl  von  Bezeichnern für
                      Semaphore.

       /proc/sys/kernel/sg-big-buff
              Diese Datei gibt die Größe der generischen Puffer für SCSI-Geräte  an.  Sie  können
              den  Wert  derzeit  nicht  optimieren,  aber bei der Kompilierung ändern, indem Sie
              include/scsi/sg.h bearbeiten und den Wert  SG_BIG_BUFF  anpassen.  Es  sollte  aber
              keinen Grund geben, diesen Wert zu ändern.

       /proc/sys/kernel/shm_rmid_forced (seit Linux 3.1)
              Falls   diese   Datei   auf   1  gesetzt  wird,  werden  alle  gemeinsam  benutzten
              System-V-Speichersegmente für die Zerstörung, sobald  die  Anzahl  der  angehängten
              Prozesse  auf  Null fällt, markiert. Mit anderen Worten, es ist nicht mehr möglich,
              dass gemeinsam  benutzte  Speichersegmente  unabhängig  von  angehängten  Prozessen
              existieren.

              Der  Effekt  ist, als ob shmctl(2) IPC_RMID auf alle bestehenden und alle zukünftig
              erstellten Segmente angewandt würde (bis diese Datei  auf  0  zurückgesetzt  wird).
              Beachten  Sie,  dass  bestehende  Segmente,  die  an keinen Prozess angehängt sind,
              sofort beim Setzen der Datei auf 1 zerstört werden. Setzen dieser Option wird  auch
              Segmente  zerstören,  die  zwar erstellt, aber niemals angehängt wurden, sobald der
              Prozess, der das Segment mit shmget(2) erstellte, beendet wird.

              Wird diese Datei  auf  1  gesetzt,  ist  es  möglich,  sicherzustellen,  dass  alle
              gemeinsam  benutzten  System-V-Speichersegmente  beim  Ressourcenverbrauch  und den
              Ressourcenbegrenzungen bei mindestens einem Prozess  berücksichtigt  werden  (siehe
              die Beschreibung von RLIMIT_AS in getrlimit(2)).

              Da  durch Setzen der Datei auf 1 ein nicht standardisiertes Verhalten hervorgerufen
              wird und auch bestehende Anwendungen dadurch beschädigt  werden  könnten,  ist  der
              Vorgabewert in dieser Datei 0. Setzen Sie diese Datei nur auf 1, wenn Sie ein gutes
              Verständnis   der   Semantik    der    Anwendungen,    die    gemeinsam    benutzte
              System-V-Speichersegmente auf Ihrem System benutzen, haben.

       /proc/sys/kernel/shmall (seit Linux 2.2)
              Diese  Datei  enthält  die  systemweite  Grenze  für  die  Gesamtzahl der Seiten im
              gemeinsam benutzten System-V-Speicher.

       /proc/sys/kernel/shmmax (seit Linux 2.2)
              Diese Datei kann genutzt werden, um die Laufzeitbeschränkung für die maximale Größe
              (System  V IPC) für gemeinsame Speichersegmente festzulegen. Jetzt werden im Kernel
              gemeinsame Speichersegmente bis zu 1 GB unterstützt. Dieser Wert  ist  per  Vorgabe
              SHMMAX.

       /proc/sys/kernel/shmmni (seit Linux 2.4)
              Diese  Datei  spezifiziert  die systemweite maximale Anzahl von gemeinsam genutzten
              System-V-Speichersegmenten, die erzeugt werden können.

       /proc/sys/kernel/sysctl_writes_strict (seit Linux 3.16)
              Der Wert  in  dieser  Datei  bestimmt,  wie  der  Dateiversatz  das  Verhalten  der
              Aktualisierung  von Einträgen in Dateien unter /proc/sys beeinflusst. Die Datei hat
              drei mögliche Werte:

              -1  Dies stellt  das  veraltete  Verhalten  bereit,  ohne  Printk-Warnungen.  Jeder
                  write(2)  muss  den  kompletten  zu  schreibenden  Wert  enthalten  und mehrere
                  Schreibvorgänge auf den gleichen  Dateideskriptor  werden  unabhängig  von  der
                  Dateiposition den gesamten Wert überschreiben.

              0   (Vorgabe)   Dies   stellt  das  gleiche  Verhalten  wie  bei  -1  bereit,  aber
                  Printk-Warnungen  werden  für   Prozesse   geschrieben,   die   Schreibzugriffe
                  ausführen, wenn der Dateiversatz nicht 0 ist.

              1   Respektiert  den  Dateiversatz  beim  Schreiben von Zeichenketten in Dateien in
                  /proc/sys. Mehrere Schreibvorgänge werden an den Wertepuffer  anhängen.  Alles,
                  was  hinter  die  maximale  Länge des Puffers geschrieben wird, wird ignoriert.
                  Schreibvorgänge  an  numerische  Einträge  in  /proc/sys   müssen   immer   bei
                  Dateiversatz  0  erfolgen  und  der  Wert  muss  komplett  in  dem  an write(2)
                  bereitgestellten Puffer enthalten sein.

       /proc/sys/kernel/sysrq
              Diese Datei steuert, welche Funktionen von dem SysRq-Schlüssel  aufgerufen  werden.
              Standardmäßig  enthält  die  Datei  den  Wert  1.  Das bedeutet, dass jede mögliche
              SysRq-Anfrage möglich ist. (In älteren Kernel-Versionen wurde  SysRq  standardmäßig
              deaktiviert  und  Sie mussten SysRq gesondert zur Laufzeit aktivieren, aber das ist
              nicht mehr notwendig). Mögliche Werte in dieser Datei sind:

              0    deaktiviert Sysrq komplett

              1    aktiviert alle Funktionen von Sysrq

              > 1  Bitmaske, die Sysrq-Funktione erlaubt, wie folgt:
                     2  aktiviert die Steuerung der Konsolenprotokollierungsstufe
                     4  aktiviert die Steuerung der Tastatur (SAK, unraw)
                     8  aktiviert Speicherauszüge von Prozessen zur Fehlersuche usw.
                    16  aktiviert den Befehl »sync«
                    32  aktiviert das nur lesende erneute Einhängen
                    64  aktiviert das Signalisieren von Prozessen (term, kill, oom-kill)
                   128  erlaubt Neustarten/Ausschalten
                   256  Erlaubt die Veränderungen des Nice-Werts von Echtzeitprozessen

              Diese   Datei   ist   nur   vorhanden,   wenn    die    Kernel-Konfigurationsoption
              CONFIG_MAGIC_SYSRQ   aktiviert   wird.  Für  weitere  Einzelheiten  lesen  Sie  die
              Linux-Kernel-Quelltextdatei        Documentation/admin-guide/sysrq.rst        (oder
              Documentation/sysrq.txt vor Linux 4.10).

       /proc/sys/kernel/version
              Diese Datei enthält eine Zeichenkette wie beispielsweise:

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

              Die »#5« besagt, das dies der fünfte aus diesem Quelltext erstellte Kernel ist. Das
              anschließende Datum gibt an, wann der Kernel erstellt wurde.

       /proc/sys/kernel/threads-max (seit Linux 2.3.11)
              Diese Datei  legt  die  systemweite  Begrenzung  für  die  Gesamtzahl  der  Threads
              (Prozesse) fest, die erstellt werden dürfen.

              Seit  Linux  4.1  ist  der  Wert,  den  nach  threads-max  geschrieben werden kann,
              begrenzt. Der  Minimalwert  ist  20,  der  Maximalwert  wird  durch  die  Konstante
              FUTEX_TID_MASK  (0x3fffffff) gegeben. Falls ein Wert außerhalb dieses Bereichs nach
              threads-max geschrieben wird, tritt der Fehler EINVAL auf.

              Der geschriebene Wert wird gegenüber den verfügbaren RAM-Seiten geprüft. Falls  die
              Thread-Struktur  zu  viel  (mehr als 1/8) der verfügbaren RAM-Seiten belegen würde,
              wird threads-max entsprechend reduziert.

       /proc/sys/kernel/yama/ptrace_scope (seit Linux 3.5)
              siehe ptrace(2).

       /proc/sys/kernel/zero-paged (nur PowerPC)
              Die Datei enthält einen Schalter. Ist er aktiviert  (ungleich  0),  wird  Linux-PPC
              vorbeugend  Seiten  im  Leerlauf  auf  Null  setzen und beschleunigt möglicherweise
              get_free_pages.

       /proc/sys/net
              Dieses Verzeichnis enthält Netzwerkkram. Erklärungen  für  einige  der  Dateien  in
              diesem Verzeichnis finden Sie in tcp(7) und ip(7).

       /proc/sys/net/core/bpf_jit_enable
              siehe bpf(2).

       /proc/sys/net/core/somaxconn
              Diese Datei enthält eine obere Grenze für das backlog-Argument von listen(2); siehe
              die Handbuchseite von listen(2) für Einzelheiten.

       /proc/sys/proc
              Dieses Verzeichnis kann leer sein.

       /proc/sys/sunrpc
              Dieses Verzeichnis unterstützt  Suns  »remote  procedure  call«  (rpc(3))  für  das
              Netzwerkdateisystem (NFS). Auf manchen Systemen fehlt es.

       /proc/sys/user (seit Linux 4.9)
              Siehe namespaces(7).

       /proc/sys/vm
              Dieses  Verzeichnis  enthält Dateien für die Optimierung der Speicherverwaltung und
              die Verwaltung der Puffer und Caches (Zwischenspeicher).

       /proc/sys/vm/admin_reserve_kbytes (seit Linux 3.10)
              Diese Datei definiert die Menge an freiem Speicher (in KiB) auf dem System, der für
              Benutzer mit der Capability CAP_SYS_ADMIN reserviert werden sollte.

              The default value in this file is the minimum of [3% of free pages, 8MiB] expressed
              as KiB. The default is intended to provide enough for the superuser to log  in  and
              kill a process, if necessary, under the default overcommit 'guess' mode (i.e., 0 in
              /proc/sys/vm/overcommit_memory).

              Systems    running    in    "overcommit     never"     mode     (i.e.,     2     in
              /proc/sys/vm/overcommit_memory)   should increase the value in this file to account
              for the full virtual memory size of the programs used to  recover  (e.g.,  login(1)
              ssh(1),  and top(1))  Otherwise, the superuser may not be able to log in to recover
              the system. For example, on x86-64 a suitable value is 131072 (128MiB reserved).

              Die Änderung des Wertes in dieser Datei tritt in Kraft, wann immer  eine  Anwendung
              Speicher anfordert.

       /proc/sys/vm/compact_memory (seit Linux 2.6.35)
              Wenn  1 in diese Datei geschrieben wird, werden alle Zonen zusammengefasst, so dass
              der freie Speicher wo möglich in durchlaufenden Blöcken verfügbar ist.  Der  Effekt
              dieser Aktion kann durch Einsicht in /proc/buddyinfo geprüft werden.

              Nur vorhanden, falls der Kernel mit CONFIG_COMPACTION konfiguriert wurde.

       /proc/sys/vm/drop_caches (seit Linux 2.6.16)
              Das  Schreiben  in  diese  Datei  veranlasst  den Kernel, saubere Zwischenspeicher,
              Dentries und Inodes aus dem Speicher zu verwerfen, was dazu  führt,  dass  Speicher
              frei  wird.  Dies  kann  für das Testen der Speicherverwaltung und der Durchführung
              reproduzierbarer Dateisystembewertungen nützlich sein. Da das  Schreiben  in  diese
              Datei dazu führt, dass die Vorteile der Zwischenspeicherung verloren gehen, kann es
              die Leistung des gesamten Systems vermindern.

              Zur Freigabe des Seitenzwischenspeichers, verwenden Sie:

                  echo 1 > /proc/sys/vm/drop_caches

              Zur Freigabe der Dentries und Inodes, verwenden Sie:

                  echo 2 > /proc/sys/vm/drop_caches

              Zur Freigabe des Seitenzwischenspeichers, der Dentries und Inodes, verwenden Sie:

                  echo 3 > /proc/sys/vm/drop_caches

              Da das Schreiben in diese Datei unschädlich ist und geänderte (schmutzige)  Objekte
              nicht freigegeben werden können, sollte der Benutzer vorher sync(8) aufrufen.

       /proc/sys/vm/legacy_va_layout (seit Linux 2.6.9)
              If nonzero, this disables the new 32-bit memory-mapping layout; the kernel will use
              the legacy (2.4) layout for all processes.

       /proc/sys/vm/memory_failure_early_kill (seit Linux 2.6.32)
              Steuert, wie Prozesse beendet werden, wenn ein  nicht  korrigierter  Speicherfehler
              (in  der  Regel  ein  2-Bit-Fehler  in  einem  Speichermodul), den der Kernel nicht
              bearbeiten kann, im Hintergrund durch die Hardware erkannt wird. In einigen  Fällen
              (wenn  es  von der Seite noch eine gültige Kopie auf der Festplatte gibt), wird der
              Kernel den Fehler behandeln, ohne alle Anwendungen zu beeinträchtigen. Aber wenn es
              keine  weitere  aktuelle  Kopie  der Daten gibt, wird er Prozesse abbrechen, um die
              Verbreitung korrumpierter Daten zu unterbinden.

              Die Datei hat einen der folgenden Werte:

              1:  Kill all processes that have the corrupted-and-not-reloadable  page  mapped  as
                  soon  as  the corruption is detected. Note that this is not supported for a few
                  types of pages, such as kernel internally allocated data or the swap cache, but
                  works for the majority of user pages.

              0:  Unmap the corrupted page from all processes and kill a process only if it tries
                  to access the page.

              Der Abbruch wird mittels eines SIGBUS-Signals erledigt, bei  dem  der  si_code  auf
              BUS_MCEERR_AO  gesetzt  wird.  Prozesse  können  darauf reagieren, wenn sie wollen;
              siehe sigaction(2) für weitere Einzelheiten.

              Diese Funktionalität ist nur auf Architekturen/Plattformen  aktiv,  die  über  eine
              ausgefeilte  Handhabung von »machine checks« verfügen und hängt von den Fähigkeiten
              der Hardware ab.

              Anwendungen können die Einstellung memory_failure_early_kill  individuell  mit  der
              prctl(2)-Operation  PR_MCE_KILL außer Kraft setzen.

              Nur vorhanden, falls der Kernel mit CONFIG_MEMORY_FAILURE konfiguriert wurde.

       /proc/sys/vm/memory_failure_recovery (seit Linux 2.6.32)
              Aktiviert  die Behebung von Speicherfehlern (wenn das von der Plattform unterstützt
              wird).

              1:  Fehlerbehebung versuchen.

              0:  Bei Speicherfehlern immer eine Kernel Panic auslösen.

              Nur vorhanden, falls der Kernel mit CONFIG_MEMORY_FAILURE konfiguriert wurde.

       /proc/sys/vm/oom_dump_tasks (seit Linux 2.6.25)
              Ermöglicht einen systemweiten Speicherauszug der  Prozesse  (ohne  Kernel-Threads),
              wenn   der  Kernel  bei  Speicherknappheit  Prozesse  abbricht  (OOM-killing).  Der
              Speicherauszug enthält die  folgenden  Informationen  für  jeden  Prozess  (Thread,
              Prozess):     Thread-Kennung,    reale    Benutzerkennung,    Thread-Gruppenkennung
              (Prozesskennung), Größe des virtuellen Speichers, Größe des Resident Set, die  CPU,
              auf  der der Prozess laufen soll, die oom_adj-Bewertung (siehe die Beschreibung von
              /proc/[PID]/oom_adj)  und  der  Name  des   Befehls.   Dies   ist   hilfreich,   um
              festzustellen,  warum  der  OOM-Killer  ausgeschickt  wurde und um die schurkischen
              Prozesse zu identifizieren.

              Ist der Wert in der Datei Null, wird diese Information unterdrückt. Auf sehr großen
              Systemen  mit  Tausenden  von  Prozessen  wird  es  kaum praktikabel sein, für alle
              Prozesse den Speicherstatus auszugeben.  Solche  Systeme  sollten  nicht  gezwungen
              werden, bei Speicherknappheit Leistungseinbußen zu erleiden, wenn die Informationen
              nicht gewünscht werden.

              Ist der Wert von Null verschieden, werden diese Informationen jedesmal  ausgegeben,
              wenn der OOM-Killer einen speicherhungrigen Prozess ins Jenseits schickt.

              Der Standardwert ist 0.

       /proc/sys/vm/oom_kill_allocating_task (seit Linux 2.6.24)
              This   enables  or  disables  killing  the  OOM-triggering  task  in  out-of-memory
              situations.

              Ist der Wert null, wertet der  OOM-Killer  die  gesamte  Taskliste  aus  und  wählt
              heuristisch   einen   Prozess   als   Opfer   aus.  Normalerweise  wählt  er  einen
              speicherhungrigen Schurken aus, dessen Tod sehr viel Speicher freigibt.

              Ist der  Wert  ungleich  Null,  beseitigt  der  OOM-Killer  den  Prozess,  der  die
              Speicherknappheit auslöste. Dadurch wird eine möglicherweise aufwändige Analyse der
              Taskliste vermieden.

              Falls /proc/sys/vm/panic_on_oom von null verschieden ist, hat das Vorrang  vor  dem
              Wert in /proc/sys/vm/oom_kill_allocating_task, was auch immer darin steht.

              Der Standardwert ist 0.

       /proc/sys/vm/overcommit_kbytes (seit Linux 3.14)
              This  writable  file  provides  an alternative to /proc/sys/vm/overcommit_ratio for
              controlling the CommitLimit when /proc/sys/vm/overcommit_memory has the value 2. It
              allows the amount of memory overcommitting to be specified as an absolute value (in
              kB), rather than as a percentage, as is done with overcommit_ratio. This allows for
              finer-grained control of CommitLimit on systems with extremely large memory sizes.

              Nur entweder overcommit_kbytes oder overcommit_ratio kann einen Effekt haben. Falls
              overcommit_kbytes einen von Null verschiedenen Wert enthält, dann wird  dieser  zur
              Berechnung  von  CommitLimit  verwandt, andernfalls wird overcommit_ratio verwandt.
              Wird in eine der beiden Dateien geschrieben, dann wird der Wert in der anderen  auf
              Null gesetzt.

       /proc/sys/vm/overcommit_memory
              Diese Datei legt den Abrechnungsmodus des Kernels für virtuellen Speicher fest. Die
              Werte sind:

                     0: heuristic overcommit (this is the default)
                     1: always overcommit, never check
                     2: always check, never overcommit

              In Modus 0 werden Aufrufe von mmap(2) mit MAP_NORESERVE nicht überprüft. Damit  ist
              die  Standardprüfung  sehr  schwach und setzt den Prozess dem Risiko aus, zum Opfer
              des OOM-Killers zu werden.

              In Modus 1 gibt der Kernel immer vor, noch  über  Speicher  zu  verfügen,  bis  der
              Speicher   schließlich   wirklich   erschöpft  ist.  Ein  Einsatzzweck  stellt  das
              wissenschaftliche Rechnen dar, bei denen große,  kaum  besetzte  Felder  eingesetzt
              werden.  In  Linux-Kernelversionen vor 2.6.0 impliziert jeder von Null verschiedene
              Wert den Modus 1.

              In Modus 2 (verfügbar seit Linux 2.6)  wird  der  reservierbare  gesamte  virtuelle
              Adressraum (CommitLimit in /proc/meminfo) wie folgt berechnet:

                  CommitLimit = (total_RAM - total_huge_TLB) *
                                overcommit_ratio / 100 + total_swap

              wobei:

                   *  total_RAM ist der gesamte RAM des Systems

                   *  total_huge_TLB   ist   die  für  große  Speicherseiten  beiseite  gestellte
                      Speichermenge

                   *  overcommit_ratio ist der Wert aus /proc/sys/vm/overcommit_ratio

                   *  total_swap ist die Menge des Auslagerungsbereichs.

              Beispielsweise ergibt diese Formel auf einem System mit 16 GB an physischem RAM, 16
              GB  an Auslagerungsspeicher, keinen für große Speicherseiten gewidmeten Bereich und
              einem overcommit_ratio von 50 ein CommitLimit von 24 GB.

              Falls der Wert in /proc/sys/vm/overcommit_kbytes von  Null  verschieden  ist,  wird
              CommitLimit stattdessen seit Linux 3.14 wie folgt berechnet:

                  CommitLimit = overcommit_kbytes + total_swap

              Siehe    auch   die   Beschreibung   von   /proc/sys/vm/admiin_reserve_kbytes   und
              /proc/sys/vm/user_reserve_kbytes.

       /proc/sys/vm/overcommit_ratio (seit Linux 2.6.0)
              This writable file defines a percentage by which memory can be  overcommitted.  The
              default    value    in    the    file    is    50.    See    the   description   of
              /proc/sys/vm/overcommit_memory.

       /proc/sys/vm/panic_on_oom (seit Linux 2.6.18)
              Dies aktiviert oder deaktiviert eine Kernel Panic bei Speicherknappheit

              Wenn diese Datei auf den Wert 0 gesetzt wird, wird der OOM-Killer des Kernels  sich
              einen  Schurken  schnappen  und liquidieren. Normalerweise findet er ein geeignetes
              Opfer und das System überlebt.

              Wenn diese Datei auf den Wert 1 gesetzt ist, verfällt der  Kernel  in  Panik,  wenn
              Speicherknappheit   eintritt.  Wenn  allerdings  ein  Prozess  die  Zuweisungen  an
              bestimmte  Knoten  mit  Speicherstrategien  (mbind(2)   MPOL_BIND)   oder   Cpusets
              (cpuset(7))  begrenzt  und die Knoten einen Speichererschöpfungs-Zustand erreichen,
              kann ein Prozess vom OOM-Killer getötet werden. In diesem Fall  tritt  keine  Panik
              ein:  Weil  der  Speicher  anderer Knoten noch frei sein kann, muss das System noch
              nicht als ganzes unter Speichermangel leiden.

              Wenn diese Datei schon auf den Wert 2 gesetzt ist, wird bei Speicherknappheit immer
              eine Kernel Panic ausgelöst.

              Der Standardwert ist 0. 1 und 2 sind für die Ausfallsicherung in Clustern bestimmt.
              Wählen Sie den Wert entsprechend ihrer Strategie oder im Sinn der Ausfallsicherung.

       /proc/sys/vm/swappiness
              Der Wert in dieser  Datei  legt  fest,  wie  aggressiv  der  Kernel  Speicherseiten
              auslagert.  Hohe  Werte  machen  ihn  aggressiver, kleinere Werte sanftmütiger. Der
              Standardwert ist 60.

       /proc/sys/vm/user_reserve_kbytes (seit Linux 3.10)
              Specifies an amount of memory (in KiB) to  reserve  for  user  processes,  This  is
              intended to prevent a user from starting a single memory hogging process, such that
              they cannot recover (kill the hog). The value in this file has an effect only  when
              /proc/sys/vm/overcommit_memory is set to 2 ("overcommit never" mode). In this case,
              the system reserves an amount of memory that is  the  minimum  of  [3%  of  current
              process size, user_reserve_kbytes].

              Der  Vorgabewert  in  dieser Datei ist der kleinere Wert aus [3% der freien Seiten,
              128 MiB], ausgedrückt in KiB.

              Falls der Wert in dieser Datei auf Null gesetzt wird, darf ein Benutzer  sämtlichen
              Speicher   durch   einen   einzelnen   Prozess   belegen   (abzüglich   der   durch
              /proc/sys/vm/admin_reserve_kbytes reservierten Menge). Alle nachfolgenden Versuche,
              einen Befehl auszuführen, führen dann zu »fork: Cannot allocate memory«.

              Die  Änderung  des Wertes in dieser Datei tritt in Kraft, wann immer eine Anwendung
              Speicher anfordert.

       /proc/sysrq-trigger (seit Linux 2.4.21)
              Wird ein Zeichen in diese Datei geschrieben, löst das  die  gleiche  SysRq-Funktion
              aus   wie   die   Eingabe  von  ALT-SysRq-<Zeichen>  (siehe  die  Beschreibung  von
              /proc/sys/kernel/sysrq). Normalerweise kann nur  root  in  diese  Datei  schreiben.
              Weitere       Informationen       enthält      die      Linux-Kernel-Quelltextdatei
              Documentation/admin-guide/sysrq.rst (oder Documentation/sysrq.txt vor Linux 4.10).

       /proc/sysvipc
              Dieses Unterverzeichnis enthält die Pseudodateien msg, sem und shm.  Diese  Dateien
              listen    die   aktuell   im   System   befindlichen   System-V-IPC-Objekte   (IPC:
              Interprozess-Kommunikation), also  Nachrichtenschlangen,  Semaphore  und  gemeinsam
              genutzter  Speicher  auf.  Sie  enthalten  ähnliche  Informationen wie die, die mit
              ipcs(1) erhalten werden können. Diese  Zeilen  haben  Kopfzeilen  und  sind  zwecks
              besserer  Verständlichkeit  formatiert  (ein IPC-Objekt pro Zeile). svipc(7) bietet
              weiteren Hintergrund zu den von diesen Dateien bereitgestellten Informationen.

       /proc/thread-self (seit Linux 3.17)
              Dieses Verzeichnis bezieht sich auf  den  Thread,  der  auf  das  /proc-Dateisystem
              zugreift und ist mit dem /proc/self/task/[TID]-Verzeichnis identisch, das als Namen
              die Prozess-Thread-Nummer dieses Threads hat.

       /proc/timer_list (seit Linux 2.6.21)
              Diese nur lesbare Datei enthält in einer Menschen-lesbaren Form  eine  Liste  aller
              derzeit  anhängenden  (hochauflösenden)  Timer, aller Uhrereignis-Quellen und ihrer
              Parameter.

       /proc/timer_stats (von Linux 2.6.21 bis Linux 4.10)
              Dies ist eine Fehlersucheinrichtung, um Timer-(Miss)brauch  in  einem  Linux-System
              für  Kernel-  und Anwendungsentwickler sichtbar zu machen. Sie kann von Kernel- und
              Anwendungsentwicklern verwandt werden, um  zu  überprüfen,  dass  ihr  Code  keinen
              ungebührlichen  Gebrauch  von  Timern  macht.  Das  Ziel  besteht  darin,  unnötige
              Aufwachaktionen zu vermeiden und damit die Leistungsaufnahme zu optimieren.

              Falls im Kernel (CONFIG_TIMER_STATS) aktiviert aber nicht  verwandt,  hat  es  fast
              keinen       Laufzeit-Zusatzaufwand       und       einen      relativ      kleinen
              Datenstruktur-Zusatzaufwand. Selbst falls die Datensammlung zur Laufzeit  aktiviert
              wird,  ist  der  Zusatzaufwand  klein:  Alle  Sperren  erfolgen  pro  CPU  und  das
              Nachschlagen erfolgt über einen Hash.

              Die Datei  /proc/timer_stats  wird  zum  Steuern  der  Abtast-Einrichtung  und  zum
              Auslesen der abgetasteten Informationen verwandt.

              Die  Funktionalität  rtimer_stats  ist beim Systemstart inaktiv. Eine Abtastperiode
              kann mittels des folgenden Befehls gestartet werden:

                  # echo 1 > /proc/timer_stats

              Der folgende Befehl beendet eine Abtastperiode:

                  # echo 0 > /proc/timer_stats

              Die Statistiken können wie folgt ermittelt werden:

                  $ cat /proc/timer_stats

              Während das Abtasten aktiviert ist, wird bei jedem Lesen aus /proc/timer_stats eine
              neu  aktualisierte Statistik gesehen. Sobald das Abtasten deaktiviert ist, wird die
              abgetastete Information beibehalten, bis eine  neue  Abtastperiode  begonnen  wird.
              Dies erlaubt mehrfaches Auslesen.

              Beispielausgabe aus /proc/timer_stats:

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

              Die Ausgabespalten sind wie folgt:

              *  eine  Anzahl  der  Ereignisse,  optional  (seit  Linux  2.6.23)  gefolgt von dem
                 Buchstaben »D«, falls dies ein aufschiebbarer Timer ist;

              *  die PID des Prozesses, die den Timer initialisierte,

              *  der Namen des Prozesses, der den Timer initialisierte,

              *  die Funktion, in der der Timer initalisiert wurde, und

              *  (in Klammern) die Callback-Funktion, die diesem Timer zugeordnet ist.

              Während  des  Linux-4.11-Entwicklungszyklus  wurde   diese   Datei   aufgrund   von
              Sicherheitsbedenken   entfernt,   da  sie  Informationen  über  Namensräume  hinweg
              offenlegt.  Desweiteren  ist  es   möglich,   die   gleichen   Informationen   über
              kernelinterne Nachverfolgungseinrichtungen wie Ftrace zu ermitteln.

       /proc/tty
              Unterverzeichnis  mit  Pseudodateien  und  -Unterverzeichnissen für tty-Treiber und
              »line disciplines«.

       /proc/uptime
              Diese Datei enthält zwei Zahlen: die Laufzeit des Systems  (in  Sekunden)  und  die
              Dauer, die im Leerlaufprozess verbracht wurde (in Sekunden).

       /proc/version
              Diese  Zeichenkette identifiziert den gerade laufenden Kernel. Er fasst die Inhalte
              von         /proc/sys/kernel/ostype,         /proc/sys/kernel/osrelease         und
              /proc/sys/kernel/version zusammen. Beispielsweise:

        Linux version 1.0.9 (quinlan@phaze) #1 Sat May 14 01:51:54 EDT 1994

       /proc/vmstat (seit Linux 2.6.0)
              Die  Datei  zeigt  verschiedene  Statistiken  des  virtuellen Speichers. Jede Zeile
              dieser Datei enthält ein  einzelnes  Name-Wert-Paar,  getrennt  durch  Leerzeichen.
              Einige  Zeilen  sind  nur  vorhanden,  falls  der  Kernel  mit  geeigneten Optionen
              konfiguriert wurde. (In einigen  Fällen  haben  sich  die  Optionen  für  bestimmte
              Dateien  über  Kernelversionen  hinweg  geändert, so dass sie hier nicht aufgeführt
              sind. Details können durch Einsicht in den Kernelquellcode  gefunden  werden.)  Die
              folgenden Felder können vorhanden sein:

              nr_free_pages (seit Linux 2.6.31)

              nr_alloc_batch (seit Linux 3.12)

              nr_inactive_anon (seit Linux 2.6.28)

              nr_active_anon (seit Linux 2.6.28)

              nr_inactive_file (seit Linux 2.6.28)

              nr_active_file (seit Linux 2.6.28)

              nr_unevictable (seit Linux 2.6.28)

              nr_mlock (seit Linux 2.6.28)

              nr_anon_pages (seit Linux 2.6.18)

              nr_mapped (seit Linux 2.6.0)

              nr_file_pages (seit Linux 2.6.18)

              nr_dirty (seit Linux 2.6.0)

              nr_writeback (seit Linux 2.6.0)

              nr_slab_reclaimable (seit Linux 2.6.19)

              nr_slab_unreclaimable (seit Linux 2.6.19)

              nr_page_table_pages (seit Linux 2.6.0)

              nr_kernel_stack (seit Linux 2.6.32)
                     Teil des Speichers, der Kernel-Stacks zugewiesen wurde.

              nr_unstable (seit Linux 2.6.0)

              nr_bounce (seit Linux 2.6.12)

              nr_vmscan_write (seit Linux 2.6.19)

              nr_vmscan_immediate_reclaim (seit Linux 3.2)

              nr_writeback_temp (seit Linux 2.6.26)

              nr_isolated_anon (seit Linux 2.6.32)

              nr_isolated_file (seit Linux 2.6.32)

              nr_shmem (seit Linux 2.6.32)
                     Durch Shmem und tmpfs(5) verwandte Seiten

              nr_dirtied (seit Linux 2.6.37)

              nr_written (seit Linux 2.6.37)

              nr_pages_scanned (seit Linux 3.17)

              numa_hit (seit Linux 2.6.18)

              numa_miss (seit Linux 2.6.18)

              numa_foreign (seit Linux 2.6.18)

              numa_interleave (seit Linux 2.6.18)

              numa_local (seit Linux 2.6.18)

              numa_other (seit Linux 2.6.18)

              workingset_refault (seit Linux 3.15)

              workingset_activate (seit Linux 3.15)

              workingset_nodereclaim (seit Linux 3.15)

              nr_anon_transparent_hugepages (seit Linux 2.6.38)

              nr_free_cma (seit Linux 3.7)
                     Number of free CMA (Contiguous Memory Allocator) pages.

              nr_dirty_threshold (seit Linux 2.6.37)

              nr_dirty_background_threshold (seit Linux 2.6.37)

              pgpgin (seit Linux 2.6.0)

              pgpgout (seit Linux 2.6.0)

              pswpin (seit Linux 2.6.0)

              pswpout (seit Linux 2.6.0)

              pgalloc_dma (seit Linux 2.6.5)

              pgalloc_dma32 (seit Linux 2.6.16)

              pgalloc_normal (seit Linux 2.6.5)

              pgalloc_high (seit Linux 2.6.5)

              pgalloc_movable (seit Linux 2.6.23)

              pgfree (seit Linux 2.6.0)

              pgactivate (seit Linux 2.6.0)

              pgdeactivate (seit Linux 2.6.0)

              pgfault (seit Linux 2.6.0)

              pgmajfault (seit Linux 2.6.0)

              pgrefill_dma (seit Linux 2.6.5)

              pgrefill_dma32 (seit Linux 2.6.16)

              pgrefill_normal (seit Linux 2.6.5)

              pgrefill_high (seit Linux 2.6.5)

              pgrefill_movable (seit Linux 2.6.23)

              pgsteal_kswapd_dma (seit Linux 3.4)

              pgsteal_kswapd_dma32 (seit Linux 3.4)

              pgsteal_kswapd_normal (seit Linux 3.4)

              pgsteal_kswapd_high (seit Linux 3.4)

              pgsteal_kswapd_movable (seit Linux 3.4)

              pgsteal_direct_dma

              pgsteal_direct_dma32 (seit Linux 3.4)

              pgsteal_direct_normal (seit Linux 3.4)

              pgsteal_direct_high (seit Linux 3.4)

              pgsteal_direct_movable (seit Linux 2.6.23)

              pgscan_kswapd_dma

              pgscan_kswapd_dma32 (seit Linux 2.6.16)

              pgscan_kswapd_normal (seit Linux 2.6.5)

              pgscan_kswapd_high

              pgscan_kswapd_movable (seit Linux 2.6.23)

              pgscan_direct_dma

              pgscan_direct_dma32 (seit Linux 2.6.16)

              pgscan_direct_normal

              pgscan_direct_high

              pgscan_direct_movable (seit Linux 2.6.23)

              pgscan_direct_throttle (seit Linux 3.6)

              zone_reclaim_failed (seit Linux 2.6.31)

              pginodesteal (seit Linux 2.6.0)

              slabs_scanned (seit Linux 2.6.5)

              kswapd_inodesteal (seit Linux 2.6.0)

              kswapd_low_wmark_hit_quickly (seit 2.6.33)

              kswapd_high_wmark_hit_quickly (seit 2.6.33)

              pageoutrun (seit Linux 2.6.0)

              allocstall (seit Linux 2.6.0)

              pgrotated (seit Linux 2.6.0)

              drop_pagecache (seit Linux 3.15)

              drop_slab (seit Linux 3.15)

              numa_pte_updates (seit Linux 3.8)

              numa_huge_pte_updates (seit Linux 3.13)

              numa_hint_faults (seit Linux 3.8)

              numa_hint_faults_local (seit Linux 3.8)

              numa_pages_migrated (seit Linux 3.8)

              pgmigrate_success (seit Linux 3.8)

              pgmigrate_fail (seit Linux 3.8)

              compact_migrate_scanned (seit Linux 3.8)

              compact_free_scanned (seit Linux 3.8)

              compact_isolated (seit Linux 3.8)

              compact_stall (seit Linux 2.6.35)
                     Siehe die Kernel-Quelldatei Documentation/vm/transhuge.txt.

              compact_fail (seit Linux 2.6.35)
                     Siehe die Kernel-Quelldatei Documentation/vm/transhuge.txt.

              compact_success (seit Linux 2.6.35)
                     Siehe die Kernel-Quelldatei Documentation/vm/transhuge.txt.

              htlb_buddy_alloc_success (seit Linux 2.6.26)

              htlb_buddy_alloc_fail (seit Linux 2.6.26)

              unevictable_pgs_culled (seit Linux 2.6.28)

              unevictable_pgs_scanned (seit Linux 2.6.28)

              unevictable_pgs_rescued (seit Linux 2.6.28)

              unevictable_pgs_mlocked (seit Linux 2.6.28)

              unevictable_pgs_munlocked (seit Linux 2.6.28)

              unevictable_pgs_cleared (seit Linux 2.6.28)

              unevictable_pgs_stranded (seit Linux 2.6.28)

              thp_fault_alloc (seit Linux 2.6.39)
                     Siehe die Kernel-Quelldatei Documentation/vm/transhuge.txt.

              thp_fault_fallback (seit Linux 2.6.39)
                     Siehe die Kernel-Quelldatei Documentation/vm/transhuge.txt.

              thp_collapse_alloc (seit Linux 2.6.39)
                     Siehe die Kernel-Quelldatei Documentation/vm/transhuge.txt.

              thp_collapse_alloc_failed (seit Linux 2.6.39)
                     Siehe die Kernel-Quelldatei Documentation/vm/transhuge.txt.

              thp_split (seit Linux 2.6.39)
                     Siehe die Kernel-Quelldatei Documentation/vm/transhuge.txt.

              thp_zero_page_alloc (seit Linux 3.8)
                     Siehe die Kernel-Quelldatei Documentation/vm/transhuge.txt.

              thp_zero_page_alloc_failed (seit Linux 3.8)
                     Siehe die Kernel-Quelldatei Documentation/vm/transhuge.txt.

              balloon_inflate (seit Linux 3.18)

              balloon_deflate (seit Linux 3.18)

              balloon_migrate (seit Linux 3.18)

              nr_tlb_remote_flush (seit Linux 3.12)

              nr_tlb_remote_flush_received (seit Linux 3.12)

              nr_tlb_local_flush_all (seit Linux 3.12)

              nr_tlb_local_flush_one (seit Linux 3.12)

              vmacache_find_calls (seit Linux 3.16)

              vmacache_find_hits (seit Linux 3.16)

              vmacache_full_flushes (seit Linux 3.19)

       /proc/zoneinfo (since Linux 2.6.13)
              Diese  Datei  enthält Informationen über Speicherbereiche. Sie ist nützlich für die
              Analyse des Verhaltens des virtuellen Speichers.

ANMERKUNGEN

       Viele Zeichenketten (z. B. die Umgebung und die  Befehlszeile)  sind  im  internen  Format
       dargestellt,   Unterfelder  werden  mit  Null-Bytes  ('\0')  begrenzt.  Sie  werden  diese
       vielleicht besser lesbar finden, wenn Sie od -c oder tr "\000" "\n"  benutzen.  Alternativ
       erhalten Sie mit echo `cat <file>` gute Ergebnisse.

       Diese  Handbuchseite  ist  unvollständig,  möglicherweise  stellenweise  ungenau  und  ein
       Beispiel für etwas, das ständig überarbeitet werden muss.

SIEHE AUCH

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

       Die              Linux-Kernelquelldateien:              Documentation/filesystems/proc.txt
       Documentation/sysctl/fs.txt, Documentation/sysctl/kernel.txt, Documentation/sysctl/net.txt
       und Documentation/sysctl/vm.txt.

KOLOPHON

       Diese  Seite  ist  Teil  der  Veröffentlichung  4.16  des  Projekts  Linux-man-pages. Eine
       Beschreibung des Projekts, Informationen, wie Fehler  gemeldet  werden  können  sowie  die
       aktuelle Version dieser Seite finden sich unter https://www.kernel.org/doc/man-pages/.

ÜBERSETZUNG

       Die  deutsche  Übersetzung  dieser  Handbuchseite  wurde  von FIXME: Review translation of
       "allocate", FIXME: Übersetzung von overcommit prüfen und vereinheitlichen, Martin Eberhard
       Schauer  <Martin.E.Schauer@gmx.de>,  Dr.  Tobias Quathamer <toddy@debian.org>, Chris Leick
       <c.leick@vollbio.de>,  Erik  Pfannenstein  <debianignatz@gmx.de>  und   Helge   Kreutzmann
       <debian@helgefjell.de> erstellt.

       Diese  Übersetzung  ist  Freie  Dokumentation;  lesen  Sie  die GNU General Public License
       Version  3  oder  neuer  bezüglich  der  Copyright-Bedingungen.  Es  wird  KEINE   HAFTUNG
       übernommen.

       Wenn Sie Fehler in der Übersetzung dieser Handbuchseite finden, schicken Sie bitte eine E-
       Mail an <debian-l10n-german@lists.debian.org>.