proc

PROC(5)                 PodrÄcznik programisty Linuksa                 PROC(5)



NAZWA
       proc - pseudosystem plików z informacjami o procesach

OPIS
       proc jest pseudosystemem plików, który udostÄpnia interfejs do
       struktur danych jÄdra. Zazwyczaj jest montowany w katalogu /proc. Jest
       on w wiÄkszoÅci przeznaczony tylko do odczytu, lecz niektóre pliki
       umożliwiajÄ modyfikacje zmiennych jÄdra.

   Opcje montowania
       System plików proc obsÅuguje nastÄpujÄce opcje montowania:

       hidepid=n (od Linuksa 3.3)
              Opcja kontroluje kto może uzyskaÄ dostÄp do informacji w
              katalogach /proc/[pid]. Argument n przyjmuje jednÄ z
              nastÄpujÄcych wartoÅci:

              0   Wszyscy majÄ dostÄp do katalogów /proc/[pid]. Jest to
                  tradycyjne zachowanie i domyÅlne, jeÅli nie użyje siÄ tej
                  opcji montowania.

              1   Użytkownicy nie mogÄ uzyskaÄ dostÄpu do plików i
                  podkatalogów w katalogach /proc/[pid] innych niż ich
                  wÅasne (same katalogi /proc/[pid] pozostajÄ widoczne).
                  Wrażliwe pliki, takie jak /proc/[pid]/cmdline i
                  /proc/[pid]/status sÄ chronione przed innymi użytkownikami.
                  DziÄki temu niemożliwe staje siÄ dowiedzenie siÄ, czy jakiÅ
                  użytkownik uruchomiÅ konkretny program (tak dÅugo, jak sam
                  program nie ujawnia tego swoim zachowaniem).

              2   Jak w trybie 1, lecz dodatkowo katalogi /proc/[pid]
                  przynależne innym użytkownikom pozostajÄ niewidoczne.
                  Oznacza to, że wpisy /proc/[pid] nie mogÄ dÅużej sÅużyÄ
                  do poznania PID-ów w systemie. Nie ukrywa to faktu, że
                  proces o okreÅlonym PID istnieje (można siÄ tego dowiedzieÄ
                  innymi sposobami, np. poprzez "kill -0 $PID"), ale ukrywa
                  UID i GID procesu, które w innym przypadku można by byÅo
                  poznaÄ wykonujÄc stat(2) na katalogu /proc/[pid]. To
                  znacznie utrudnia zadanie atakujÄcego polegajÄce na
                  pozyskaniu informacji o dziaÅajÄcych procesach (np. odkrycie
                  czy jakiÅ demon dziaÅa z wiÄkszymi uprawnieniami, czy jakiÅ
                  użytkownik ma uruchomiony jakiŠwrażliwy program, czy inni
                  użytkownicy w ogóle majÄ coÅ uruchomione itd.).

       gid=gid (od Linuksa 3.3)
              OkreÅla ID grupy, której czÅonkowie sÄ uprawnieni do dostÄpu do
              informacji zablokowanych innym przez hidepid (tzn. użytkownicy
              w tej grupie zachowujÄ siÄ tak, jakby /proc zostaÅo zamontowane
              z hidepid=0). Powinno siÄ używaÄ tej grupy, zamiast innych
              rozwiÄzaÅ, takich jak umieszczanie użytkowników nie-root w
              pliku sudoers(5).

   Pliki i katalogi
       Poniższa lista opisuje wiele plików i katalogów w hierarchii /proc.

       /proc/[pid]
              Każdemu dziaÅajÄcemu procesowi odpowiada katalog o numerycznej
              nazwie; nazwÄ tÄ jest identyfikator procesu. Każdy z tych
              katalogów zawiera nastÄpujÄce pseudopliki i podkatalogi:

       /proc/[pid]/attr
              Pliki w tym katalogu udostÄpniajÄ API do moduÅów
              bezpieczeÅstwa. ZawartoÅciÄ katalogu sÄ pliki, które mogÄ byÄ
              odczytywane i zapisywane, aby ustawiÄ atrybuty zwiÄzane z
              bezpieczeÅstwem. Ten katalog zostaÅ dodany do obsÅugi SELinux,
              ale intencjÄ byÅo to, aby API byÅo na tyle ogóle, aby
              obsÅugiwaÄ również inne moduÅy bezpieczeÅstwa. Dla
              wyjaÅnienia, poniżej przedstawiono przykÅady jak SELinux używa
              tych plików.

              Obecne tylko, jeÅli jÄdro zostaÅo skonfigurowane z
              CONFIG_SECURITY.

       /proc/[pid]/attr/current (od Linuksa 2.6.0)
              ZawartoÅÄ tego pliku reprezentuje aktualne atrybuty
              bezpieczeÅstwa procesu.

              W SELinuksie plik ten sÅuży do pozyskania kontekstu
              bezpieczeÅstwa procesu. Do Linuksa 2.6.11 plik nie mógÅ sÅużyÄ
              do ustawienia kontekstu bezpieczeÅstwa (zapis byÅ zawsze
              zabroniony), odkÄd SELinux ograniczyÄ przejÅcia bezpieczeÅstwa
              procesu do execve(2) (zob. opis /proc/[pid]/attr/exec,
              poniżej). Od Linuksa 2.6.11 SELinux poluzowaŠto ograniczenie i
              zaczÄÅ obsÅugiwaÄ operacje "ustawiania" poprzez zapis do tego
              wÄzÅa, jeÅli jest on autoryzowany przez politykÄ, choÄ użycie
              tej operacji jest odpowiednie jedynie dla aplikacji zaufanych do
              zarzÄdzania pożÄdanÄ separacjÄ pomiÄdzy starymi a nowymi
              kontekstami bezpieczeÅstwa. Do Linuksa 2.6.28 SELinux nie
              pozwalaÅ wÄtkom z wielowÄtkowych procesów na ustawienie ich
              kontekstu bezpieczeÅstwa poprzez ten wÄzeÅ, jeÅli mogÅo to
              doprowadziÄ do niespójnoÅci wÅród kontekstów bezpieczeÅstwa
              wÄtków dzielÄcych tÄ samÄ przestrzeÅ pamiÄci. Od Linuksa 2.6.28
              SELinux poluzowaÅ to ograniczenie i rozpoczÄÅ obsÅugiwanie
              operacji "ustawiania" dla wÄtków procesów wielowÄtkowych,
              jeÅli ich nowy kontekst bezpieczeÅstwa jest powiÄzana ze starym
              kontekstem bezpieczeÅstwa, gdzie relacja powiÄzania jest
              zdefiniowana w polityce i gwarantuje, że nowy kontekst
              bezpieczeÅstwa ma podzbiór uprawnieÅ starego kontekstu
              bezpieczeÅstwa. Inne moduÅy bezpieczeÅstwa mogÄ wybraÄ aby
              obsÅugiwaÄ operacje "ustawiania" poprzez zapis do tego wÄzÅa.

       /proc/[pid]/attr/exec (od Linuksa 2.6.0)
              Ten plik reprezentuje atrybuty przypisane do procesu przez
              kolejne execve(2).

              W SELinuksie jest to potrzebne do obsÅugi przejÅÄ roli/domeny, a
              execve(2) jest preferowanym punktem do takich przeksztaÅceÅ,
              ponieważ oferuje on lepszÄ kontrolÄ nad inicjalizacjÄ procesu w
              nowej etykiecie bezpieczeÅstwa i nienaruszalnoÅci stanu. W
              SELinuksie ten atrybut jest resetowany przy execve(2), tak wiÄc
              nowy program powraca do domyÅlnego zachowania przy każdym
              wywoÅaniu execve(2) jakie może utworzyÄ. W SELinuksie proces
              może ustawiÄ tylko swój atrybut /proc/[pid]/attr/exec.

       /proc/[pid]/attr/fscreate (od Linuksa 2.6.0)
              Plik ten reprezentuje atrybuty do przypisania do plików
              utworzone przez kolejne wywoÅania do open(2), mkdir(2),
              symlink(2) i mknod(2)

              SELinux wykorzystuje ten plik do obsÅugi tworzenia pliku (za
              pomocÄ wspomnianych wczeÅniej wywoÅaÅ systemowych) w stanie
              bezpieczeÅstwa, co nie daje ryzyka niepoprawnego dostÄpu
              uzyskanego podczas tworzenia pliku i ustawiania atrybutów. W
              SELinuksie atrybut ten jest resetowany przy execve(2), tak wiÄc
              nowy program powraca do domyÅlnego zachowania przy każdym
              wywoÅaniu tworzÄcym plik jakie może on wykonaÄ, ale atrybut
              jest zachowywany podczas wielu wywoÅaÅ tworzÄcych plik przez
              jeden program, chyba że jest jawnie resetowany. W SELinuksie
              proces może ustawiÄ tylko swój atrybut
              /proc/[pid]/attr/fscreate.

       /proc/[pid]/attr/prev (od Linuksa 2.6.0)
              Plik ten zawiera kontekst bezpieczeÅstwa procesu przed ostatnim
              execve(2); tj. poprzedniÄ wartoÅÄ /proc/[pid]/attr/current.

       /proc/[pid]/attr/keycreate (od Linuksa 2.6.18)
              JeÅli proces zapisuje kontekst bezpieczeÅstwa do tego pliku,
              wszystkie kolejno utworzone klucze (add_key(2)) bÄdÄ oznaczone
              tym kontekstem. WiÄcej informacji znajduje siÄ w pliku źródeÅ
              jÄdra Documentation/keys.txt.

       /proc/[pid]/attr/socketcreate (od Linuksa 2.6.18)
              JeÅli proces zapisuje kontekst bezpieczeÅstwa do tego pliku,
              wszystkie kolejno utworzone gniazda bÄdÄ oznaczone tym
              kontekstem.

       /proc/[pid]/auxv (od wersji jÄdra 2.6.0-test7)
              ZawartoÅÄ informacji ELF przekazanej do procesu podczas
              uruchomienia. Formatem jest jeden identyfikator w postaci
              unsigned long plus jedna wartoÅÄ unsigned long dla każdego
              wpisu. Ostatni wpis zawiera dwa zera. Zob. też getauxval(3).

       /proc/[pid]/cgroup (od Linuksa 2.6.24)
              Plik opisuje grupy kontrolne do których należy proces/zadanie.
              W każdej hierarchi cgroup istnieje jeden wpis zawierajÄcy pola
              oddzielone dwukropkiem w postaci:

                  5:cpuacct,cpu,cpuset:/daemons

              Pola oddzielone dwukropkiem, od lewej do prawej:

                  1. numer identyfikacyjny hierarchii

                  2. zestaw podsystemów ograniczony do hierarchi

                  3. grupa kontrolna w hierarchii do której należy proces

              Ten plik istnieje tylko jeÅli podczas kompilacji jÄdra wÅÄczono
              opcjÄ CONFIG_CGROUPS.

       /proc/[pid]/clear_refs (od Linuksa 2.6.22)

              Plik jest tylko do odczytu, zapisywalny wyÅÄcznie dla
              wÅaÅciciela procesu.

              Do pliku można zapisaÄ nastÄpujÄce wartoÅci:

              1 (od Linuksa 2.6.22)
                     Resetuje bity PG_Referenced i ACCESSED/YOUNG dla
                     wszystkich stron zwiÄzanych z procesem (przed jÄdrem
                     2.6.32 taki efekt powodowaÅo zapisanie dowolnej wartoÅci
                     niezerowej).

              2 (od Linuksa 2.6.32)
                     Resetuje bity PG_Referenced i ACCESSED/YOUNG dla
                     wszystkich stron anonimowych zwiÄzanych z procesem.

              3 (od Linuksa 2.6.32)
                     Resetuje bity PG_Referenced i ACCESSED/YOUNG dla
                     wszystkich stron przypisanych do plików, zwiÄzanych z
                     procesem.

              Czyszczenie bitów PG_Referenced i ACCESSED/YOUNG zapewnia
              metodÄ zmierzenia przybliżonej wartoÅci pamiÄci używanej przez
              proces. Najpierw należy sprawdziÄ wartoÅÄ w polu "Referenced"
              dla wartoÅci VMA pokazanych w /proc/[pid]/smaps aby sprawdziÄ
              użycie pamiÄci przez proces. NastÄpnie czyÅci siÄ bity
              PG_Referenced i ACCESSED/YOUNG i po jakimÅ zmierzonym czasie
              ponownie sprawdza siÄ wartoÅci pól "Referenced" aby dowiedzieÄ
              siÄ jak zmieniÅo siÄ użycie pamiÄci procesu podczas zmierzonego
              interwaÅu. JeÅli jest siÄ zainteresowanym wyÅÄcznie pewnymi
              typami przypisania, można skorzystaÄ z wartoÅci 2 lub 3,
              zamiast 1.

              Aby zmieniÄ inny bit można zapisaÄ również innÄ wartoÅÄ:

              4 (od Linuksa 3.11)
                     CzyÅci bit soft-dirty dla wszystkich stron zwiÄzanych z
                     procesem. Używa siÄ tego (razem z /proc/[pid]/pagemap)
                     przez system przywracania check-point do wykrycia które
                     strony procesu zostaÅy "zabrudzone" od czasu zapisu do
                     pliku /proc/[pid]/clear_refs.

              Zapis innej wartoÅci niż wypisane powyżej do
              /proc/[pid]/clear_refs nie daje żadnego efektu.

              Plik /proc/[pid]/clear_refs istnieje tylko jeÅli podczas
              kompilacji jÄdra wÅÄczono opcjÄ CONFIG_PROC_PAGE_MONITOR.

       /proc/[pid]/cmdline
              Ten plik tylko do odczytu zawiera peÅnÄ liniÄ polecenia wydanego
              przy uruchamianiu procesu, chyba że jest to proces-duch
              (zombie). Wówczas plik bÄdzie pusty, tzn. odczyt tego pliku
              zwróci zawsze 0 znaków. Argumenty linii poleceÅ wystÄpujÄ w
              tym pliku rozdzielone znakami NUL ('\0'), z dodatkowym znakiem
              NUL po ostatnim ÅaÅcuchu.

       /proc/[pid]/comm (od Linuksa 2.6.33)
              Plik pokazuje wartoÅÄ comm procesu—tj. nazwÄ polecenia zwiÄzanÄ
              z procesem. Różne wÄtki tego samego procesu mogÄ mieÄ różne
              wartoÅci comm, dostÄpne za pomocÄ /proc/[pid]/task/[tid]/comm.
              WÄtek może zmodyfikowaÄ jego wartoÅÄ comm lub tÄ innego wÄtku z
              tej samej grupy wÄtków (zob. opis CLONE_THREAD w clone(2)),
              piszÄc do pliku /proc/self/task/[tid]/comm. ÅaÅcuchy dÅuższe
              niż TASK_COMM_LEN (16) znaków sÄ po cichu obcinane.

              Plik zapewnia zestaw operacji PR_SET_NAME i PR_GET_NAME prctl(2)
              i jest używany przez pthread_setname_np(3), przy zmianie nazw
              wÄtków innych niż wywoÅujÄcy.

       /proc/[pid]/coredump_filter (od Linuksa 2.6.23)
              Patrz core(5).

       /proc/[pid]/cpuset (od Linuksa 2.6.12)
              Patrz cpuset(7).

       /proc/[pid]/cwd
              Jest dowiÄzaniem do bieżÄcego katalogu roboczego procesu. Aby
              dowiedzieÄ siÄ, jaki jest katalog roboczy procesu, na przykÅad o
              identyfikatorze 20, można wydaÄ nastÄpujÄce polecenie:

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

              Należy zauważyÄ, że polecenie pwd jest czÄsto wbudowanym
              poleceniem powÅoki i może nie dziaÅaÄ w tym kontekÅcie w
              sposób wÅaÅciwy. W powÅoce bash(1) można użyÄ pwd -P.

              W procesie wielowÄtkowym zawartoÅÄ tego linku symbolicznego nie
              jest dostÄpna, jeżeli wÄtek gÅówny już siÄ zakoÅczyÅ
              (zazwyczaj przez wywoÅanie pthread_exit(3)).

       /proc/[pid]/environ
              Plik ten zawiera Årodowisko procesu. Wpisy sÄ oddzielone znakami
              NULL ("\0"), mogÄ także wystÄpiÄ znaki NULL na koÅcu. Dlatego,
              aby wypisaÄ zmienne Årodowiskowe procesu 1, należy wykonaÄ:

                  $ strings /proc/1/environ

       /proc/[pid]/exe
              W Linuksie 2.2 i wersjach późniejszych plik ten jest
              dowiÄzaniem symbolicznym zawierajÄcym rzeczywistÄ nazwÄ Åcieżki
              dziaÅajÄcego polecenia. DowiÄzaniem symbolicznym można siÄ
              normalnie posÅugiwaÄ - próba jego otwarcia otworzy plik
              programu. Można nawet wydaÄ polecenie /proc/[pid]/exe, aby
              uruchomiÄ kolejnÄ kopiÄ tego samego pliku wykonywalnego, co
              uruchomiony przez [pid]. JeÅli Åcieżka zostaÅa odlinkowana,
              dowiÄzanie symboliczne bÄdzie zawieraÅo ÅaÅcuch '(deleted)'
              dodany do oryginalnej Åcieżki. W procesie wielowÄtkowym
              zawartoÅÄ tego linku symbolicznego nie jest dostÄpna, jeżeli
              gÅówny wÄtek już siÄ zakoÅczyÅ (wywoÅujÄc zapewne
              pthread_exit(3)).

              W Linuksie 2.0 i wczeÅniejszych wersjach, /proc/[pid]/exe jest
              wskaźnikiem do uruchomionego pliku binarnego i ma postaÄ
              dowiÄzania symbolicznego. WywoÅanie readlink(2) na tym pliku
              zwróci w Linuksie 2.0 ÅaÅcuch znakowy postaci:

                  [urzÄdzenie]:i-wÄzeÅ

              Na przykÅad, [0301]:1502 bÄdzie 1502 i-wÄzÅem na urzÄdzeniu o
              numerze gÅównym 03 (IDE, MFM itp.) i pobocznym 01 (pierwsza
              partycja pierwszego dysku).

              Do zlokalizowania pliku, można posÅużyÄ siÄ poleceniem find(1)
              z opcjÄ -inum.

       /proc/[pid]/fd/
              Jest to podkatalog zawierajÄcy po jednym wpisie dla każdego
              otwartego przez proces pliku; nazwÄ tego wpisu jest deskryptor
              pliku i jest on dowiÄzaniem symbolicznym do rzeczywistego pliku.
              Dlatego 0 jest standardowym wejÅciem, 1 jest standardowym
              wyjÅciem, 2 jest standardowÄ diagnostykÄ, itd.

              W przypadku deskryptorów plików potoków gniazd wpisy bÄdÄ
              dowiÄzaniami symbolicznymi, których zawartoÅciÄ jest typ pliku
              z i-wÄzÅem. WywoÅanie readlink(2) na takim pliku zwróci ciÄg w
              postaci:

                  typ:[i-wÄzeÅ]

              PrzykÅadowo socket:[2248868] bÄdzie gniazdem z i-wÄzÅem
              2248868. W przypadku gniazd, i-wÄzeÅ można wykorzystaÄ do
              pozyskania wiÄkszej liczby informacji z jednego z plików z
              katalogu /proc/net/.

              W przypadku deskryptorów plików, które nie majÄ
              odpowiadajÄcego i-wÄzÅa (np. deskryptorów plików tworzonych za
              pomocÄ epoll_create(2), eventfd(2), inotify_init (2),
              signalfd(2) i timerfd(2)), wpis bÄdzie dowiÄzaniem symbolicznym
              z zawartoÅciÄ w postaci

                  anon_inode:<typ-pliku>

              W niektórych przypadkach typ-pliku jest otoczony nawiasami
              kwadratowymi.

              PrzykÅadowo dowiÄzanie symboliczne deskryptora pliku epoll
              bÄdzie dowiÄzaniem symbolicznym, którego zawartoÅciÄ jest
              ÅaÅcuch anon_inode:[eventpoll].

              W procesie wielowÄtkowym zawartoÅÄ tego katalogu nie jest
              dostÄpna, jeżeli wÄtek gÅówny już siÄ zakoÅczyÅ (zazwyczaj
              przez wywoÅanie pthread_exit(3)).

              Programy, które przyjmujÄ nazwÄ pliku jako argument wiersza
              polecenia, lecz nie czytajÄ standardowego wejÅcia, jeÅli nie
              podano argumentu albo które zapisujÄ do pliku nazwanego
              argumentem wiersza polecenia, lecz nie wysyÅajÄ danych
              wyjÅciowych na standardowe wyjÅcie, można zmusiÄ do używania
              standardowego wejÅcia lub wyjÅcia wykorzystujÄc /proc/[pid]/fd.
              Na przykÅad, zakÅadajÄc, że opcja -i okreÅla plik wejÅciowy, a
              opcja -o okreÅla plik wyjÅciowy:

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

              co daje dziaÅajÄcy filtr.

              /proc/self/fd/N jest w przybliżeniu tym samym co /dev/fd/N na
              niektórych systemach uniksowych i uniksopodobnych. WiÄkszoÅÄ
              linuksowych skryptów MAKEDEV tworzy dowiÄzania symboliczne
              /dev/fd do /proc/self/fd.

              WiÄkszoÅÄ systemów udostÄpnia dowiÄzania symboliczne
              /dev/stdin, /dev/stdout i dev/stderr, które linkujÄ odpowiednio
              do plików 0, 1 i 2 w /proc/self/fd. Powyższe, przykÅadowe
              polecenie może byÄ wiÄc zapisane również tak:

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

       /proc/[pid]/fdinfo/ (od Linuksa 2.6.22)
              Jest to podkatalog zawierajÄcy po jednym wpisie dla każdego
              pliku otwartego przez proces; nazwÄ tego wpisu jest deskryptor
              pliku. Pliki w tym katalogu sÄ odczytywalne tylko dla
              wÅaÅciciela procesu. ZawartoÅÄ pliku można odczytaÄ, aby
              uzyskaÄ informacje o odpowiadajÄcym mu deskryptorze pliku.
              ZawartoÅÄ zależy od typu pliku odpowiadajÄcego odpowiedniemu
              deskryptorowi pliku.

              Dla zwykÅych plików i katalogów wyglÄda to zwykle tak:

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

              WystÄpujÄ nastÄpujÄce pola:

              pos    Jest to liczba dziesiÄtna pokazujÄca przesuniÄcie pliku.

              flags  Jest to liczba ósemkowa wyÅwietlajÄca tryb dostÄpu pliku
                     i flagi statusu pliku (zob. open(2)). JEÅli ustawiona
                     jest flaga deskryptora pliku close-on-exec, to flags
                     bÄdzie zawieraÅo również wartoÅÄ O_CLOEXEC.

                     Przed Linuksem 3.1 to pole nieprawidÅowo wyÅwietlaÅo
                     ustawienie O_CLOEXEC w trakcie otwierania pliku, zamiast
                     aktualnego ustawienia flagi close-on-exec.

              mnt_id To pole, obecne od Linuksa 3.15 jest identyfikatorem
                     punktu montowania zawierajÄcego ten plik. Zob. opis
                     /proc/[pid]/mountinfo.

              Dla deskryptorów plików eventfd (zob. eventfd(2)), wyÅwietlane
              sÄ (od Linuksa 3.8) nastÄpujÄce pola:

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

              eventfd-count jest bieżÄcÄ wartoÅciÄ licznika eventfd,
              szesnastkowo.

              Dla deskryptorów plików epoll (zob. epoll(7)), wyÅwietlane sÄ
              (od Linuksa 3.8) nastÄpujÄce pola:

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

              Każdy wiersz zaczynajÄcy siÄ od tfd opisuje jeden z
              deskryptorów pliku monitorowany za pomocÄ deskryptora pliku
              epool (zob. epoll_ctl(2) aby zapoznaÄ siÄ z niektórymi
              szczegóÅami). Pole tfd jest numerem deskryptora pliku. Pole
              events jest szesnastkowÄ maskÄ zdarzeÅ monitorowanych dla tego
              deskryptora pliku. Pole data jest wartoÅciÄ danych powiÄzanych z
              tym deskryptorem pliku.

              Dla deskryptorów plików signalfd (zob. signalfd(2)),
              wyÅwietlane sÄ (od Linuksa 3.8) nastÄpujÄce pola:

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

              sigmask jest szesnastkowÄ maskÄ sygnaÅów akceptowanych poprzez
              ten deskryptor pliku signalfd (w tym przykÅadzie ustawione sÄ
              bity 2 i 3 odpowiadajÄce sygnaÅom SIGINT i SIGQUIT; zob.
              signal(7)).

              Dla deskryptorów plików inotify (zob. inotify(7)), wyÅwietlane
              sÄ (od Linuksa 3.8) nastÄpujÄce pola:

                  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

              Każdy z wierszy zaczynajÄcy siÄ od "inotify" wyÅwietla
              informacje o jednym z monitorowanych plików lub katalogów. W
              wierszu wystÄpujÄ nastÄpujÄce pola:

              wd     Numer obserwowanego deskryptora (dziesiÄtnie). (od ang.
                     watch descriptor)

              ino    Numer i-wÄzÅa pliku docelowego (szesnastkowo).

              sdev   ID urzÄdzenia, na którym znajduje siÄ plik docelowy
                     (szesnastkowo).

              mask   Maska monitorowanych zdarzeÅ pliku docelowego
                     (szesnastkowo).

              JeÅli jÄdro zbudowano z obsÅugÄ exportfs, Åcieżka do pliku
              docelowego jest wyÅwietlona jako uchwyt pliku, przez trzy pola
              szesnastkowe: fhandle-bytes, fhandle-type i f_handle.

              Dla deskryptorów plików fanotify (zob. fanotify(7)),
              wyÅwietlane sÄ (od Linuksa 3.8) nastÄpujÄce pola:

                  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

              Czwarty wiersz wyÅwietla informacje zdefiniowane przy tworzeniu
              grupy fanotify poprzez fanotify_init(2):

              flags  Argument flags podany fanotify_init(2) (wyrażony
                     szesnastkowo).

              event-flags
                     Argument event_f_flags podany fanotify_init(2) (wyrażony
                     szesnastkowo).

              Każdy dodatkowy wiersz pokazany w pliku zawiera informacje o
              jednym znaku (ang. mark) grupy fanotify. WiÄkszoÅÄ z tych pól
              jest takich jak do inotify z wyjÄtkiem:

              mflags Flagi powiÄzane ze znakiem (wyrażone szesnastkowo).

              mask   Maski zdarzeŠdla tego znaku (wyrażone szesnastkowo).

              ignored_mask
                     Maski zdarzeŠignorowanych dla tego znaku (wyrażone
                     szesnastkowo).

              WiÄcej informacji o tych polach znajduje siÄ w podrÄczniku
              fanotify_mark(2).

       /proc/[pid]/io (od wersji jÄdra 2.6.20)
              Plik zawiera statystyki wejÅcia/wyjÅcia dla procesu np.:

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

              WystÄpujÄ nastÄpujÄce pola:

              rchar: odczytane znaki
                     Liczba bajtów, które zostaÅy odczytane ze wzglÄdu na
                     dane zadanie. Jest to suma bajtów z read(2) i podobnych
                     wywoÅaÅ systemowych. Obejmuje takie dziaÅania jak
                     wejÅcie/wyjÅcie terminala. To, czy konieczny byÅ
                     faktyczny dostÄp do wejÅcia/wyjÅciu fizycznego dysku nie
                     ma wpÅywu na wartoÅÄ (odczyt mógÅ nastÄpiÄ wyÅÄcznie z
                     bufora stronicowania).

              wchar: zapisane znaki
                     Liczba bajtów, które zostaÅy zapisane lub powinny byÄ
                     zapisane przez dane zadania. Tego pola tyczÄ siÄ podobne
                     zastrzeżenia jak rchar.

              syscr: odczytane wywoÅania systemowe
                     Próba policzenia operacji odczytu wejÅcia/wyjÅcia tj.
                     wywoÅaÅ systemowych takich jak read(2) i pread(2).

              syscw: zapisane wywoÅania systemowe
                     Próba policzenia operacji zapisu wejÅcia/wyjÅcia tj.
                     wywoÅaÅ systemowych takich jak write(2) i pwrite(2).

              read_bytes: odczytane bajty
                     Próba policzenia bajtów, które faktycznie musiaÅy byÄ
                     pobrane z poziomu noÅnika. Jest dokÅadna dla systemów
                     plików korzystajÄcych z bloków.

              write_bytes: zapisane bajty
                     Próba policzenia bajtów, które faktycznie musiaÅy byÄ
                     wysÅane na poziom noÅnika.

              cancelled_write_bytes:
                     DuÅ¼Ä niedokÅadnoÅÄ powoduje przycinanie. JeÅli proces
                     zapisze do pliku 1 MB i później skasuje go, de facto
                     nie nastÄpi żaden zapis. Zostanie to jednak odnotowane
                     jako powodujÄce zapis 1 MB. Innymi sÅowy: pole to
                     reprezentuje liczbÄ bajtów, które dziÄki temu procesowi
                     nie wystÄpiÅy przez przyciÄcie bufora strony. CzÄÅÄ zadaÅ
                     może spowodowaÄ również "ujemne" wejÅcie/wyjÅcie.
                     JeÅli to zadanie przytnie "brudny" bufor strony, czÄÅÄ
                     wejÅcia/wyjÅcie, które inne zadanie już policzyÅo (jest
                     w jego write_bytes) nie nastÄpi.

              Uwaga: W obecnej implementacji ma miejsce wyÅcig bitowy na
              32-bitowych systemach: jeÅli proces A odczyta /proc/[pid]/io
              procesu B, gdy proces B aktualizuje jeden ze swoich 64-bitowych
              liczników, proces A zobaczy wynik poÅredni.

       /proc/[pid]/gid_map (od Linuksa 3.5)
              Zob. user_namespaces(7).

       /proc/[pid]/limits (od Linuksa 2.6.24)
              Plik zawiera informacje o miÄkkim limicie, twardym limicie i
              jednostkach, w których mierzone sÄ limity zasobów procesów
              (patrz getrlimit(2)). Do Linuksa 2.6.35 (wÅÄcznie) plik jest
              zabezpieczony, aby pozwoliÄ na odczyt jedynie przez realny
              identyfikator UID procesu. Od wersji 2.6.36 plik jest
              odczytywalny dla wszystkich użytkowników systemu.

       /proc/[pid]/map_files/ (od jÄdra 3.3)
              Podkatalog zawiera wpisy odnoszÄce siÄ do plików zmapowanych do
              pamiÄci (patrz mmap(2)). Wpisy sÄ nazwane jako pary adresów:
              poczÄtku i koÅca obszaru pamiÄci (jako liczby szesnastkowe) i sÄ
              dowiÄzaniami symbolicznymi do samych zmapowanych plików. Oto
              przykÅad, zmodyfikowany aby zmieÅciÄ siÄ w 80 kolumnowym
              terminalu:

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

              ChoÄ te wpisy sÄ dostÄpne dla obszarów pamiÄci przydzielonych
              flagÄ MAP_FILE, to sposób w jaki zaimplementowane jest
              anonimowe dzielenie pamiÄci (obszary utworzone flagami MAP_ANON
              | MAP_SHARED) oznaczajÄ Å¼e tego typu obszary również pojawiÄ
              siÄ w tym katalogu. Oto przykÅad, gdzie plikiem docelowym jest
              usuniÄty /dev/zero:

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

              Ten katalog istnieje tylko jeÅli wÅÄczono opcjÄ konfiguracyjnÄ
              jÄdra CONFIG_CHECKPOINT_RESTORE. Do obejrzenia zawartoÅci tego
              katalogu wymagany jest przywilej (CAP_SYS_ADMIN).

       /proc/[pid]/maps
              Plik zawierajÄcy aktualnie zmapowane obszary pamiÄci wraz z
              prawami dostÄpu do nich. WiÄcej informacji o mapowaniu pamiÄci
              zawiera podrÄcznik systemowy mmap(2).

              Format pliku jest nastÄpujÄcy:

       adres            uprawn przesun urzÄdz i-wÄzeÅ    Åcieżka
       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]

              Pole adres jest przestrzeniÄ adresowÄ procesu, który jÄ
              zajmuje, a uprawn jest zbiorem uprawnieÅ:

                   r = odczyt
                   w = zapis
                   x = wykonywanie
                   s = wspólne
                   p = prywatne (kopiowane przy zapisie)

              Przesun jest przesuniÄciem w pliku lub w czymÅ innym, urzÄdz
              zawiera numery (gÅówny:poboczny) urzÄdzenia, a i-wÄzeÅ jest
              i-wÄzÅem na tym urzÄdzeniu. 0 wskazuje, że nie istnieje i-wÄzeÅ
              zwiÄzany z tym obszarem pamiÄci, jak to na przykÅad ma miejsce w
              przypadku segmentu BSS (niezainicjowanych danych).

              Åcieżka to zwykle plik zabezpieczajÄcy mapowanie. Koordynacja
              jest Åatwa w przypadku plików ELF za pomocÄ pola przesun,
              poprzez sprawdzenie pola Offset w nagÅówkach programu ELF
              (readelf -l).

              IstniejÄ dodatkowe, pomocne pseudoÅcieżki:

                   [stack]
                          Stos pierwotnego procesu (zwanego też gÅównym
                          wÄtkiem)

                   [stack:<tid>] (od Linuksa 3.4)
                          Stos wÄtku (gdzie <tid> jest identyfikatorem wÄtku).
                          Odpowiada Åcieżce /proc/[pid]/task/[tid]/.

                   [vdso] Wirtualny, dynamicznie linkowany obiekt
                          wspóÅdzielony.

                   [heap] Stos wÄtku.

              JeÅli pole Åcieżka jest puste, to jest to anonimowe
              przypisanie, takie jak pozyskiwane za pomocÄ funkcji mmap(2).
              Nie ma prostej metody na powiÄzanie jej ze źródÅem procesu
              oprócz metod takich jak gdb(1), strace(1) itp.

              W Linuksie 2.0 nie ma pola podajÄcego nazwÄ Åcieżki.

       /proc/[pid]/mem
              Za poÅrednictwem tego pliku można, korzystajÄc z open(2),
              read(2) i lseek(2), uzyskaÄ dostÄp do stron pamiÄci procesu.

       /proc/[pid]/mountinfo (od wersji jÄdra 2.6.26)
              Plik zawiera informacje o punktach montowania. SkÅada siÄ z
              linii w postaci:

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

              Liczby w nawiasach sÄ etykietami poniższych opisów:

              (1)  ID montowania: unikatowy identyfikator montowania (może
                   zostaÄ użyty ponownie po wykonaniu umount(2)).

              (2)  ID rodzica: identyfikator rodzica (lub siebie samego, jeÅli
                   montowanie znajduje siÄ na szczycie drzewa montowaÅ).

              (3)  gÅówny:poboczny: wartoÅÄ pola st_dev (patrz stat(2)) dla
                   plików w systemie plików.

              (4)  korzeÅ: korzeÅ (root) montowania w systemie plików.

              (5)  punkt montowania: punkt montowania w odniesieniu do
                   korzenia procesów.

              (6)  opcje montowania: opcje montowania dla każdego montowania.

              (7)  pola opcjonalne: zero lub wiÄcej pól w postaci
                   "znacznik[:wartoÅÄ]"

              (8)  separator: oznacza koniec pól opcjonalnych.

              (9)  typ systemu plików: nazwa systemu plików w postaci
                   "typ[.podtyp]".

              (10) źródÅo montowania: informacja zależna od systemu plików
                   lub "none".

              (11) super opcje: opcje dla superbloku.

              Parsery powinny ignorowaÄ wszystkie nierozpoznane pola
              opcjonalne. Obecnie sÄ to:

                   shared:X          montowanie jest wspóÅdzielone w grupie
                                     wÄzÅów X

                   master:X          montowanie jest podrzÄdne w stosunku do
                                     grupy wÄzÅów X

                   propagate_from:X  montowanie jest podrzÄdne i podlega
                                     propagacji z grupy wÄzÅów X (*)

                   unbindable        montowanie jest niepodpinalne

              (*) X jest najbliższÄ dominujÄcÄ grupÄ wÄzÅów pod korzeniem
              procesów. JeÅli X jest bezpoÅrednio nadrzÄdne w stosunku do
              montowania, lub jeÅli nie istnieje dominujÄca grupa wÄzÅów pod
              tym samym korzeniem, to obecne jest wyÅÄcznie pole "master:X",
              bez pola "propagate_from:X".

              Aby dowiedzieÄ siÄ wiÄcej o propagacji montowaÅ, proszÄ zapoznaÄ
              siÄ z Documentation/filesystems/sharedsubtree.txt w drzewie
              źródeÅ jÄdra Linux.

       /proc/[pid]/mounts (od wersji Linuksa 2.4.19)
              Jest to lista wszystkich systemów plików obecnie zamontowanych
              w przestrzeni montowaŠprocesów. Format tego pliku jest
              udokumentowany w fstab(5). Od wersji 2.6.15 jÄdra Linuksa, ten
              plik może byÄ użyty w wywoÅaniu funkcji poll(): po otwarciu
              tego pliku do odczytu, zmiana w nim (np. montowanie lub
              odmontowanie systemu plików) powoduje, że select(2) oznaczy
              deskryptor jako możliwy do odczytu, a poll(2) i epoll_wait(2)
              zaznaczÄ, że w pliku wystÄpiÅ bÅÄd. Zob. namespaces(7) aby
              dowiedzieÄ siÄ wiÄcej.

       /proc/[pid]/mountstats (Od wersji Linuksa 2.6.17)
              Plik eksportuje informacje (statystyki, informacje
              konfiguracyjne) o punktach montowaÅ w przestrzeni montowaÅ
              procesów. Wiersze pliku majÄ nastÄpujÄcÄ postaÄ:

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

              Pola w każdym wierszu sÄ nastÄpujÄce:

              (1)  Nazwa zamontowanego urzÄdzenia (lub "nodevice", jeÅli nie
                   ma odpowiadajÄcego urzÄdzenia).

              (2)  Punkt montowania w drzewie systemu plików.

              (3)  Typ systemu plików.

              (4)  Opcjonalne statystyki i informacje konfiguracyjne. Obecnie
                   (Linux 2.6.26) tylko system plików NFS eksportuje opcje za
                   pomocÄ tego pola.

              Plik jest odczytywalny wyÅÄcznie dla wÅaÅciciela procesu.

              WiÄcej informacji znajduje siÄ w opisie namespaces(7).

       /proc/[pid]/ns/ (od Linuksa 3.0)
              Jest to podkatalog zawierajÄcy po jednym wpisie dla każdej
              przestrzeni nazw, która obsÅuguje manipulacjÄ za pomocÄ
              setns(2). Aby dowiedzieÄ siÄ wiÄcej, proszÄ zapoznaÄ siÄ z
              namespaces(7).

       /proc/[pid]/numa_maps (od Linuksa 2.6.14)
              Patrz numa(7).

       /proc/[pid]/oom_adj (od Linuksa 2.6.11)
              Plik może byÄ użyty do dostosowania wyniku, używanego do
              wybrania procesów do zabicia, w przypadku sytuacji braku
              pamiÄci (out-of-memory - OOM). JÄdro używa tej wartoÅci do
              operacji przesuniÄcia bitowego wartoÅci oom_score procesu:
              poprawne wartoÅci mieszczÄ siÄ w zakresie od -16 do +15, wraz ze
              specjalnÄ wartoÅciÄ -17, która caÅkowicie wyÅÄcza zabijanie
              przy OOM danego procesu. Dodatni wynik zwiÄksza
              prawdopodobieÅstwo, że proces zostanie zabity przez OOM-killer,
              ujemny zmniejsza je.

              DomyÅlnÄ wartoÅciÄ tego pliku jest 0, nowy proces dziedziczy
              ustawienie oom_adj swojego rodzica. Proces musi byÄ
              uprzywilejowany (CAP_SYS_RESOURCE) aby móc zaktualizowaÄ ten
              plik.

              Od Linuksa 2.6.36 używanie tego pliku jest przestarzaÅe,
              powinno siÄ korzystaÄ z /proc/[pid]/oom_score_adj.

       /proc/[pid]/oom_score (od Linuksa 2.6.11)
              Plik wyÅwietla bieżÄcy wynik, jaki jÄdro przydziela temu
              procesowi w celu wybrania procesu do zabicia przez OOM-killer.
              Wyższy wynik oznacza, że proces ma wiÄksze prawdopodobieÅstwo
              zostania wybranym przez OOM-killer. PodstawÄ wyniku jest liczba
              pamiÄci użytej przez proces, a jest on zwiÄkszany (+) lub
              zmniejszany (-) przez nastÄpujÄce czynniki:

              * czy proces tworzy wiele potomków przy użyciu fork(2) (+),

              * czy proces jest używany przez dÅugi czas lub używa dużo
                czasu procesora (-),

              * czy proces ma niskÄ wartoÅÄ nice (np. > 0) (+),

              * czy proces jest uprzywilejowany (-) oraz

              * czy proces wykonuje bezpoÅredni dostÄp do sprzÄtu (-).

              WartoÅÄ oom_score uwzglÄdnia również przesuniÄcie okreÅlone
              przez ustawienie procesu oom_score_adj lub oom_adj.

       /proc/[pid]/oom_score_adj (od Linuksa 2.6.36)
              Plik może byÄ użyty do dostosowania heurystyki zwanej
              "badness", używanej do wybrania procesu który zostanie zabity
              w sytuacji braku pamiÄci.

              Przypisuje ona do każdego potencjalnego zadania wartoÅÄ od 0
              (nigdy nie zabija) do 1000 (zawsze zabija) aby okreÅliÄ docelowy
              proces do zabicia. Jednostki sÄ z grubsza proporcjonalne do
              pamiÄci, którÄ proces może przydzieliÄ, obliczanÄ w oparciu do
              bieżÄcego użycia pamiÄci i pamiÄci wymiany. Na przykÅad
              zadanie używajÄce caÅÄ dozwolonÄ pamiÄÄ otrzyma wynik 1000, a
              jeÅli użyje poÅowÄ dozwolonej pamiÄci, otrzyma wynik 500.

              Dodatkowym czynnikiem w wyniku "badness" jest fakt, że procesy
              roota majÄ dodatkowe 3% pamiÄci w stosunku do pozostaÅych
              procesów.

              WielkoÅÄ "dozwolonej" pamiÄci zależy od kontekstu w jakim
              wywoÅano OOM-killera. JeÅli wynika to z faktu, że pamiÄÄ
              przeznaczona dla zadania alokujÄcego cpuset zostaÅa wyczerpany,
              to dozwolona pamiÄÄ odpowiada zestawowi pamiÄci przypisanego do
              tego cpuset (zobacz cpuset(7)). JeÅli jest to skutek zasad dot.
              pamiÄci wÄzÅa (lub wÄzÅów), to dozwolona pamiÄÄ odpowiada
              zestawowi tych zasad. JeÅli wynika to z faktu, że osiÄgniÄto
              limit pamiÄci (lub pamiÄci wymiany) to dozwolona pamiÄÄ jest tak
              ustawionym limitem. Gdy wynika to z sytuacji braku pamiÄci, to
              dozwolona pamiÄÄ odpowiada wszystkich zaalokowanych zasobom.

              WartoÅÄ oom_score_adj jest dodawana do wyniku "badness" przed
              użyciem jej do wybrania procesu przeznaczonego do zabicia.
              Dozwolone wartoÅci wynoszÄ od -1000 (OOM_SCORE_ADJ_MIN) do +1000
              (OOM_SCORE_ADJ_MAX). Pozwala to przestrzeni użytkownika na
              kontrolÄ preferencji OOM-killing. Można w ten sposób zawsze
              preferowaÄ dane zadanie lub caÅkowicie wyÅÄczyÄ je z procesu
              OOM-killing. Najniższa dostÄpna wartoÅÄ (-1000) jest
              równoznaczna z caÅkowitym wyÅÄczeniem OOM-killing dla danego
              zadania, ponieważ zawsze zwróci ono wynik "badness" równy 0.

              Z tego wzglÄdu Åatwo jest zdefiniowaÄ wielkoÅÄ pamiÄci dla
              każdego zadania przez przestrzeŠużytkownika. Ustawienie
              wartoÅci oom_score_adj np. na +500 jest w przybliżeniu
              odpowiednikiem pozwolenia pozostaÅym zadaniom w tym samym
              systemie, cpuset, zasadom dot. pamiÄci i zasobom kontrolera
              pamiÄci na użycie co najmniej 50% pamiÄci wiÄcej. Z kolei
              wartoÅÄ -500 odpowiada mniej wiÄcej zmniejszeniu o 50%
              dozwolonej pamiÄci.

              Z powodu zgodnoÅci wstecznej ze starszymi jÄdrami do modyfikacji
              wyniku "badness" wciÄż można używaÄ /proc/[pid]/oom_adj. Jego
              wartoÅÄ skaluje siÄ liniowo z oom_score_adj.

              Zapis do /proc/[pid]/oom_score_adj lub /proc/[pid]/oom_adj
              zmieni zapis w drugim pseudopliku na przeskalowanÄ odpowiednio
              wartoÅÄ.

       /proc/[pid]/pagemap (od Linuksa 2.6.25)
              Plik pokazuje przypisanie każdej z wirtualnych stron procesu do
              ramki fizycznej strony lub przestrzeni wymiany. Zawiera jednÄ
              wartoÅÄ 64-bitowÄ na każdÄ stronÄ wirtualnÄ, bity oznaczajÄ:

                   63     JeÅli jest ustawione, strona jest obecna w pamiÄci
                          RAM.

                   62     JeÅli jest ustawione, strona jest obecne w pamiÄci
                          wymiany (swap)

                   61 (od Linuksa 3.5)
                          Strona jest stronÄ przypisanÄ do pliku lub dzielonÄ
                          stronÄ anonimowÄ.

                   60-56 (od Linuksa 3.11)
                          Zero

                   55 (od Linuksa 3.11)
                          PTE jest soft-dirty (wiÄcej informacji w pliku w
                          źródÅach jÄdra: Documentation/vm/soft-dirty.txt).

                   54-0   JeÅli strona jest obecna w pamiÄci RAM (bit 63), to
                          te bity udostÄpniajÄ numer ramki strony, który
                          można użyÄ z indeksem  /proc/kpageflags i
                          /proc/kpagecount. JeÅli strona jest obecna w pamiÄci
                          wymiany (bit 62), to bity 4-0 informujÄ o typie
                          pamiÄci wymiany, a bity 54-5 kodujÄ przesuniÄcie
                          pamiÄci wymiany.

              Przed Linuksem 3.11 bity 60-55 kodowaÅy logarytm dwójkowy
              informujÄcy o rozmiarze strony.

              Aby efektywnie wykorzystaÄ /proc/[pid]/pagemap należy użyÄ
              /proc/[pid]/maps do okreÅlenia które obszary pamiÄci zostaÅy
              rzeczywiÅcie przypisane i móc przejÅÄ miÄdzy nieprzypisanymi
              obszarami.

              Plik /proc/[pid]pagemap istnieje tylko jeÅli podczas kompilacji
              jÄdra wÅÄczono opcjÄ CONFIG_PROC_PAGE_MONITOR.

       /proc/[pid]/personality (od Linuksa 2.6.28)
              Plik tylko do odczytu pokazuje domenÄ uruchamiania procesu
              ustawionÄ przez personality(2). WartoÅÄ wyÅwietlana jest w
              zapisie szesnastkowym.

       /proc/[pid]/root
              UNIX i Linux wspierajÄ pomysÅ okreÅlonego dla każdego procesu
              osobno katalogu gÅównego systemu plików, ustawianego przez
              wywoÅanie systemowe chroot(2). Plik ten wskazuje na katalog
              gÅówny systemu plików i zachowuje siÄ w ten sam sposób jak
              exe, fd/*, itp.

              W procesie wielowÄtkowym zawartoÅÄ tego linku symbolicznego nie
              jest dostÄpna, jeżeli wÄtek gÅówny już siÄ zakoÅczyÅ
              (zazwyczaj przez wywoÅanie pthread_exit(3)).

       /proc/[pid]/seccomp (Linux w wersji od 2.6.12 do 2.6.22)
              Odczytuje/ustawia tryb seccomp procesu. JeÅli ten plik zawiera
              wartoÅÄ zero, tryb seccomp nie jest wÅÄczany. Zapis wartoÅci 1
              do pliku (nieodwracalnie) umieszcza proces w trybie seccomp,
              jedynymi dozwolonymi wywoÅaniami systemowymi sÄ read(2),
              write(2), _exit(2) i sigreturn(2). Plik ten zniknÄÅ wraz z
              Linuksem 2.6.23, gdy zostaÅ zastÄpiony mechanizmem dziaÅajÄcym w
              oparciu o prctl(2).

       /proc/[pid]/setgroups (od Linuksa 3.19)
              Zob. user_namespaces(7).

       /proc/[pid]/smaps (od Linuksa 2.6.14)
              Plik ten pokazuje zużycie pamiÄci dla każdego mapowania
              procesu (polecenie pmap(1) wyÅwietla podobne informacje, w
              postaci która może byÄ Åatwiejsza do przetwarzania). Dla
              każdego takiego mapowania pokazana jest lista nastÄpujÄcych
              linii:

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

              Pierwsza z tych linii pokazuje te same informacje o mapowaniach,
              co w /proc/[pid]/maps. PozostaÅe linie zawierajÄ rozmiar
              mapowania, iloÅÄ mapowaÅ obecnych w RAM ("Rss"), proporcjonalny
              udziaÅ w tym mapowaniu ("Pss"), liczbÄ czystych i brudnych stron
              wspóÅdzielonych w mapowaniu oraz liczbÄ czystych i brudnych
              prywatnych stron w mapowaniu. "Referenced" oznacza pamiÄÄ która
              jest oznaczona jako pamiÄÄ do której ktoÅ odnosi siÄ lub
              uzyskuje dostÄp. "Anonymous" pokazuje pamiÄÄ nienależÄcÄ do
              żadnego pliku. "Swap" pokazuje jak dużo pamiÄci która byÅaby
              anonimowa jest również używana, lecz w pamiÄci wymiany.

              Wpis "KernelPageSize" jest rozmiarem strony używanym przez
              jÄdro do VMA. Jest on w wiÄkszoÅci przypadków takim sam, jak
              rozmiar używany przez MMU. WyjÄtek wystÄpuje na jÄdrach PPC64,
              gdy jÄdro korzystajÄc z podstawowego rozmiaru strony w wielkoÅci
              64K może wciÄż używaÄ 4K stron dla MMU na starszych
              procesorach. Aby to rozróżniÄ, ta Åatka raportuje
              "MMUPageSize" jako rozmiar strony używany przez MMU.

              "Locked" wskazuje, czy mapowanie jest zablokowane w pamiÄci czy
              nie.

              Pole "VmFlags" reprezentuje flagi jÄdra zwiÄzane z danych
              obszarem pamiÄci wirtualnej (VMA) zakodowanym w dwuliterowym
              symbolu. Oto kody:

                  rd  - odczytywalna (readable)
                  wr  - zapisywalna (writable)
                  ex  - wykonywalna (executable)
                  sh  - dzielona (shared)
                  mr  - może odczytaÄ (may read)
                  mw  - może zapisaÄ (may write)
                  me  - może wykonaÄ (may execute)
                  ms  - może dzieliÄ (may share)
                  gd  - segment stosu roÅnie w dóŠ(grows down)
                  pf  - czysty przedziaÅ PFG (pure PFN)
                  dw  - wyÅÄczony zapis do zmapowanego pliku (disabled write)
                  lo  - strony zablokowane w pamiÄci (locked)
                  io  - pamiÄÄ zmapowana przestrzeni we/wy (I/O)
                  sr  - udostÄpniono wskazówkÄ sekwencyjnego odczytu
                                                    (sequential read)
                  rr  - udostÄpniono wskazówkÄ losowego odczytu (random read)
                  dc  - nie kopiuj przestrzeni przy forkowaniu (do not copy)
                  de  - nie rozszerzaj przestrzeni przy przemapowaniu
                                                      (do not expand)
                  ac  - przestrzeÅ jest policzalna (area is accountable)
                  nr  - przestrzeÅ wymiany niezarezerwowana dla tej
                                                    przestrzeni (not reserved)
                  ht  - przestrzeŠużywa dużych stron tlb (huge tlb)
                  nl  - mapowanie nieliniowe (non-linear)
                  ar  - flaga charakterystyczna dla architektury
                  dd  - nie wÅÄczaj przestrzeni do zrzutu jÄdra (do not dump)
                  sd  - flaga soft-dirty
                  mm  - przestrzeÅ mieszanego mapowania
                  hg  - flaga wskazówki dużych stron (huge)
                  nh  - flaga wskazówki stron niebÄdÄcych dużymi (no-huge)
                  mg  - flaga wskazówki ÅÄczenia (mergeable)

              Plik /proc/[pid]/smaps istnieje tylko jeÅli podczas kompilacji
              jÄdra wÅÄczono opcjÄ CONFIG_PROC_PAGE_MONITOR.

       /proc/[pid]/stack (od Linuksa 2.6.29)
              Plik zapewnia symboliczny Ålad wywoÅania funkcji w tym stosie
              jÄdra dla procesu. Plik istnieje, jeÅli jÄdro zostaÅo zbudowane
              z wÅÄczonÄ opcjÄ konfiguracji CONFIG_STACKTRACE.

       /proc/[pid]/stat
              Informacje o stanie procesu. Korzysta z tego ps(1). SÄ one
              zdefiniowane w pliku źródeÅ jÄdra fs/proc/array.c.

              Kolejne pola i ich wÅaÅciwe specyfikatory formatu scanf(3) to:

              (1) pid  %d
                        Identyfikator procesu (PID).

              (2) comm  %s
                        Nazwa pliku wykonywalnego w nawiasach. WidaÄ, czy plik
                        ulegÅ wymianie.

              (3) state  %c
                        Jeden z poniższych znaków, wskazujÄcych na status
                        procesu:

                        R  DziaÅajÄcy (Running)

                        S  ÅpiÄcy (Sleeping) w przerywalnym oczekiwaniu

                        D  ÅpiÄcy w nieprzerywalnym oczekiwaniu dyskowym

                        Z  Zombie

                        T  Zatrzymany sygnaÅem lub (przed Linuksem 2.6.33)
                           zatrzymany Ålad (trace stopped)

                        t  Zatrzymany Åledzeniem (tracing stop) - Linux 2.6.33
                           i nowszy

                        W  Stronicowanie (tylko przed Linuksem 2.6.0)

                        X  Martwy (od Linuksa 2.6.0)

                        x  Martwy (miÄdzy Linuksem 2.6.33 a 3.13)

                        K  Wakekill - oczekiwanie; wybudzenie przy Åmiertelnym
                           sygnale  (miÄdzy Linuksem 2.6.33 a 3.13)

                        W  BudzÄcy siÄ (miÄdzy Linuksem 2.6.33 a 3.13)

                        P  Zaparkowany (miÄdzy Linuksem 3.9 a 3.13)

              (4) ppid  %d
                        PID procesu macierzystego tego procesu.

              (5) pgrp  %d
                        Identyfikator grupy procesów danego procesu.

              (6) session  %d
                        Identyfikator sesji procesu.

              (7) tty_nr  %d
                        Kontroluje terminal procesu (poboczny numer urzÄdzenia
                        jest przechowywany w kombinacji bitów 31 do 20 i 7 do
                        0, natomiast gÅówny numer urzÄdzenia jest w bitach 15
                        do 8).

              (8) tpgid  %d
                        Identyfikator grupy procesów pierwszoplanowych
                        kontrolujÄcego terminala procesu.

              (9) flags  %u
                        SÅowo flag jÄdra dla danego procesu. Znaczenie
                        poszczególnych bitów okreÅlajÄ definicje PF_* w
                        pliku źródeÅ jÄdra Linux include/linux/sched.h.
                        SzczegóÅy zaleÅ¼Ä od wersji jÄdra.

                        Format tego pola przed Linuksem 2.6 miaÅ postaÄ %lu.

              (10) minflt  %lu
                        Liczba drobnych bÅÄdów, które popeÅniÅ proces, a
                        które nie wymagaÅy zaÅadowania strony pamiÄci z
                        dysku.

              (11) cminflt  %lu
                        Liczba drobnych bÅÄdów procesów potomnych.

              (12) majflt  %lu
                        Liczba gÅównych bÅÄdów, które popeÅniÅ proces, a
                        które wymagaÅy zaÅadowania strony pamiÄci z dysku.

              (13) cmajflt  %lu
                        Liczba gÅównych bÅÄdów procesów potomnych.

              (14) utime  %lu
                        Czas jaki zostaÅ przydzielony procesowi w trybie
                        użytkownika, mierzony w taktach zegara (podzielonych
                        przez sysconf(_SC_CLK_TCK)). Obejmuje to czas goÅcia,
                        guest_time (czas spÄdzony w czasie dziaÅania
                        wirtualnego CPU, patrz niżej), tak wiÄc aplikacje,
                        które nie wiedzÄ o polu czasu goÅcia nie tracÄ tego
                        czasu ze swych obliczeÅ.

              (15) stime  %lu
                        Czas, jaki zostaÅ przydzielony procesowi w trybie
                        jÄdra, mierzony w taktach zegara (podzielonych przez
                        sysconf(_SC_CLK_TCK)).

              (16) cutime  %ld
                        Czas, jaki zostaÅ przydzielony procesom potomnym tego
                        procesu w stanie waited-for w trybie użytkownika,
                        mierzony w taktach zegara (podzielonych przez
                        sysconf(_SC_CLK_TCK)), patrz także times(2)).
                        Obejmuje to czas goÅcia, cguest_time (czas spÄdzony
                        dziaÅajÄc na procesorze wirtualnym, patrz niżej).

              (17) cstime  %ld
                        Czas, jaki zostaÅ przydzielony procesom potomnym tego
                        procesu w stanie waited-for w trybie jÄdra, mierzony w
                        taktach zegara (podzielonych przez
                        sysconf(_SC_CLK_TCK).

              (18) priority  %ld
                        (WyjaÅnienie dla Linuksa 2.6) W przypadku procesów
                        dziaÅajÄcych z zasadami planisty czasu rzeczywistego
                        (policy poniżej; patrz sched_setscheduler(2)), jest
                        to liczba przeciwna w stosunku do priorytetu planisty
                        minus jeden, tzn. jest to zakres -2 do -100
                        odpowiadajÄcy priorytetom czasu rzeczywistego od 1 do
                        99. W przypadku procesów nie dziaÅajÄcych wedÅug tych
                        zasad, jest to surowa wartoÅÄ nice (setpriority(2)
                        zgodna z podanÄ przez jÄdro. JÄdro przechowuje
                        wartoÅci nice jako liczby w zakresie od 0 (wysoki) do
                        39 (niski), co odpowiada widocznemu dla użytkownika
                        zakresowi nice od -20 do 19.

                        Przed Linuksem 2.6 byÅa to wartoÅÄ skalowana w oparciu
                        o wagÄ jakÄ planista przypisaÅ do danego procesu.

              (19) nice  %ld
                        WartoÅÄ "nice" (patrz setpriority(2)) zawierajÄca siÄ
                        w zakresie od 19 (niski priorytet) do -20 (wysoki
                        priorytet).

              (20) num_threads  %ld
                        Liczba wÄtków procesu (od Linuksa 2.6). Przed jÄdrem
                        2.6 to pole miaÅo przydzielonÄ na sztywno wartoÅÄ 0,
                        jako wypeÅniacz do usuniÄtego wczeÅniej pola.

              (21) itrealvalue  %ld
                        Czas w jiffies poprzedzajÄcy wysÅanie przez czasomierz
                        do procesu nastÄpnego sygnaÅu SIGALRM. Od jÄdra
                        2.6.17, to pole nie jest dÅużej utrzymywane i ma
                        ustawionÄ na sztywno wartoÅÄ 0.

              (22) starttime  %llu
                        Czas w jakim proces uruchomiÅ siÄ po rozruchu systemu.
                        JÄdra Linux przed wersjÄ 2.6 wyrażajÄ tÄ wartoÅÄ w
                        tzw. "jiffies". Od Linuksa 2.6 wartoÅÄ jest wyrażana
                        w taktach zegara (podzielonych przez
                        sysconf(_SC_CLK_TCK)).

                        Format tego pola przed Linuksem 2.6 miaÅ postaÄ %lu.

              (23) vsize  %lu
                        Rozmiar pamiÄci wirtualnej w bajtach.

              (24) rss  %ld
                        Resident Set Size: liczba stron, które proces ma w
                        rzeczywistej pamiÄci. SÄ to po prostu strony, które
                        obejmujÄ segment text, segment data i przestrzeÅ
                        stosu. Nie obejmuje to stron, które nie byÅy Åadowane
                        na żÄdanie lub które ulegÅy wymianie.

              (25) rsslim  %lu
                        Aktualne miÄkkie ograniczenie rss procesu w bajtach;
                        patrz opis RLIMIT_RSS w getrlimit(2).

              (26) startcode  %lu
                        Adres, pod którym zaczyna siÄ kod programu.

              (27) endcode  %lu
                        Adres, pod którym koÅczy siÄ kod programu.

              (28) startstack  %lu
                        Adres poczÄtku (tzn. spód) stosu.

              (29) kstkesp  %lu
                        BieżÄca wartoÅÄ ESP (wskaźnika stosu), okreÅlona na
                        podstawie strony stosu jÄdra dla danego procesu.

              (30) kstkeip  %lu
                        Aktualny EIP (wskaźnik instrukcji).

              (31) signal  %lu
                        Maska bitowa oczekujÄcych sygnaÅów, wyÅwietlana jako
                        liczba dziesiÄtna. PrzestarzaÅe, ponieważ nie
                        dostarcza informacji o sygnaÅach czasu rzeczywistego;
                        prosimy używaÄ /proc/[pid]/status zamiast tego pliku.

              (32) blocked  %lu
                        Maska bitowa zablokowanych sygnaÅów, wyÅwietlana jako
                        liczba dziesiÄtna. PrzestarzaÅe, ponieważ nie
                        dostarcza informacji o sygnaÅach czasu rzeczywistego;
                        prosimy używaÄ /proc/[pid]/status zamiast tego pliku.

              (33) sigignore  %lu
                        Maska bitowa ignorowanych sygnaÅów, wyÅwietlana jako
                        liczba dziesiÄtna. PrzestarzaÅe, ponieważ nie
                        dostarcza informacji o sygnaÅach czasu rzeczywistego;
                        prosimy używaÄ /proc/[pid]/status zamiast tego pliku.

              (34) sigcatch  %lu
                        Maska bitowa schwytanych sygnaÅów, wyÅwietlana jako
                        liczba dziesiÄtna. PrzestarzaÅe, ponieważ nie
                        dostarcza informacji o sygnaÅach czasu rzeczywistego;
                        prosimy używaÄ /proc/[pid]/status zamiast tego pliku.

              (35) wchan  %lu
                        Jest to "kanaÅ" na którym oczekuje proces. Jest to
                        adres poÅożenia w jÄdrze, gdzie proces jest w
                        uÅpieniu. PowiÄzanÄ nazwÄ symbolicznÄ można znaleźÄ
                        w /proc/[pid]/wchan.

              (36) nswap  %lu
                        Liczba stron, które ulegÅy wymianie (nieutrzymywane).

              (37) cnswap  %lu
                        ÅÄczna wartoÅÄ nswap dla procesów potomnych
                        (nieutrzymywane).

              (38) exit_signal  %d  (od Linuksa 2.1.22)
                        SygnaÅ wysyÅany przez ginÄcy proces do jego procesu
                        macierzystego.

              (39) processor  %d  (od Linuksa 2.2.8)
                        Numer CPU, na którym proces ostatnio dziaÅaÅ.

              (40) rt_priority  %u  (od Linuksa 2.5.19)
                        Priorytet planisty czasu rzeczywistego, liczba w
                        zakresie od 1 do 99 do procesów przydzielanych wedÅug
                        zasad czasu rzeczywistego lub 0 do procesów nie czasu
                        rzeczywistego (patrz sched_setscheduler(2)).

              (41) policy  %u  (od Linuksa 2.5.19)
                        Polityka przydzielania zadaniom czasu procesora (patrz
                        sched_setscheduler(2)). Dekodowana używajÄc staÅych
                        SCHED_* w linux/sched.h.

                        Format tego pola przed Linuksem 2.6.22 miaÅ postaÄ
                        %lu.

              (42) delayacct_blkio_ticks  %llu  (od Linuksa 2.6.18)
                        Sumaryczna zwÅoka bloków wejÅcia/wyjÅcia, mierzona w
                        taktach zegara (centysekundy).

              (43) guest_time  %lu  (od Linuksa 2.6.24)
                        Czas goÅcia procesu (czas, jaki upÅynÄÅ podczas
                        dziaÅania na wirtualnym procesorze systemu
                        operacyjnego goÅcia), mierzony w taktach zegara
                        (podzielony przez sysconf(_SC_CLK_TCK)

              (44) cguest_time  %ld  (od Linuksa 2.6.24)
                        Czas goÅcia potomków procesu, mierzony w taktach
                        zegara (podzielony przez sysconf(_SC_CLK_TCK)).

              (45) start_data  %lu  (od Linuksa 3.3)
                        Adres powyższej którego umieszczane sÄ zainicjowane
                        i niezainicjowane (BSS) dane programu.

              (46) end_data  %lu  (od Linuksa 3.3)
                        Adres poniżej którego umieszczane sÄ zainicjowane i
                        niezainicjowane (BSS) dane programu.

              (47) start_brk  %lu  (od Linuksa 3.3)
                        Adres, powyżej którego można rozciÄgnÄÄ kopiec
                        (ang. heap) za pomocÄ brk(2).

              (48) arg_start  %lu  (od Linuksa 3.5)
                        Adres powyżej którego umieszczane sÄ argumenty
                        wiersza polecenia programu (argv).

              (49) arg_end  %lu  (od Linuksa 3.5)
                        Adres poniżej którego umieszczane sÄ argumenty
                        wiersza polecenia programu (argv).

              (50) env_start  %lu  (od Linuksa 3.5)
                        Adres powyżej którego umieszczane jest Årodowisko
                        programu.

              (51) env_end  %lu  (od Linuksa 3.5)
                        Adres poniżej którego umieszczane jest Årodowisko
                        programu.

              (52) exit_code  %d  (od Linuksa 3.5)
                        Kod zakoÅczenia wÄtku w postaci przekazywanej przez
                        waitpid(2).

       /proc/[pid]/statm
              UdostÄpnia informacje o użyciu pamiÄci, mierzone w stronach.
              WystÄpujÄ nastÄpujÄce kolumny:

                  size       (1) ÅÄczny rozmiar programu
                             (taki sam jak VmSize w /proc/[pid]/status)
                  resident   (2) rozmiar czÄÅci rezydentnej
                             (taki sam jak VmRSS w /proc/[pid]/status)
                  share      (3) strony wspólne (tzn. obecne w pliku)
                  text       (4) tekst (kod)
                  lib        (5) biblioteki (nieużywane w Linuksie 2.6)
                  data       (6) dane i stos
                  dt         (7) strony nieaktualne (dirty; nieużywane w Linuksie 2.6)

       /proc/[pid]/status
              UdostÄpnia sporo informacji ze /proc/[pid]/stat i
              /proc/[pid]/statm w postaci Åatwiejszej do przeanalizowania
              przez czÅowieka. Oto przykÅad:

                  $ cat /proc/$$/status
                  Name:   bash
                  State:  S (sleeping)
                  Tgid:   3515
                  Pid:    3515
                  PPid:   3452
                  TracerPid:      0
                  Uid:    1000    1000    1000    1000
                  Gid:    100     100     100     100
                  FDSize: 256
                  Groups: 16 33 100
                  VmPeak:     9136 kB
                  VmSize:     7896 kB
                  VmLck:         0 kB
                  VmPin:         0 kB
                  VmHWM:      7572 kB
                  VmRSS:      6316 kB
                  VmData:     5224 kB
                  VmStk:        88 kB
                  VmExe:       572 kB
                  VmLib:      1708 kB
                  VmPMD:         4 kB
                  VmPTE:        20 kB
                  VmSwap:        0 kB
                  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
                  Seccomp:        0
                  Cpus_allowed:   00000001
                  Cpus_allowed_list:      0
                  Mems_allowed:   1
                  Mems_allowed_list:      0
                  voluntary_ctxt_switches:        150
                  nonvoluntary_ctxt_switches:     545

              WystÄpujÄ nastÄpujÄce pola:

              * Name: Polecenie uruchomione przez ten proces.

              * State: BieżÄcy stan procesu. Jeden z: "R (running)", "S
                (sleeping)", "D (disk sleep)", "T (stopped)", "T (tracing
                stop)", "Z (zombie)", or "X (dead)".

              * Tgid: identyfikator grupy wÄtku (np. identyfikator procesu).

              * Pid: identyfikator wÄtku (patrz gettid(2)).

              * PPid: PID procesu macierzystego.

              * TracerPid: PID procesu ÅledzÄcego ten proces (0 gdy nie jest
                Åledzony).

              * Uid, Gid: UID (GID): realny, efektywny, zapisany oraz systemu
                plików.

              * FDSize: Liczba slotów aktualnie przydzielonych deskryptorów
                plików.

              * Groups: UzupeÅniajÄca lista grup.

              * VmPeak: Szczytowy rozmiar pamiÄci wirtualnej.

              * VmSize: Rozmiar pamiÄci wirtualnej.

              * VmLck: Rozmiar pamiÄci zablokowanej (patrz mlock(3)).

              * VmPin: Rozmiar pamiÄci przypiÄtej (od Linuksa 3.2). SÄ to
                strony które nie mogÄ byÄ przeniesione, ponieważ coÅ wymaga
                bezpoÅredniego dostÄpu pamiÄci fizycznej.

              * VmHWM: Szczytowy ustawiony rozmiar rezydentny ("high water
                mark").

              * VmRSS: Ustawiony rozmiar rezydentny.

              * VmData, VmStk, VmExe: Rozmiar segmentów danych, stosu i
                tekstu.

              * VmLib: Rozmiar kodu biblioteki wspóÅdzielonej.

              * VmPTE: Rozmiar wpisów tablicy strony (od Linuksa 2.6.10).

              * VmPMD: Rozmiar tabel stron drugiego poziomu (od Linuksa 4.0)

              * VmSwap: Rozmiar pamiÄci wirtualnej przeniesionej do pamiÄci
                wymiany, podany jako anonimowe strony prywatne; pamiÄÄ wymiany
                shmem nie jest ujÄta (od Linuksa 2.6.34).

              * Threads: Liczba wÄtków w procesie zawierajÄcych ten wÄtek.

              * SigQ: Pole zawiera dwie liczby oddzielone ukoÅnikiem, które
                odnoszÄ siÄ do skolejkowanych sygnaÅów do realnego
                identyfikatora użytkownika tego procesu. Pierwsza jest liczbÄ
                aktualnie skolejkowanych sygnaÅów do tego realnego
                identyfikatora użytkownika, a druga jest limitem zasobów
                liczby skolejkowanych sygnaÅów do tego procesu (patrz opis
                RLIMIT_SIGPENDING w getrlimit(2)).

              * SigPnd, ShdPnd: Liczba sygnaÅów oczekujÄcych na wÄtek i na
                proces jako caÅoÅÄ (patrz pthreads(7) i signal(7)).

              * SigBlk, SigIgn, SigCgt: Maski oznaczajÄce zablokowane,
                zignorowane i przechwycone sygnaÅy (patrz signal(7)).

              * CapInh, CapPrm, CapEff: Maski możliwoÅci, wÅÄczonych w
                zestawach dziedziczonych (inheritable), dozwolonych
                (permitted) i efektywnych (effective) (patrz capabilities(7)).

              * CapBnd: Zestaw możliwoÅci ograniczajÄcych (capability
                bounding set) (od Linuksa 2.6.26, patrz capabilities(7)).

              * CapAmb: Zestaw przywileju ambient (od Linuksa 4.3, zob.
                capabilities(7)).

              * Seccomp: Tryb procesu seccomp (od Linuksa 3.8, zob.
                seccomp(2)).  0 oznacza SECCOMP_MODE_DISABLED; 1 oznacza
                SECCOMP_MODE_STRICT; 2 oznacza SECCOMP_MODE_FILTER. Pole to
                jest udostÄpnione tylko gdy jÄdro zbudowano z wÅÄczonÄ opcjÄ
                konfiguracyjnÄ CONFIG_SECCOMP.

              * Cpus_allowed: Maska procesorów, na których proces może byÄ
                uruchomiony (od Linuksa 2.6.24, patrz cpuset(7)).

              * Cpus_allowed_list: Jak wyżej, ale w "formacie listy" (od
                Linuksa 2.6.26, patrz cpuset(7)).

              * Mems_allowed: Maska wÄzÅów pamiÄci, dozwolonych dla tego
                procesu (od Linuksa 2.6.24, patrz cpuset(7)).

              * Mems_allowed_list: Jak wyżej, ale w "formacie listy" (od
                Linuksa 2.6.26, patrz cpuset(7)).

              * voluntary_ctxt_switches, nonvoluntary_ctxt_switches: Liczba
                dobrowolnych i przymusowych przeÅÄczeÅ kontekstu (od Linuksa
                2.6.23).

       /proc/[pid]/syscall (od Linuksa 2.6.27)
              Plik udostÄpnia numer wywoÅania systemowego i rejestr argumentu
              dla aktualnie wykonywanego przez proces wywoÅania systemowego,
              po którym nastÄpujÄ wartoÅci wskaźnika stosu i rejestry
              liczników programu. UdostÄpnianych jest wszystkie szeÅÄ
              rejestrów argumentu, choÄ wiÄkszoÅÄ wywoÅaÅ systemowych używa
              mniejszej liczby rejestrów.

              JeÅli proces jest zablokowany, lecz nie w wywoÅaniu systemowym,
              to plik zawiera wartoÅÄ -1 w miejscu numeru wywoÅania
              systemowego, po którym nastÄpujÄ wartoÅci wskaźnika stosu i
              licznika programu. JeÅli proces nie jest zablokowany, to plik
              zawiera ÅaÅcuch "running".

              Obecne tylko, jeÅli jÄdro zostaÅo skonfigurowane z
              CONFIG_HAVE_ARCH_TRACEHOOK.

       /proc/[pid]/task (od Linuksa 2.6.0-test6)
              Jest to katalog zawierajÄcy po jednym podkatalogu dla każdego
              wÄtku procesu. NazwÄ każdego podkatalogu jest numeryczne ID
              ([tid]) wÄtku (patrz gettid(2)). Każdy z podkatalogów zawiera
              zbiór plików o tej samej nazwie i zawartoÅci, co katalogi
              /proc/[pid]. Dla atrybutów, które sÄ wspóÅdzielone przez
              wszystkie wÄtki zawartoÅÄ każdego z plików w podkatalogach
              task/[tid] bÄdzie taka sama jak zawartoÅÄ odpowiednich plików w
              nadrzÄdnym katalogu /proc/[pid] (np. w procesie wielowÄtkowym
              wszystkie pliki task/[tid]/cwd bÄdÄ miaÅy takÄ samÄ zawartoÅÄ,
              jak plik /proc/[pid]/cwd w katalogu nadrzÄdnym, ponieważ
              wszystkie wÄtki procesu dzielÄ katalog bieżÄcy). Dla
              atrybutów, które dla każdego wÄtku sÄ różne, odpowiednie
              pliki wtask/[tid] mogÄ mieÄ różne wartoÅci (np. różne pola w
              każdym z plików task/[tid]/status mogÄ byÄ inne dla każdego
              wÄtku).

              W procesie wielowÄtkowym zawartoÅÄ katalogu /proc/[pid]/task
              nie jest dostÄpna, jeżeli wÄtek gÅówny już siÄ zakoÅczyÅ
              (najprawdopodobniej wywoÅujÄc pthread_exit(3)).

       /proc/[pid]/timers (od Linuksa 3.10)
              Lista liczników czasu POSIX dla procesu. Każdy licznik jest
              wypisany w wierszu, który rozpoczyna siÄ ÅaÅcuchem "ID:". Na
              przykÅad:

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

              Wiersze dla każdego licznika majÄ nastÄpujÄce znaczenie:

              ID     Identyfikator danego licznika czasu. Nie jest to ten sam
                     identyfikator, co ten zwracany przez timer_create(2),
                     lecz jest to wewnÄtrzjÄdrowy identyfikator dostÄpny
                     również za pomocÄ pola si_timerid struktury siginfo_t
                     (zob. sigaction(2)).

              signal Numer sygnaÅu używany przez dany licznik do dostarczania
                     powiadomieÅ, po którym nastÄpuje ukoÅnik a nastÄpnie
                     wartoÅÄ sigev_value dostarczana do obsÅugiwacza sygnaÅu.
                     Poprawne jedynie dla liczników powiadamiajÄcych za
                     pomocÄ sygnaÅu.

              notify CzÄÅÄ przed ukoÅnikiem okreÅla mechanizm używany przez
                     dany licznik czasu do dostarczania powiadomieÅ, który
                     jest jednÄ z wartoÅci "thread" (wÄtek), "signal" (sygnaÅ)
                     lub "none" (brak). Zaraz po ukoÅniku znajduje siÄ ÅaÅcuch
                     "tid" dla liczników z powiadomieniami SIGEV_THREAD_ID
                     lub "pid" dla liczników z innymi mechanizmami
                     powiadamiania. Po "." znajduje siÄ PID procesu (lub
                     identyfikator wÄtku jÄdra tego wÄtku) któremu bÄdzie
                     dostarczany sygnaÅ, jeÅli licznik czasu powiadamia za
                     pomocÄ sygnaÅu.

              ClockID
                     Pole identyfikuje zegar, którego dany licznik czasu
                     używa do pomiaru czasu. W wiÄkszoÅci zegarów jest to
                     liczba która pasuje do jednej ze staÅych CLOCK_* w
                     przestrzeni użytkownika udostÄpnianych za pomocÄ
                     <time.h>. Liczniki CLOCK_PROCESS_CPUTIME_ID wyÅwietlajÄ
                     tu wartoÅÄ -6, natomiast CLOCK_THREAD_CPUTIME_ID
                     wyÅwietlajÄ wartoÅÄ -2.

              Plik ten jest dostÄpny tylko jeÅli jÄdro skonfigurowano z
              CONFIG_CHECKPOINT_RESTORE.

       /proc/[pid]/uid_map, /proc/[pid]/gid_map (od Linuksa 3.5)
              Zob. user_namespaces(7).

       /proc/[pid]/wchan (od Linuksa 2.6.0)
              Nazwa symboliczna odnoszÄca siÄ do poÅożenia, gdzie proces jest
              w uÅpieniu.

       /proc/apm
              Wersja APM (Zaawansowane zarzÄdzanie energiÄ) oraz informacja o
              akumulatorach, gdy CONFIG_APM byÅo zdefiniowane podczas
              kompilacji jÄdra.

       /proc/buddyinfo
              Plik ten zawiera informacje używane do diagnozowania problemów
              z fragmentacjÄ pamiÄci. Każdy wiersz zaczyna
              siÄ identyfikatorem wÄzÅa i nazwÄ strefy które razem
              identyfikujÄ region pamiÄci. NastÄpnie znajduje siÄ liczba
              dostÄpnych fragmentów okreÅlonego rzÄdu, w jakim te regiony sÄ
              podzielone. Rozmiar w bajtach okreÅlonego rzÄdu jest podany
              wedÅug wzoru:

                  (2^rzÄd) * ROZMIAR_STRONY

              Algorytm alokacji bliźniaków (ang. buddy) wewnÄtrz jÄdra
              podzieli jeden fragment na dwa fragmenty mniejszego rzÄdu (a
              wiÄc dwukrotnie mniejsze) lub poÅÄczy dwa ciÄgÅe fragmenty w
              jeden fragment wyższego rzÄdu (a wiÄc dwukrotnie wiÄkszy) aby
              zaspokoiÄ Å¼Ädanie alokacji i przeciwdziaÅaÄ fragmentacji
              pamiÄci. RzÄd pasuje do numeru kolumny, zaczynajÄc liczenie od
              zera.

              Na przykÅad w systemie x86_64:

  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

              W tym przykÅadzie jest jeden wÄzeÅ zawierajÄcy trzy strefy i 11
              fragmentów o różnych rozmiarach. JeÅli rozmiar strony wynosi
              4 kilobajty, to pierwsza strefa, nazywana DMA (na x86 jest to
              pierwszych 16 megabajtów pamiÄci), ma dostÄpny m.in. jeden
              fragment o rozmiarze 4 kilobajtów (rzÄd 0) i 3 fragmenty o
              rozmiarze 4 megabajtów (rzÄd 10).

              JeÅli pamiÄÄ jest mocno pofragmentowana, liczniki dla
              fragmentów wyższego rzÄdu wyniosÄ zero, a przydzielenie
              wiÄkszych, ciÄgÅych powierzchni nie powiedzie siÄ.

              WiÄcej informacji o strefach można znaleÅºÄ w /proc/zoneinfo.

       /proc/bus
              Zawiera podkatalogi odpowiadajÄce zainstalowanym magistralom.

       /proc/bus/pccard
              Podkatalog dla urzÄdzeÅ PCMCIA, gdy CONFIG_PCMCIA byÅo
              zdefiniowane podczas kompilacji jÄdra.

       /proc/bus/pccard/drivers

       /proc/bus/pci
              Zawiera różne podkatalogi magistral oraz pseudopliki
              zawierajÄce informacje o magistralach PCI, zainstalowanych
              urzÄdzeniach oraz sterownikach urzÄdzeÅ. Niektóre z tych
              plików nie sÄ w postaci ASCII.

       /proc/bus/pci/devices
              Informacje o urzÄdzeniach PCI. DostÄp do nich może siÄ odbywaÄ
              poprzez lspci(8) i setpci(8).

       /proc/cmdline
              Argumenty przekazane jÄdru Linux podczas startu systemu.
              Zazwyczaj odbywa siÄ to poprzez zarzÄdcÄ startu systemu, takiego
              jak lilo(8) lub grub(8).

       /proc/config.gz (od Linuksa 2.6)
              Plik pokazuje opcje konfiguracyjne, które byÅy użyte do
              zbudowania aktualnie dziaÅajÄcego jÄdra, w tym samym formacie,
              jaki jest używany przez plik .config, który jest wynikiem
              konfiguracji jÄdra (używajÄc make xconfig, make config i
              podobnych poleceÅ). ZawartoÅÄ pliku jest skompresowana; można
              jÄ odczytaÄ lub wyszukaÄ za pomocÄ zcat(1) i zgrep(1). Tak dÅugo
              jak nie zostaÅy dokonane zmiany w poniższym pliku, zawartoÅÄ
              /proc/config.gz jest taka sama jak ta udostÄpniona przez:

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

              /proc/config.gz jest udostÄpniany wyÅÄcznie wtedy, gdy jÄdro
              jest skonfigurowane z CONFIG_IKCONFIG_PROC.

       /proc/crypto
              Lista szyfrów udostÄpnianych przez API szyfrowania jÄdra.
              WiÄcej szczegóÅów znajduje siÄ w dokumentacji jÄdra Linux
              Kernel Crypto API dostÄpnej w katalogu źródeÅ jÄdra
              Documentation/DocBook (można jÄ zbudowaÄ np. poleceniem make
              htmldocs wydanym w gÅównym katalogu drzewa źródeÅ jÄdra).

       /proc/cpuinfo
              Jest to zbiór elementów zależnych od CPU i architektury
              systemu; dla każdej wspieranej architektury jest inna lista.
              Dwa popularne wpisy to: processor, który udostÄpnia numer CPU
              oraz bogomips; jest to staÅa systemowa, wyliczona podczas
              inicjalizacji jÄdra. Maszyny SMP zawierajÄ informacje o każdym
              z procesorów. Polecenie lscpu(1) zbiera ich informacje z tego
              pliku.

       /proc/devices
              Listing tekstowy numerów gÅównych oraz grup urzÄdzeÅ. Może to
              sÅużyÄ skryptom MAKEDEV do zachowania spójnoÅci z jÄdrem.

       /proc/diskstats (od wersji Linuksa 2.5.69)
              Plik zawiera statystyki operacji wejÅcia/wyjÅcia dla każdego
              urzÄdzenia dyskowego. Dalsze informacje można znaleÅºÄ w pliku
              Documentation/iostats.txt w źródÅach jÄdra Linux.

       /proc/dma
              Jest listÄ zarejestrowanych i używanych kanaÅów DMA (direct
              memory access) szyny ISA.

       /proc/driver
              Pusty podkatalog.

       /proc/execdomains
              Lista domen uruchamiania (wcieleÅ ABI [Application Binary
              Interface - przyp. tÅum.]).

       /proc/fb
              Informacje o buforze ramki, o ile podczas kompilacji jÄdra
              zdefiniowano CONFIG_FB.

       /proc/filesystems
              Tekstowa lista systemów plików obsÅugiwanych przez jÄdro, a
              konkretnie systemów plików, które zostaÅy wkompilowane w
              jÄdro lub których moduÅy jÄdra sÄ obecnie zaÅadowane (patrz
              również filesystems(5)). JeÅli system plików jest oznaczony
              jako "nodev" oznacza to, że nie wymaga on zamontowania
              urzÄdzenia blokowego (np. jest to wirtualny lub sieciowy system
              plików).

              Plik ten może byÄ niekiedy użyty przez mount(8), gdy nie
              podano systemów plików i nie potrafi on okreÅliÄ typu systemu
              plików. Próbowane sÄ wówczas systemy plików wypisane w tym
              pliku (poza systemami z oznaczeniem "nodev").

       /proc/fs
              Zawiera podkatalogi, które w kolejnoÅci zawierajÄ pliki z
              informacjami o (pewnych) zamontowanych systemach plików.

       /proc/ide
              Katalog ten istnieje w systemach zawierajÄcych magistralÄ IDE.
              Zawiera po jednym katalogu dla każdego kanaÅu IDE oraz dla
              przyÅÄczonych urzÄdzeÅ. WÅród plików sÄ:

                  cache              rozmiar bufora w KB
                  capacity           liczba sektorów
                  driver             wersja sterownika
                  geometry           geometria fizyczna i logiczna
                  identify           szesnastkowo
                  media              rodzaj noÅnika
                  model              numer modelu producenta
                  settings           ustawienia napÄdu
                  smart_thresholds   szesnastkowo
                  smart_values       szesnastkowo

              DostÄp do tych informacji w przyjaznym formacie umożliwia
              program narzÄdziowy hdparm(8).

       /proc/interrupts
              Plik jest używany do zapisania liczby przerwaŠna procesor na
              urzÄdzenie wejÅcia/wyjÅcia. Od Linuksa 2.6.24, przynajmniej do
              architektur i386 i x86_64 zawiera on również przerwania
              wewnÄtrznosystemowe (to znaczy nie zwiÄzane z urzÄdzeniem jako
              takim), takie jak NMI (nonmaskable interrupt), LOC (local timer
              interrupt) i do systemów SMP: TLB (TLB flush interrupt), RES
              (rescheduling interrupt), CAL (remote function call interrupt),
              mogÄ również wystÄpowaÄ inne. Formatowanie jest bardzo
              czytelne do odczytu, wykonane w ASCII.

       /proc/iomem
              Odwzorowanie portów we/wy w pamiÄci w Linuksie 2.4.

       /proc/ioports
              Jest to lista obecnie zarejestrowanych i używanych obszarów
              portów we/wy.

       /proc/kallsyms (od wersji Linuksa 2.5.71)
              Zawiera wyeksportowane przez jÄdro definicje symboli, które sÄ
              używane przez narzÄdzia modules(X) do dynamicznego podÅÄczania
              Åadowanych moduÅów. W wersji jÄdra Linux 2.5.47 i
              wczeÅniejszych podobny plik z troszkÄ odmiennÄ zawartoÅciÄ byÅ
              nazwany ksyms.

       /proc/kcore
              Plik ten reprezentuje pamiÄÄ fizycznÄ systemu i jest zachowany w
              formacie pliku core dla ELF. KorzystajÄc z tego pseudopliku oraz
              z niezestripowanego binarnego pliku jÄdra
              (/usr/src/linux/vmlinux), można za pomocÄ GDB testowaÄ aktualny
              stan dowolnej struktury danych jÄdra.

              CaÅkowity rozmiar tego pliku to rozmiar fizycznej pamiÄci (RAM)
              plus 4 KB.

       /proc/kmsg
              Plik ten może sÅużyÄ do odczytu komunikatów jÄdra, zamiast
              funkcji systemowej syslog(2). Aby odczytaÄ ten plik, proces musi
              mieÄ uprawnienia superużytkownika i tylko jeden proces powinien
              dokonywaÄ jego odczytu. Pliku tego nie należy czytaÄ, gdy
              dziaÅa proces syslog, korzystajÄcy z funkcji systemowej
              syslog(2) do rejestrowania komunikatów jÄdra.

              Z tego pliku pobiera komunikaty program dmesg(1).

       /proc/kpagecount (od Linuksa 2.6.25)
              Plik zawiera 64-bitowy licznik wskazujÄcy ile razy zmapowano
              każdÄ z ramek strony fizycznej, indeksowanÄ numerem ramki
              strony (zob. opis w /proc/[pid]/pagemap).

              Plik /proc/kpagecount istnieje tylko jeÅli podczas kompilacji
              jÄdra wÅÄczono opcjÄ CONFIG_PROC_PAGE_MONITOR.

       /proc/kpageflags (od Linuksa 2.6.25)
              Plik zawiera 64-bitowe maski odpowiadajÄce każdej z ramek
              strony fizycznej; indeksowanej numerem ramki strony (zob. opis w
              /proc/[pid]/pagemap). Oto zestawienie poszczególnych bitów:

                   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           (od Linuksa 2.6.31)
                  12 - KPF_ANON           (od Linuksa 2.6.31)
                  13 - KPF_SWAPCACHE      (od Linuksa 2.6.31)
                  14 - KPF_SWAPBACKED     (od Linuksa 2.6.31)
                  15 - KPF_COMPOUND_HEAD  (od Linuksa 2.6.31)
                  16 - KPF_COMPOUND_TAIL  (od Linuksa 2.6.31)
                  16 - KPF_HUGE           (od Linuksa 2.6.31)
                  18 - KPF_UNEVICTABLE    (od Linuksa 2.6.31)
                  19 - KPF_HWPOISON       (od Linuksa 2.6.31)
                  20 - KPF_NOPAGE         (od Linuksa 2.6.31)
                  21 - KPF_KSM            (od Linuksa 2.6.32)
                  22 - KPF_THP            (od Linuksa 3.4)

              WiÄcej informacji o znaczeniu tych bitów znajduje siÄ w pliku
              źródeÅ jÄdra Documentation/vm/pagemap.txt.  Przed
              wersjÄ 2.6.29 jÄdra KPF_WRITEBACK, KPF_RECLAIM, KPF_BUDDY i
              KPF_LOCKED nie byÅy poprawnie zgÅaszane.

              Plik /proc/kpageflags istnieje tylko jeÅli podczas kompilacji
              jÄdra wÅÄczono opcjÄ CONFIG_PROC_PAGE_MONITOR.

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

       /proc/loadavg
              Pierwsze trzy pola w tym pliku zawierajÄ Årednie obciÄżenie
              (loadavg) podajÄc informacjÄ o Åredniej liczbie zadaÅ
              uruchomionych (stan R) oraz czekajÄcych na dyskowe operacje
              wejÅcia/wyjÅcia (stan D)  w ciÄgu ostatnich 1, 5  i 15 minut. SÄ
              to te same wartoÅci Åredniego obciÄżenia, które podaje
              uptime(1) i inne programy. Czwarte pole zawiera dwie liczby
              oddzielone od siebie znakiem ukoÅnika (/). Pierwsza z nich jest
              liczbÄ obecnie wykonywanych zadaÅ (procesów, wÄtków). WartoÅÄ
              za ukoÅnikiem jest liczbÄ zadaÅ, obecnych w systemie. PiÄte pole
              zawiera PID najnowszego ostatnio utworzonego procesu w systemie.

       /proc/locks
              Plik ten pokazuje aktualne blokady plików (flock(2) i fcntl(2))
              oraz dzierżawy (fcntl(2)).

       /proc/malloc (tylko do wersji 2.2 Linuksa wÅÄcznie)
              Ten plik istnieje tylko jeÅli podczas kompilacji zdefiniowano
              CONFIG_DEBUG_MALLOC.

       /proc/meminfo
              Plik zawiera statystyki nt. użycia pamiÄci w systemie. Używa
              go free(1) do wskazania wielkoÅci wolnej i użytej pamiÄci
              (zarówno fizycznej jak i wymiany) w systemie jak również
              pamiÄci dzielonej i buforów używanych przez jÄdro. Każdy
              wiersz skÅada siÄ z nazwy parametru, dwukropka, wartoÅci
              parametru i opcjonalnej jednostki pomiaru (np. "kB"). Poniższa
              lista opisuje nazwy parametrów i format wymagany do odczytu
              wartoÅci pól. Z wyjÄtkiem wyraźnie wskazanych pól, wszystkie
              sÄ obecne od co najmniej Linuksa 2.6.0. CzÄÅÄ pól jest
              wyÅwietlanych tylko jeÅli jÄdro zostaÅo skonfigurowane z pewnymi
              opcjami, te zależnoÅci zaznaczono wówczas w opisie.

              MemTotal %lu
                     CaÅkowity użyteczny RAM (tzn. pamiÄÄ fizyczna RAM -
                     kilka zarezerwowanych bitów i kod binarny jÄdra).

              MemFree %lu
                     Suma LowFree+HighFree.

              MemAvailable %lu (od Linuksa 3.14)
                     Przybliżona wartoÅÄ dostÄpnej pamiÄci do uruchamiania
                     nowych aplikacji, bez pamiÄci wymiany.

              Buffers %lu
                     Relatywnie tymczasowe miejsce przechowywania surowych
                     bloków dyskowych które nie powinno byÄ zbyt duże
                     (rzÄdu 20 MB).

              Cached %lu
                     Bufor w pamiÄci przeznaczony na plik odczytane z dysku
                     (bufora strony). Nie obejmuje SwapCached.

              SwapCached %lu
                     PamiÄÄ, która zostaÅa przeniesiona do pamiÄci wymiany
                     jest później pobierana do pamiÄci i pozostawiana
                     jednoczeÅnie w pliku wymiany (jeÅli jest duże
                     zapotrzebowanie na pamiÄÄ, te strony nie muszÄ byÄ
                     ponownie przenoszone do pamiÄci wymiany, ponieważ już
                     znajdujÄ siÄ w pliku wymiany. Unika siÄ w ten sposób
                     zbÄdnych operacji wejÅcia/wyjÅcia).

              Active %lu
                     PamiÄÄ która byÅa ostatnio używana. Z reguÅy nie jest
                     odzyskiwana poza absolutnie koniecznymi przypadkami.

              Inactive %lu
                     PamiÄÄ która byÅa ostatnio sÅabiej używana. Nadaje siÄ
                     w wiÄkszym stopniu do odzyskania do innych celów.

              Active(anon) %lu (od Linuksa 2.6.28)
                     [do udokumentowania]

              Inactive(anon) %lu (od Linuksa 2.6.28)
                     [do udokumentowania]

              Active(file) %lu (od Linuksa 2.6.28)
                     [do udokumentowania]

              Inactive(file) %lu (od Linuksa 2.6.28)
                     [do udokumentowania]

              Unevictable %lu (od Linuksa 2.6.28)
                     (Od Linuksa 2.6.28 do 2.6.30 wymagane byÅo
                     CONFIG_UNEVICTABLE_LRU)  [do udokumentowania]

              Mlocked %lu (od Linuksa 2.6.28)
                     (Od Linuksa 2.6.28 do 2.6.30 wymagane byÅo
                     CONFIG_UNEVICTABLE_LRU)  [do udokumentowania]

              HighTotal %lu
                     (od Linuksa 2.6.19 wymagane jest CONFIG_HIGHMEM)
                     CaÅkowita wielkoÅÄ pamiÄci highmem. Jest to pamiÄÄ
                     powyżej ~860MB pamiÄci fizycznej. Obszary highmem sÄ
                     przeznaczone do użycia przez programy w przestrzeni
                     użytkownika lub przez bufor strony. JÄdro musi używaÄ
                     pewnych sztuczek aby uzyskaÄ dostÄp do tej pamiÄci, co
                     czyni dostÄp wolniejszym niż do pamiÄci lowmem.

              HighFree %lu
                     (od Linuksa 2.6.19 wymagane jest CONFIG_HIGHMEM) WielkoÅÄ
                     wolnej pamiÄci highmem.

              LowTotal %lu
                     (od Linuksa 2.6.19 wymagane jest CONFIG_HIGHMEM) WielkoÅÄ
                     caÅkowita pamiÄci lowmem. Lowmem to pamiÄÄ którÄ można
                     użyÄ do tych samych celów co highmem, lecz jest
                     również dostÄpna dla wewnÄtrznych struktur danych
                     jÄdra. Jest to miÄdzy innymi miejsce, gdzie przydzielane
                     jest wszystko ze Slab. Gdy zabraknie pamiÄci lowmem
                     należy siÄ spodziewaÄ zÅych wiadomoÅci.

              LowFree %lu
                     (od Linuksa 2.6.19 wymagane jest CONFIG_HIGHMEM) WielkoÅÄ
                     wolnej pamiÄci lowmem.

              MmapCopy %lu (od Linuksa 2.6.29)
                     (wymagane jest CONFIG_MMU)  [do udokumentowania]

              SwapTotal %lu
                     CaÅkowita wielkoÅÄ dostÄpnej pamiÄci wymiany.

              SwapFree %lu
                     WielkoÅÄ aktualnie nieużywanej pamiÄci wymiany.

              Dirty %lu
                     PamiÄÄ czekajÄca na ponowny zapis na dysk.

              Writeback %lu
                     PamiÄÄ zapisywana obecnie na dysk.

              AnonPages %lu (od Linuksa 2.6.18)
                     Strony nie majÄce zapasu w postaci pliku zmapowane do
                     tabel stron w przestrzeni użytkownika.

              Mapped %lu
                     Pliki które zostaÅy zmapowane do pamiÄci (za pomocÄ
                     mmap(2)) np. biblioteki.

              Shmem %lu (od Linuksa 2.6.32)
                     [do udokumentowania]

              Slab %lu
                     WewnÄtrzny bufor jÄdra przeznaczony na jego struktury
                     danych.

              SReclaimable %lu (od Linuksa 2.6.19)
                     CzÄÅÄ Slab, która może byÄ przypisana ponownie, taka
                     jak pamiÄÄ podrÄczna.

              SUnreclaim %lu (od Linuksa 2.6.19)
                     CzÄÅÄ Slab niemogÄca byÄ przypisana ponownie przy maÅej
                     iloÅci pamiÄci.

              KernelStack %lu (od Linuksa 2.6.32)
                     WielkoÅÄ pamiÄci przypisana do stosów jÄdra.

              PageTables %lu (od Linuksa 2.6.18)
                     WielkoÅÄ pamiÄci przypisana do najniższego poziomu tabel
                     stron.

              Quicklists %lu (od Linuksa 2.6.27)
                     (wymagane jest CONFIG_QUICKLIST)  [do udokumentowania]

              NFS_Unstable %lu (od Linuksa 2.6.18)
                     Strony NFS wysÅane do serwera, lecz jeszcze nie
                     wprowadzone na stabilny noÅnik.

              Bounce %lu (od Linuksa 2.6.18)
                     PamiÄÄ używana do urzÄdzenia blokowego "bounce buffer".

              WritebackTmp %lu (od Linuksa 2.6.26)
                     PamiÄÄ używana przez FUSE do tymczasowych buforów
                     pamiÄci z buforowaniem zapisu.

              CommitLimit %lu (od Linuksa 2.6.10)
                     Jest to caÅkowita wielkoÅÄ pamiÄci dostÄpnej obecnie do
                     przydzielenia w systemie wyrażona w kilobajtach. Limit
                     jest przestrzegany jedynie gdy wÅÄczono ÅcisÅe
                     rozliczanie overcommitu (tryb 2 w
                     /proc/sys/vm/overcommit_memory). Limit jest obliczany na
                     podstawie wzoru opisanego przy
                     /proc/sys/vm/overcommit_memory.  WiÄcej informacji
                     znajduje siÄ w pliku źródeÅ jÄdra
                     Documentation/vm/overcommit-accounting.

              Committed_AS %lu
                     WielkoÅÄ pamiÄci obecnie przypisanej w systemie. Jest to
                     suma pamiÄci zaalokowanej przez procesy, nawet jeÅli jej
                     jeszcze nie "użyÅy". Proces alokujÄcy 1 GB pamiÄci (za
                     pomocÄ malloc(3) lub podobnej konstrukcji), używajÄcy
                     jedynie 300 MB pamiÄci, bÄdzie pokazywaÅ użycie tych 300
                     MB pamiÄci, nawet jeÅli przydzieliÅ przestrzeÅ adresowÄ
                     dla caÅego 1 GB.

                     Ten 1 GB to pamiÄÄ "zatwierdzona" przez VM, która może
                     byÄ użyta przez tÄ aplikacjÄ w dowolnym czasie. Gdy
                     wÅÄczone jest ÅcisÅy overcommit (tryb 2 w
                     /proc/sys/vm/overcommit_memory) alokacja która
                     przekroczyÅaby CommitLimit jest niedozwolona. Jest to
                     przydatne do zagwarantowania, że proces nie zawiedzie z
                     powodu braku pamiÄci po jej poprawnym przydzieleniu.

              VmallocTotal %lu
                     CaÅkowity rozmiar obszaru pamiÄci vmalloc.

              VmallocUsed %lu
                     WielkoÅÄ używanego obszaru vmalloc.

              VmallocChunk %lu
                     NajwiÄkszy wolny ciÄgÅy blok obszaru vmalloc.

              HardwareCorrupted %lu (od Linuksa 2.6.32)
                     (wymagane jest CONFIG_MEMORY_FAILURE)  [do
                     udokumentowania]

              AnonHugePages %lu (od Linuksa 2.6.38)
                     (wymagane jest CONFIG_TRANSPARENT_HUGEPAGE) Duże strony
                     nie majÄce zapasu w postaci pliku zmapowane do tabel
                     stron w przestrzeni użytkownika.

              CmaTotal %lu (od Linuksa 3.1)
                     ÅÄcznie stron CMA (Contiguous Memory Allocator) (wymagane
                     jest CONFIG_CMA).

              CmaFree %lu (od Linuksa 3.1)
                     Wolne strony CMA (Contiguous Memory Allocator) (wymagane
                     jest CONFIG_CMA)

              HugePages_Total %lu
                     (wymagane jest CONFIG_HUGETLB_PAGE) Rozmiar puli dużych
                     stron.

              HugePages_Free %lu
                     (wymagane jest CONFIG_HUGETLB_PAGE) Liczba dużych stron
                     w puli, które nie sÄ jeszcze przydzielone.

              HugePages_Rsvd %lu (od Linuksa 2.6.17)
                     (wymagane jest CONFIG_HUGETLB_PAGE) Jest to liczba
                     dużych stron które przeznaczono do przydzielenia z
                     puli, lecz jeszcze jej nie przeprowadzono. Zarezerwowane
                     duże strony gwarantujÄ, że aplikacja bÄdzie w stanie
                     przypisaÄ takÄ stronÄ w razie bÅÄdu.

              HugePages_Surp %lu (od Linuksa 2.6.24)
                     (wymagane jest CONFIG_HUGETLB_PAGE) Jest to liczba
                     dużych stron z puli powyżej wartoÅci
                     /proc/sys/vm/nr_hugepages. Maksymalna liczba nadwyżki
                     dużych stron jest kontrolowana przez
                     /proc/sys/vm/nr_overcommit_hugepages.

              Hugepagesize %lu
                     (wymagane jest CONFIG_HUGETLB_PAGE) Rozmiar dużych
                     stron.

              DirectMap4k %lu (od Linuksa 2.6.27)
                     Liczba bajtów RAM-u liniowo przypisanych przez jÄdro w
                     stronach 4kB (x86).

              DirectMap4M %lu (od Linuksa 2.6.27)
                     Liczba bajtów RAM-u liniowo przypisanych przez jÄdro w
                     stronach 4MB (x86 z wÅÄczonym CONFIG_X86_64 lub
                     CONFIG_X86_PAE).

              DirectMap2M %lu (od Linuksa 2.6.27)
                     Liczba bajtów RAM-u liniowo przypisanych przez jÄdro w
                     stronach 2MB (x86 bez wÅÄczonego CONFIG_X86_64 ani
                     CONFIG_X86_PAE).

              DirectMap1G %lu (od Linuksa 2.6.27)
                     (x86 z wÅÄczonym CONFIG_X86_64 i
                     CONFIG_X86_DIRECT_GBPAGES)

       /proc/modules
              Tekstowa lista moduÅów, które zaÅadowano w systemie. Zobacz
              także lsmod(8).

       /proc/mounts
              Przed jÄdrem 2.4.19 plik ten byÅ listÄ wszystkich systemów
              plików zamontowanych aktualnie w systemie. Wraz z wprowadzeniem
              przestrzeni nazw montowaÅ przydzielanych dla procesu w Linuksie
              2.4.19, plik ten staÅ siÄ dowiÄzaniem do /proc/self/mounts,
              który zawiera listÄ punktów montowaÅ we wÅasnej przestrzeni
              nazw montowaÅ procesu. Format tego pliku jest opisany w
              fstab(5).

       /proc/mtrr
              Memory Type Range Registers. SzczegóÅy można znaleÅºÄ w pliku
              źródeÅ jÄdra Linux Documentation/mtrr.txt.

       /proc/net
              Różne sieciowe pseudopliki, z których wszystkie podajÄ stan
              pewnej czÄÅci warstwy sieciowej. Plik ten zawiera struktury
              ASCII i dlatego nadaje siÄ do odczytu za pomocÄ cat(1). Jednak
              standardowy pakiet netstat(8) daje dużo czystszy dostÄp do tych
              plików.

       /proc/net/arp
              Zawiera zrzut tabeli ARP jÄdra używanej do rozwiÄzywania
              adresów, w czytelnej postaci ASCII. Pokazane zostanÄ zarówno
              wyuczone dynamicznie, jak i wstÄpnie zaprogramowane wpisy w
              tabeli ARP. Format jest nastÄpujÄcy:

        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

              Gdzie "IP address" jest adresem IPv4 maszyny, a "HW type" jest
              rodzajem sprzÄtu wg RFC 826. "Flags" sÄ to wewnÄtrzne znaczniki
              struktury ARP (zdefiniowane w /usr/include/linux/if_arp.h), a
              "HW address" jest odwzorowaniem adresu IP w warstwie fizycznej,
              jeÅli jest ono okreÅlone.

       /proc/net/dev
              Pseudoplik dev zawiera informacje o stanie urzÄdzenia
              sieciowego. ZawierajÄ one liczbÄ otrzymanych i wysÅanych
              pakietów, liczbÄ bÅÄdów i kolizji oraz inne podstawowe
              statystyki. Informacje te sÄ wykorzystywane przez program
              ifconfig(8) do informowania o stanie urzÄdzenia. Format jest
              nastÄpujÄcy:

 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
              Zdefiniowany w /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
              Internetowy ProtokóŠZarzÄdzania Grupami. Zdefiniowany w
              /usr/src/linux/net/core/igmp.c.

       /proc/net/rarp
              Plik ten ma ten sam format, co plik arp i zawiera aktualnÄ bazÄ
              odwrotnych odwzorowaÅ, używanÄ do udostÄpniania usÅug
              odwrotnego poszukiwania adresów rarp(8). JeÅli RARP nie jest
              skonfigurowane w jÄdrze, to plik ten nie bÄdzie istniaÅ.

       /proc/net/raw
              Zawiera zrzut tabeli gniazd surowych (RAW). WiÄkszoÅÄ informacji
              nie jest przeznaczona do użytku innego niż odpluskwiania.
              WartoÅÄ "sl" jest slotem mieszania jÄdra dla gniazda,
              "local_address" jest parÄ skÅadajÄcÄ siÄ z lokalnego adresu i
              numeru protokoÅu. "st" jest stanem wewnÄtrznym gniazda.
              "tx_queue" i "rx_queue" sÄ kolejkami danych przychodzÄcych i
              wychodzÄcych, w sensie zużycia pamiÄci jÄdra. Pola "tr",
              "tm->when" i "rexmits" nie sÄ używane przez gniazda surowe.
              Pole "uid" zawiera efektywny UID twórcy gniazda.

       /proc/net/snmp
              Ten plik zawiera dane ASCII potrzebne bazom agenta SNMP
              zarzÄdzajÄcym informacjami o IP, ICMP, TCP i UDP.

       /proc/net/tcp
              Zawiera zrzut tabeli gniazd TCP. Wiele informacji nie przydaje
              siÄ do użytku poza odpluskwianiem. WartoÅÄ "sl" jest slotem
              mieszania jÄdra dla gniazda, "local_address" jest parÄ
              skÅadajÄcÄ siÄ z lokalnego adresu i numeru portu. "rem_address"
              jest parÄ skÅadajÄcÄ siÄ ze zdalnego adresu i numeru portu
              (jeÅli gniazdo jest podÅÄczone). "St" jest stanem wewnÄtrznym
              gniazda. "tx_queue" i "rx_queue" sÄ kolejkami danych
              przychodzÄcych i wychodzÄcych w sensie zużycia pamiÄci jÄdra.
              Pola "tr", "tm-when" i "rexmits" zawierajÄ wewnÄtrzne informacje
              o stanie gniazda w jÄdrze i sÄ przydatne tylko do odpluskwiania.
              Pole "uid" zawiera efektywny UID twórcy gniazda.

       /proc/net/udp
              Zawiera zrzut tabeli gniazd UDP. Wiele informacji nie przydaje
              siÄ do użytku poza odpluskwianiem. WartoÅÄ "sl" jest slotem
              mieszania jÄdra dla gniazda, "local_address" jest parÄ
              skÅadajÄcÄ siÄ z lokalnego adresu i numeru portu. "rem_address"
              jest parÄ skÅadajÄcÄ siÄ ze zdalnego adresu i numeru portu
              (jeÅli gniazdo jest podÅÄczone). "st" jest stanem wewnÄtrznym
              gniazda. "tx_queue" i "rx_queue" sÄ kolejkami danych
              przychodzÄcych i wychodzÄcych w sensie zużycia pamiÄci jÄdra.
              Pola "tr", "tm-when" i "rexmits" nie sÄ używane w gniazdach
              UDP. Pole "uid" zawiera efektywny UID twórcy gniazda. Format
              jest nastÄpujÄcy:

 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
              Wymienia gniazda domeny UNIX, obecne w systemie oraz ich stan.
              Format jest nastÄpujÄcy:
              Num RefCount Protocol Flags    Type St Path
               0: 00000002 00000000 00000000 0001 03
               1: 00000001 00000000 00010000 0001 01 /dev/printer

              WystÄpujÄ nastÄpujÄce pola:

              Num:      numer slotu tabeli jÄdra.

              RefCount: numer użytkowników gniazda.

              Protocol: obecnie zawsze 0.

              Flags:    wewnÄtrzne flagi jÄdra przechowujÄce status gniazda.

              Type:     typ gniazda. Dla gniazd SOCK_STREAM jest to 0001; dla
                        gniazd SOCK_DGRAM jest to 0002, a dla gniazd
                        SOCK_SEQPACKET jest to 0005.

              St:       wewnÄtrzny stan gniazda.

              Path:     Åcieżka powiÄzana z gniazdem (jeÅli wystÄpuje). W tej
                        liÅcie sÄ uwzglÄdnione Åcieżki bÄdÄce w abstrakcyjnej
                        przestrzeni nazw — ich Path zaczyna siÄ znakiem "@".

       /proc/net/netfilter/nfnetlink_queue
              Plik zawiera informacji o kolejkowaniu netfilter w przestrzeni
              użytkownika. Każdy wiersz reprezentuje kolejkÄ. Kolejki które
              nie zostaÅy wpisane z przestrzeni użytkownika nie
              sÄ pokazywane.

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

              Pola w każdym wierszu sÄ nastÄpujÄce:

              (1)  Identyfikator kolejki. Pasuje on do tego co okreÅlono w
                   opcjach --queue-num lub --queue-balance do celu NFQUEUE
                   iptables(8). Zob. iptables-extensions(8) aby uzyskaÄ wiÄcej
                   informacji.

              (2)  Identyfikator portu netlink zapisanego do kolejki.

              (3)  Liczba pakietów obecnie zakolejkowanych i czekajÄcych na
                   przetworzenie przez aplikacjÄ.

              (4)  Tryb kopiowania kolejki. Jest to albo (tylko metadane) lub
                   2 (kopiuje również wÅaÅciwe dane do przestrzeni
                   użytkownika).

              (5)  Zakres kopii, tj. maksymalna wartoÅÄ bajtów pakietu
                   wÅaÅciwych danych jaka powinna byÄ skopiowana do
                   przestrzeni użytkownika.

              (6)  Porzucone kolejki. Liczba pakietów, które musiaÅy
                   zostaÄ porzucone przez jÄdra, ponieważ zbyt dużo
                   pakietów czekaÅo już na przestrzeÅ użytkownika na
                   odesÅanie obowiÄzkowych poleceÅ akceptuj/porzuÄ.

              (7)  Porzucone kolejki użytkownika. Liczba pakietów
                   porzuconych wewnÄtrz podsystemu netlink. Takie porzucenia
                   nastÄpujÄ zwykle przy zapeÅnieniu odpowiedniego bufora
                   gniazda, tj. przestrzeŠużytkownika nie jest w stanie
                   odpowiednio szybko odczytywaÄ wiadomoÅci.

              (8)  Numer sekwencji. Każdy pakiet kolejki jest powiÄzany z
                   (32-bitowym) monotonicznie rosnÄcym numerem sekwencji.
                   Pokazuje to ID najnowszego skolejkowanego pakietu.

              Ostatnia liczba istnieje tylko z powodów kompatybilnoÅci i
              wynosi zawsze 1.

       /proc/partitions
              Zawiera liczby gÅówne i poboczne każdej z partycji oraz liczby
              1024-bajtowych bloków i nazwy partycji.

       /proc/pci
              Listing wszystkich urzÄdzeÅ PCI znalezionych podczas
              inicjalizacji jÄdra i ich konfiguracja.

              Plik zostaÅ zastÄpiony nowym interfejsem /proc do PCI
              (/proc/bus/pci). StaÅ siÄ opcjonalny w Linuksie 2.2 (dostÄpny
              przy ustawieniu opcji CONFIG_PCI_OLD_PROC przy kompilacji
              jÄdra). Ponownie staÅ siÄ nieopcjonalny w Linuksie 2.4.
              NastÄpnie, zostaÅ uznany za przestarzaÅy w Linuksie 2.6 (byÅ
              wciÄż dostÄpny przy ustawieniu CONFIG_PCI_LEGACY_PROC), aż w
              koÅcu usuniÄto go w Linuksie 2.6.17.

       /proc/profile (od Linuksa 2.4)
              Plik obecny jest wyÅÄcznie jeÅli jÄdro zostaÅo uruchomione z
              opcjÄ profile=1 wiersza poleceÅ. JÄdro udostÄpni informacje
              dotyczÄce profilowania w formacie binarnym gotowym do użycia
              przez readprofile(1). Zapis (np. pustego ÅaÅcucha) do tego pliku
              wyzeruje liczniki profilowania, a na niektórych architekturach
              zapis binarnej liczby caÅkowitej "mnożnika profilowania"
              rozmiaru sizeof(int) ustawi czÄstotliwoÅÄ przerwaÅ profilowania.

       /proc/scsi
              Katalog z pseudoplikiem scsi na poÅrednim poziomie i różnymi
              podkatalogami niskopoziomowych sterowników SCSI, zawierajÄcymi
              po jednym pliku dla każdego kontrolera SCSI w danym systemie;
              każdy z nich podaje stan jakiejÅ czÄÅci podsystemu we/wy SCSI.
              Pliki te zawierajÄ struktury ASCII i dlatego nadajÄ siÄ do
              odczytu za pomocÄ cat(1).

              Możliwy jest też zapis do niektórych z tych plików, w celu
              rekonfiguracji podsystemu, lub przeÅÄczania różnych
              parametrów.

       /proc/scsi/scsi
              Jest wypisaniem wszystkich znanych jÄdru urzÄdzeÅ SCSI. Listing
              jest podobny do widzianego podczas Åadowania systemu. scsi
              wspiera obecnie tylko polecenie add-single-device umożliwiajÄce
              rootowi dodanie do listy znanych urzÄdzeÅ urzÄdzenia wÅÄczonego
              na gorÄco.

              Polecenie

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

              spowoduje, że kontroler scsi1 przeprowadzi skanowanie kanaÅu
              SCSI 0 w poszukiwaniu urzÄdzenia o ID 5 i LUN 0. JeÅli już
              istnieje urzÄdzenie o takim adresie, lub adres jest
              nieprawidÅowy, zostanie zwrócony bÅÄd.

       /proc/scsi/[nazwa-sterownika]
              [nazwa-sterownika] może obecnie byÄ jednÄ z: NCR53c7xx,
              aha152x, aha1542, aha1740, aic7xxx, buslogic, eata_dma,
              eata_pio, fdomain, in2000, pas16, qlogic, scsi_debug, seagate,
              t128, u15-24f, ultrastore, or wd7000. UkazujÄ siÄ te z
              katalogów, dla których odpowiednie sterowniki zarejestrowaÅy
              przynajmniej jeden kontroler SCSI. Każdy katalog zawiera jeden
              plik dla każdego zarejestrowanego kontrolera. Każdy z plików
              kontrolera ma nazwÄ odpowiadajÄcÄ numerowi kontrolera,
              przyznanemu podczas jego inicjacji.

              Czytanie tych plików zwykle pokaże konfiguracjÄ sterownika i
              kontrolera, statystyki itp.

              Pisanie do tych plików umożliwia różne operacje na różnych
              kontrolerach. Na przykÅad za pomocÄ poleceÅ latency i nolatency
              root może uaktywniaÄ lub deaktywowaÄ kod pomiaru czasu
              oczekiwania dla poleceÅ (command latency) w sterowniku eata_dma.
              Za pomocÄ poleceÅ lockup i unlock root może sterowaÄ
              symulowanym przez sterownik scsi_debug blokowaniem magistrali.

       /proc/self
              Ten katalog odnosi siÄ do procesu korzystajÄcego z systemu
              plików /proc i jest identyczny z katalogiem w /proc o nazwie
              bÄdÄcej jego PID-em.

       /proc/slabinfo
              Informacje o buforach jÄdra. Od Linuksa 2.6.16 plik ten istnieje
              tylko jeÅli podczas kompilacji jÄdra wÅÄczono opcjÄ CONFIG_SLAB.
              WystÄpujÄ nastÄpujÄce kolumny w pliku /proc/slabinfo:

                  cache-name
                  num-active-objs
                  total-objs
                  object-size
                  num-active-slabs
                  total-slabs
                  num-pages-per-slab

              SzczegóÅy można znaleÅºÄ w slabinfo(5).

       /proc/stat
              statystyki jÄdra/systemu. RóżniÄ siÄ pomiÄdzy architekturami.
              WÅród wspólnych wpisów sÄ:

              cpu  3357 0 4313 1362393
                     Czas, wyrażony w USER_HZ (jedna setna sekundy na
                     wiÄkszoÅci architektur, proszÄ użyÄ sysconf(_SC_CLK_TCK)
                     aby uzyskaÄ prawidÅowÄ wartoÅÄ), które system spÄdziÅ w
                     trybie użytkownika w różnych stanach:

                     user   (1) Czas spÄdzony w trybie użytkownika.

                     nice   (2) Czas spÄdzony w trybie użytkownika z niskim
                            priorytetem (nice).

                     system (3) Czas spÄdzony w trybie systemowym.

                     idle   (4) Czas wykorzystany na zadanie bezczynnoÅci.
                            WartoÅÄ powinna wynosiÄ USER_HZ razy drugi wpis w
                            pseudopliku /proc/uptime.

                     iowait (od Linuksa 2.5.41)
                            (5) Czas oczekiwania na zakoÅczenie
                            wejÅcia/wyjÅcia.

                     irq (od Linuksa 2.6.0-test4)
                            (6) Czas obsÅugi przerwaÅ.

                     softirq (od Linuksa 2.6.0-test4)
                            (7) Czas obsÅugi przerwaÅ programowych.

                     steal (od Linuksa 2.6.11)
                            (8) Czas "skradziony", który jest czasem
                            spÄdzonym w innym systemie operacyjnym podczas
                            pracy w Årodowisku zwirtualizowanym.

                     guest (od Linuksa 2.6.24)
                            (9) Czas spÄdzony podczas dziaÅania na wirtualnym
                            procesorze systemu operacyjnego goÅcia, pod
                            kontrolÄ jÄdra Linux.

                     guest_nice (od Linuksa 2.6.33)
                            (10) Czas spÄdzony podczas dziaÅania na wirtualnym
                            procesorze systemu operacyjnego goÅcia, pod
                            kontrolÄ jÄdra Linux.

              page 5741 1808
                     Liczba stron, które system wstronicowaŠi liczba tych,
                     które wystronicowaŠ(z dysku).

              swap 1 0
                     Liczba stron wymiany, które wniesiono i wyniesiono.

              intr 1462898
                     Linia ta pokazuje licznik przerwaÅ obsÅużonych od czasu
                     uruchomienia dla każdego możliwego przerwania
                     systemowego. Pierwsza kolumna okreÅla caÅkowitÄ liczbÄ
                     wszystkich obsÅużonych przerwaÅ w tym nienumerowanych
                     przerwaÅ swoistych dla architektury, każda nastÄpna
                     okreÅla caÅkowitÄ wartoÅÄ dla danego numerowanego
                     przerwania. Nienumerowane przerwania nie sÄ pokazywane,
                     jedynie sumowane do caÅoÅci.

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

              ctxt 115315
                     Liczba przeÅÄczeÅ kontekstu, które przeszedÅ system.

              btime 769041601
                     Czas uruchomienia systemu, w sekundach od epoki:
                     1970-01-01 00:00:00 +0000 (UTC).

              processes 86031
                     Liczba rozwidleŠprocesów od uruchomienia systemu.

              procs_running 6
                     Liczba procesów w stanie runnable (Linux 2.5.45 i
                     późniejsze).

              procs_blocked 2
                     Liczba procesów oczekujÄcych na zakoÅczenie operacji
                     wejÅcia/wyjÅcia (Linux 2.5.45 i późniejsze).

       /proc/swaps
              Używane obszary wymiany. Zobacz także swapon(8).

       /proc/sys
              Katalog ten (obecny od 1.3.57) zawiera wiele plików i
              podkatalogów odpowiadajÄcych zmiennym jÄdra. Zmienne te mogÄ
              byÄ odczytywane i czasem modyfikowane za poÅrednictwem systemu
              plików proc, jak też przy wykorzystaniu (przestarzaÅej)
              funkcji systemowej sysctl(2)

              WartoÅci ÅaÅcuchów mogÄ siÄ koÅczyÄ albo "\0

              Liczby caÅkowite i dÅugie wartoÅci mogÄ byÄ zapisane albo
              dziesiÄtnie, albo szesnastkowo (np. 0x3FFF). Przy zapisywaniu
              wielu liczb caÅkowitych lub dÅugich wartoÅci można je
              rozdzieliÄ dowolnym z nastÄpujÄcych biaÅych znaków: " ", "\t",
              lub "\n". Użycie innych separatorów wywoÅa bÅÄd EINVAL.

       /proc/sys/abi (od Linuksa 2.4.10)
              Plik może zawieraÄ pliki z binarnymi informacjami aplikacji.
              Dalsze informacje można znaleÅºÄ w pliku
              Documentation/sysctl/abi.txt w źródÅach jÄdra Linux.

       /proc/sys/debug
              Ten katalog może byÄ pusty.

       /proc/sys/dev
              Ten katalog zawiera informacje specyficzne dla poszczególnych
              urzÄdzeÅ. (np. dev/cdrom/info). W niektórych systemach może
              byÄ pusty.

       /proc/sys/fs
              Katalog zawierajÄcy pliki i podkatalogi do zmiennych jÄdra
              zwiÄzanych z systemami plików.

       /proc/sys/fs/binfmt_misc
              Dokumentacja plików z tego katalogu znajduje siÄ w źródÅach
              jÄdra Linux w Documentation/binfmt_misc.txt.

       /proc/sys/fs/dentry-state (od Linuksa 2.2)
              Plik zawiera informacje o statusie bufora katalogu (dcache).
              Zawiera szeÅÄ liczb: nr_dentry, nr_unused, age_limit (wiek w
              sekundach), want_pages (strony żÄdane przez system) i dwie
              nieużywane wartoÅci.

              * nr_dentry jest liczbÄ przydzielonych dentries (wpisów
                dcache). To pole jest nieużywane w Linuksie 2.2.

              * nr_unused jest liczbÄ nieużywanych dentries.

              * age_limit jest wiekiem w sekundach, po którym wpisy dcache
                mogÄ byÄ przydzielone ponownie, gdy jest zbyt maÅo pamiÄci.

              * want_pages jest niezerowa, gdy jÄdro wywoÅaÅo
                shrink_dcache_pages(), ale dcache nie zostaÅy jeszcze
                przyciÄte.

       /proc/sys/fs/dir-notify-enable
              Plik ten może sÅużyÄ do wyÅÄczania lub wÅÄczania interfejsu
              dnotify opisanego w fcntl(2) dla caÅego systemu. WartoÅÄ 0 w tym
              pliku wyÅÄcza interfejs, a wartoÅÄ 1 go wÅÄcza.

       /proc/sys/fs/dquot-max
              Zawiera maksymalnÄ liczbÄ buforowanych wpisów kwot dyskowych. W
              niektórych (2.4) systemach nie wystÄpuje. Gdy liczba wolnych
              zbuforowanych kwot dyskowych jest bardzo maÅa, a jest
              przerażajÄca liczba jednoczesnych użytkowników systemu, może
              istnieÄ potrzeba zwiÄkszenia tego ograniczenia.

       /proc/sys/fs/dquot-nr
              Zawiera liczbÄ przydzielonych wpisów kwot dyskowych oraz liczbÄ
              wolnych wpisów kwot dyskowych.

       /proc/sys/fs/epoll (od Linuksa 2.6.28)
              Katalog zawiera plik max_user_watches, którego można użyÄ,
              aby ograniczyÄ iloÅÄ pamiÄci jÄdra używanej przez interfejs
              epoll. WiÄcej szczegóÅów można znaleÅºÄ w epoll(7).

       /proc/sys/fs/file-max
              Zawiera ogólnosystemowe ograniczenie liczby plików otwartych
              przez wszystkie procesy. WywoÅania systemowe które zawiodÄ przy
              napotkaniu tych limitów nie powiodÄ siÄ z bÅÄdem ENFILE.
              (Zobacz także setrlimit(2), które może sÅużyÄ procesom do
              ustawiania ograniczenia dla procesu, RLIMIT_NOFILE, jako liczby
              plików, które proces może otworzyÄ). Gdy otrzymuje siÄ
              mnóstwo komunikatów w dzienniku jÄdra o przekroczeniu liczby
              uchwytów plików (file handles - należy szukaÄ komunikatów
              takich jak "VFS: file-max limit <liczba> reached") , to można
              spróbowaÄ zwiÄkszyÄ tÄ wartoÅÄ:

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

              Procesy uprzywilejowane (CAP_SYS_ADMIN) mogÄ przesÅoniÄ limit
              file-max.

       /proc/sys/fs/file-nr
              Jest to plik (tylko do odczytu) zawierajÄcy trzy liczby: liczbÄ
              przydzielonych uchwytów plików (tzn. liczbÄ obecnie otwartych
              plików), liczbÄ wolnych uchwytów plików i maksymalnÄ liczbÄ
              uchwytów plików (tzn. tÄ samÄ wartoÅÄ co w
              /proc/sys/fs/file-max). JeÅli liczba przydzielonych uchwytów
              plików zbliża siÄ do maksimów, należy rozważyÄ zwiÄkszenie
              ich. Przed Linuksem 2.6 jÄdro dynamicznie przydzielaÅo uchwyty,
              lecz nie zwalniaÅo ich. Wolnego uchwyty byÅy przechowywany w
              liÅcie do ponownego przydzielenia, wartoÅÄ "wolne uchwyty
              plików" wskazywaÅa na rozmiar tej listy. Duża liczba wolnych
              uchwytów plików wskazywaÅa, że w przeszÅoÅci byÅ moment
              dużego użycia otwartych uchwytów plików. Od Linuksa 2.6
              jÄdro zwalnia wolne uchwyty plików, a wartoÅÄ "wolne uchwyty
              plików" zawsze wynosi zero.

       /proc/sys/fs/inode-max (obecny jedynie do Linuksa 2.2)
              Ten plik zawiera maksymalnÄ liczbÄ i-wÄzÅów w pamiÄci. WartoÅÄ
              ta powinna byÄ 3-4 razy wiÄksza niż wartoÅÄ w file-max, gdyż
              stdin, stdout i gniazda sieciowe również potrzebujÄ i-wÄzÅów,
              aby można byÅo na nich operowaÄ. Gdy systematycznie brakuje
              i-wÄzÅów, istnieje potrzeba zwiÄkszenia tej wartoÅci.

              Od jÄdra Linux 2.4 nie wystÄpuje statyczny limit liczby
              i-wÄzÅów, w zwiÄzku z czym usuniÄto ten plik.

       /proc/sys/fs/inode-nr
              Zawiera dwie pierwsze wartoÅci z inode-state.

       /proc/sys/fs/inode-state
              Plik zawiera siedem liczb: nr_inodes, nr_free_inodes, preshrink
              i cztery nieużywane wartoÅci (wynoszÄce zawsze zero).

              nr_inodes jest liczbÄ przydzielonych przez system i-wÄzÅów.
              nr_free_inodes jest liczbÄ wolnych i-wÄzÅów.

              preshrink jest niezerowe, gdy nr_inodes > inode-max i gdy system
              musi przyciÄÄ listÄ i-wÄzÅów zamiast przydzieliÄ ich wiÄcej; od
              Linuksa 2.4 to pole jest wartoÅciÄ - atrapÄ (wynosi zawsze
              zero).

       /proc/sys/fs/inotify (od wersji Linuksa 2.6.13)
              Ten katalog zawiera pliki max_queued_events, max_user_instances
              i max_user_watches, których można użyÄ, aby ograniczyÄ iloÅÄ
              pamiÄci jÄdra używanej przez interfejs inotify. WiÄcej
              szczegóÅów można znaleÅºÄ w inotify(7).

       /proc/sys/fs/lease-break-time
              OkreÅla okres ulgi, przez jaki jÄdro zapewnia procesowi
              utrzymanie dzierżawy pliku (fcntl(2)), a po którym wyÅle do
              tego procesu sygnaÅ zawiadamiajÄcy go, że inny proces oczekuje
              na otwarcie pliku. JeÅli utrzymujÄcy dzierżawÄ nie usunie jej
              lub nie ograniczy swoich praw do niej w przeciÄgu tego czasu,
              jÄdro wymusi zerwanie dzierżawy.

       /proc/sys/fs/leases-enable
              Ten plik może sÅużyÄ do ogólnosystemowego wÅÄczania lub
              wyÅÄczania dzierżaw plików (fcntl(2)). Gdy plik ten zawiera
              wartoÅÄ 0, dzierżawy sÄ wyÅÄczone. WartoÅÄ niezerowa wÅÄcza
              dzierżawy.

       /proc/sys/fs/mqueue (od wersji Linuksa 2.6.6)
              Ten katalog zawiera pliki msg_max, msgsize_max i queues_max,
              kontrolujÄce zasoby używane przez kolejki komunikatów POSIX.
              SzczegóÅowe informacje można znaleÅºÄ w mq_overview(7).

       /proc/sys/fs/nr_open (od Linuksa 2.6.25)
              Plik ten okreÅla puÅap, do którego można podnieÅÄ limit
              zasobów RLIMIT_NOFILE (zob. getrlimit(2)). PuÅap ten jest
              wymuszany zarówno na nieuprzywilejowanych i uprzywilejowanych
              procesach. DomyÅlnÄ wartoÅciÄ w pliku jest 1048576 (przed
              Linuksem 2.6.25, puÅap RLIMIT_NOFILE byÅ zakodowany na sztywno i
              wynosiÅ tyle samo).

       /proc/sys/fs/overflowgid and /proc/sys/fs/overflowuid
              Te pliki umożliwiajÄ zmianÄ wartoÅci ustalonego UID-u i GID-u.
              WartoÅciÄ domyÅlnÄ jest 65534. Niektóre systemy plików
              wspierajÄ jedynie 16-bitowe UID-y i GID-y, podczas gdy linuksowe
              UID-y i GID-y sÄ 32-bitowe. Gdy któryÅ z takich systemów
              plików jest zamontowany z możliwoÅciÄ zapisu, to wszystkie
              UID-y i GID-y przekraczajÄce 65535 sÄ zastÄpowane podanymi tu
              wartoÅciami przed zapisem na dysk.

       /proc/sys/fs/pipe-max-size (od Linuksa 2.6.35)
              WartoÅÄ w tym pliku definiuje górny limit do podnoszenia
              pojemnoÅci potoku przy użyciu operacji F_SETPIPE_SZ fcntl(2).
              Limit ten odnosi siÄ wyÅÄcznie do procesów
              nieuprzywilejowanych. DomyÅlnÄ wartoÅciÄ dla tego pliku jest
              1 048 576. WartoÅÄ przypisana do pliku może byÄ zaokrÄglona w
              górÄ, odnoszÄc siÄ do faktycznej wartoÅci wykorzystanej z
              powodu dogodnej implementacji. Aby poznaÄ zaokrÄglonÄ wartoÅÄ,
              należy wyÅwietliÄ zawartoÅÄ tego pliku po przypisaniu do niego
              wartoÅci. MinimalnÄ wartoÅciÄ, jaka może zostaÄ przypisana do
              tego pliku jest systemowy rozmiar strony.

       /proc/sys/fs/protected_hardlinks (od Linuksa 3.6)
              Gdy w pliku zapisana jest wartoÅÄ 0, to w odniesieniu do
              tworzenia dowiÄzaÅ zwykÅych (twardych) nie wprowadza siÄ
              żadnych ograniczeŠ(jest to historyczne zachowanie przed
              Linuksem 3.6). Gdy wartoÅÄ wynosi 1, to dowiÄzania zwykÅe mogÄ
              byÄ tworzone do pliku docelowego jedynie wówczas, gdy speÅniony
              jest jeden z poniższych warunków:

              *  WywoÅujÄcy ma przywilej CAP_FOWNER.

              *  UID systemu plików dotyczÄcy procesu tworzÄcego dowiÄzanie
                 pasujÄ do wÅaÅciciela (UID) pliku docelowego (zgodnie z
                 opisem w podrÄczniku credentials(7), UID systemu plików
                 procesu jest zwykle taki sam jak jego efektywny UID).

              *  Wszystkie poniższe warunki zostanÄ speÅnione:

                  ·  cel jest zwykÅym plikiem,

                  ·  plik docelowy nie ma ustawionego bitu set-user-ID,

                  ·  plik docelowy nie ma ustawionych obu z bitów
                     set-group-ID i bitu wykonywalnoÅci dla grupy,

                  ·  wywoÅujÄcy ma uprawnienie do odczytu i zapisu pliku
                     docelowego (albo dziÄki uprawnieniom pliku albo ze
                     wzglÄdu na posiadane przywileje).

              DomyÅlnÄ wartoÅciÄ w tym pliku jest 0. Ustawienie 1 rozwiÄże
              wystÄpujÄce od dawna problemy z bezpieczeÅstwem wykorzystujÄcych
              wyÅcig miÄdzy czasem sprawdzenia a czasem użycia dowiÄzania
              zwykÅego, zwykle spotykanych w katalogach dostÄpnych do zapisu
              dla wszystkich (np. /tmp). CzÄstym sposobem wykorzystywania tej
              wady jest skrzyżowanie ograniczeŠw uprawnieniach przy
              podÄżaniu za danym dowiÄzaniem zwykÅym (np. gdy proces root
              podÄża za dowiÄzaniem staÅym utworzonym przez innego
              użytkownika). W systemach bez wydzielonych partycji, rozwiÄzuje
              siÄ w ten sposób również problem nieautoryzowanych
              użytkowników "przypinajÄcych" dziurawe pliki z ustawionymi
              bitami set-user-ID i set-group-ID wobec aktualizowanych przez
              administratora a także dowiÄzywaniu do plików specjalnych.

       /proc/sys/fs/protected_symlinks (od Linuksa 3.6)
              Gdy w pliku zapisana jest wartoÅÄ 0, to w odniesieniu do
              tworzenia dowiÄzaÅ symbolicznych nie wprowadza siÄ Å¼adnych
              ograniczeÅ (jest to historyczne zachowanie przed Linuksem 3.6).
              Gdy wartoÅÄ wynosi 1, to dowiÄzania symboliczne mogÄ byÄ
              tworzone jedynie gdy speÅnione sÄ nastÄpujÄce warunki:

              *  UID systemu plików dotyczÄcy procesu podÄżajÄcego za
                 dowiÄzaniem pasujÄ do wÅaÅciciela (UID) dowiÄzania
                 symbolicznego (zgodnie z opisem w podrÄczniku credentials(7),
                 UID systemu plików procesu jest zwykle taki sam jak jego
                 efektywny UID),

              *  dowiÄzanie nie znajduje siÄ w katalogu dostÄpnych dla
                 wszystkich do zapisu z bitem lepkoÅci lub

              *  dowiÄzanie symboliczne i katalog w którym siÄ ono znajduje
                 majÄ tego samego wÅaÅciciela (UID)

              WywoÅanie systemowe które nie podÄży za dowiÄzaniem
              symbolicznym ze wzglÄdu na powyższe ograniczenia zwróci w
              errno bÅÄd EACCES.

              DomyÅlnÄ wartoÅciÄ w tym pliku jest 0. Ustawienie 1 rozwiÄże
              wystÄpujÄce od dawna problemy z bezpieczeÅstwem wykorzystujÄcych
              wyÅcig miÄdzy czasem sprawdzenia a czasem użycia przy
              uzyskiwaniu dostÄpu do dowiÄzaÅ symbolicznych.

       /proc/sys/fs/suid_dumpable (od wersji Linuksa 2.6.13)
              WartoÅÄ w tym pliku jest przypisana do flagi "dumpable"
              ("zrzucalny") w sytuacjach opisanych w prctl(2). W konsekwencji,
              wartoÅÄ w tym pliku okreÅla, czy pliki zrzutów pamiÄci sÄ
              tworzone dla programów majÄcych ustawiony bit set-user-ID albo
              chronionych w jakiÅ inny sposób. Można podaÄ trzy różne
              wartoÅci liczbowe:

              0 (default)
                     Jest to tradycyjne zachowanie (sprzed Linuksa 2.6.13).
                     Zrzut pamiÄci nie bÄdzie tworzony dla procesu, który
                     zmieniÅ swoje uprawnienia (wywoÅujÄc seteuid(2),
                     setgid(2) lub podobnÄ funkcjÄ albo gdy program miaÅ
                     ustawiony bit set-user-ID lub set-group-ID) albo gdy
                     uprawnienia nadane plikowi binarnemu programu zabraniajÄ
                     jego odczytywania.

              1 ("debug")
                     Jeżeli jest to możliwe, to wszystkie procesy wykonujÄ
                     zrzut pamiÄci. WÅaÅcicielem pliku zrzutu jest
                     użytkownik, którego uprawnienia do systemu plików ma
                     proces wykonujÄcy zrzut. Nie sÄ stosowane żadne
                     mechanizmy bezpieczeÅstwa. Jest to przeznaczone tylko do
                     celów debugowania. Ptrace nie jest sprawdzane.

              2 ("suidsafe")
                     Zrzut pamiÄci programu, dla którego w normalnej sytuacji
                     taki zrzut nie zostaÅby wykonany (patrz wyżej "0"),
                     może byÄ odczytany tylko przez administratora (root).
                     Pozwala to użytkownikowi usunÄÄ plik ze zrzutem, ale nie
                     pozwala na jego odczytanie. Z powodów bezpieczeÅstwa w
                     tym trybie pliki zrzutu nie nadpisujÄ istniejÄcych
                     plików. Ten tryb jest odpowiedni, gdy administrator
                     bÄdzie chciaÅ debugowaÄ problemy w naturalnym Årodowisku.

                     Dodatkowo, od Linuksa 3.6, /proc/sys/kernel/core_pattern
                     musi byÄ absolutnÄ ÅcieżkÄ lub poleceniem potokowym
                     (zob. core(5)). Do dziennika jÄdra zapisane zostanÄ
                     ostrzeżenia, jeÅli core_pattern nie bÄdzie siÄ stosowaÅo
                     do tych reguÅ i nie utworzy siÄ zrzut pamiÄci.

       /proc/sys/fs/super-max
              Plik steruje maksymalnÄ liczbÄ superbloków, a wiÄc i maksymalnÄ
              liczbÄ systemów plików, które jÄdro może zamontowaÄ.
              Potrzeba zwiÄkszenia wartoÅci super-max wystÄpuje tylko wtedy,
              gdy chce siÄ zamontowaÄ wiÄcej systemów plików, niż na to
              pozwala aktualna wartoÅÄ super-max.

       /proc/sys/fs/super-nr
              Plik zawiera liczbÄ obecnie zamontowanych systemów plików.

       /proc/sys/kernel
              Katalog zawiera pliki kontrolujÄce wiele parametrów jÄdra, jak
              opisano poniżej.

       /proc/sys/kernel/acct
              Plik zawiera trzy liczby: highwater, lowwater i frequency. Gdy
              wÅÄczone jest rejestrowanie procesów w stylu BSD, wartoÅci te
              sterujÄ jego zachowaniem. Gdy iloÅÄ wolnego miejsca w systemie
              plików, na którym znajdujÄ siÄ logi, spada poniżej wyrażonej
              w procentach wartoÅci lowwater, rejestrowanie jest wstrzymywane.
              Gdy iloÅÄ wolnego miejsca stanie siÄ wiÄksza niż wyrażona w
              procentach wartoÅÄ highwater, rejestrowanie jest wznawiane.
              frequency okreÅla, jak czÄsto jÄdro bÄdzie sprawdzaÄ iloÅÄ
              wolnego miejsca (wartoÅÄ w sekundach). WartoÅciami domyÅlnymi sÄ
              4, 2 i 30. Oznacza to, że rejestrowanie procesów jest
              wstrzymywane, gdy iloÅÄ wolnego miejsca bÄdzie wynosiÅa 2% lub
              mniej; wznowione zostanie, gdy wolne bÄdzie 4% lub wiÄcej;
              zakÅada siÄ, że informacja o iloÅci wolnego miejsca jest ważna
              przez 30 sekund.

       /proc/sys/kernel/auto_msgmni (Linux w wersji od 2.6.27 do 3.18)
              W Linuksie w wersjach od 2.6.27 do 3.18, plik ten byŠużywany
              do kontroli przeliczania wartoÅci w /proc/sys/kernel/msgmni przy
              dodawaniu lub usuwaniu pamiÄci, albo przy utworzeniu/usuniÄciu
              przestrzeni nazw IPC. Wpisanie "1" do tego pliku wÅÄczaÅo
              automatyczne przeliczanie msgmni (i wyzwalaÅo przeliczanie
              msgmni w oparciu o bieżÄcÄ iloÅÄ dostÄpnej pamiÄci i liczby
              przestrzeni nazw IPC). Wpisanie "0" wyÅÄczaÅo automatyczne
              przeliczanie (automatyczne przeliczanie byÅo również
              wyÅÄczane, jeÅli wartoÅÄ byÅa jawnie przypisywana do
              /proc/sys/kernel/msgmni). DomyÅlnÄ wartoÅciÄ w auto_msgmni byÅo
              1.

              Od Linuksa 3.19, zawartoÅÄ tego pliku nie ma znaczenia
              (ponieważ msgmni domyÅlnie ustawia siÄ na wartoÅÄ
              bliskÄ maksymalnej), a odczyt z tego pliku zawsze zwraca wartoÅÄ
              "0".

       /proc/sys/kernel/cap_last_cap (od Linuksa 3.2)
              Patrz capabilities(7).

       /proc/sys/kernel/cap-bound (od Linuksa 2.2 do 2.6.24)
              Plik przechowuje wartoÅÄ capability bounding set dla jÄdra
              (wyrażone jako liczba dziesiÄtna ze znakiem). WartoÅÄ ta jest
              mnożona (AND) bitowo z capabilities dozwolonymi dla procesu
              podczas execve(2). PoczynajÄc od Linuksa 2.6.25 ogólnosystemowe
              capability bounding set zostaÅo usuniÄte i zastÄpione bounding
              set na wÄtek, patrz capabilities(7).

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

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

       /proc/sys/kernel/ctrl-alt-del
              Ten plik steruje obsÅugÄ kombinacji klawiszy Ctrl-Alt-Del. Gdy w
              pliku tym znajduje siÄ wartoÅÄ 0, Ctrl-Alt-Del jest
              przechwytywane i przesyÅane do programu init(1) w celu wykonania
              wdziÄcznego restartu. Gdy wartoÅÄ jest wiÄksza od 0, reakcjÄ
              Linuksa na Wulkanicznie Nerwowe NÄkanie (Vulcan Nerve Pinch
              (tm)) bÄdzie natychmiastowy restart, nawet bez zrzucenia
              zmodyfikowanych buforów. Uwaga: gdy program (jak np. dosemu)
              korzysta z "surowego" trybu klawiatury, Ctrl-Alt-Del jest
              przechwytywane przez program, zanim dotrze do warstwy
              terminalowej jÄdra i decyzja, co z tym zrobiÄ, zależy od
              programu.

       /proc/sys/kernel/dmesg_restrict (od Linuksa 2.6.37)
              WartoÅÄ pliku okreÅla użytkowników z dostÄpem do zawartoÅci
              dziennika jÄdra (syslog). WartoÅÄ 0 nie nakÅada żadnych
              ograniczeÅ. WartoÅÄ 1 zawÄża dostÄp do użytkowników
              uprzywilejowanych (zob. syslog(2)). Od Linuksa 3.4 tylko
              użytkownicy z przywilejem CAP_SYS_ADMIN mogÄ zmieniÄ wartoÅÄ w
              tym pliku.

       /proc/sys/kernel/domainname i /proc/sys/kernel/hostname
              Te pliki mogÄ sÅużyÄ do ustawiania nazwy domeny i hosta NIS/YP
              maszyny dokÅadnie w ten sam sposób, jak za pomocÄ poleceÅ
              domainname(1) i hostname(1), np.:

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

              daje taki sam efekt, jak

                  # hostname 'darkstar'
                  # domainname 'mydomain'

              Należy tu zauważyÄ, że klasyczny darkstar.frop.org posiada
              nazwÄ hosta "darkstar" i domenÄ "frop.org" w DNS (Internetowej
              UsÅudze Nazw Domen - Internet Domain Name Service), których nie
              należy myliÄ z domenÄ NIS (Sieciowej UsÅugi Informacyjnej -
              Network Information Service) lub YP (Yellow Pages). Te dwa
              systemy nazw domenowych zasadniczo siÄ różniÄ. SzczegóÅowe
              informacje można znaleÅºÄ na stronie podrÄcznika hostname(1).

       /proc/sys/kernel/hotplug
              Plik ten zawiera ÅcieżkÄ do programu hotplug. DomyÅlnÄ
              wartoÅciÄ w tym pliku jest /sbin/hotplug.

       /proc/sys/kernel/htab-reclaim
              (Tylko PowerPC) JeÅli do tego pliku zostanie wpisana wartoÅÄ
              niezerowa, htab PowerPC (zobacz: plik
              Documentation/powerpc/ppc_htab.txt w źródÅach jÄdra) jest
              czyszczony za każdym razem, gdy system natrafi na pÄtlÄ
              oczekiwania ("idle").

       /proc/sys/kernel/kptr_restrict (od Linuksa 2.6.38)
              WartoÅÄ okreÅla czy adresy jÄdra sÄ pokazywane za pomocÄ
              interfejsu /proc i innych. WartoÅÄ 0 oznacza brak ograniczeÅ.
              Gdy użyto 1, to wskaźniki jÄdra wypisane za pomocÄ formatu %pK
              zostanÄ zastÄpione zerami, chyba że użytkownik ma przywilej
              CAP_SYSLOG. Przy wartoÅci 2 wskaźniki jÄdra wypisane za pomocÄ
              %pK zostanÄ zawsze zastÄpione zerami, niezależnie od
              przywilejów jakie posiada. PoczÄtkowo domyÅlna wartoÅÄ wynosiÅa
              1, lecz zastÄpiono jÄ 0 w jÄdrze Linux 2.6.39. Od Linuksa 3.4
              tylko użytkownicy z przywilejem CAP_SYS_ADMIN mogÄ zmieniaÄ
              wartoÅÄ w tym pliku.

       /proc/sys/kernel/l2cr
              (Tylko PowerPC) Plik zawiera znacznik sterujÄcy cache'em L2 pÅyt
              procesora G3. JeÅli zawiera 0, cache jest wyÅÄczony. Cache jest
              wÅÄczony, gdy plik zawiera wartoÅÄ różnÄ od zera.

       /proc/sys/kernel/modprobe
              Plik zawiera ÅcieżkÄ do programu ÅadujÄcego moduÅy jÄdra.
              DomyÅlnÄ wartoÅciÄ jest /sbin/modprobe. Plik jest obecny tylko,
              jeÅli jÄdro zostaÅo zbudowane z wÅÄczonÄ opcjÄ CONFIG_MODULES
              (CONFIG_KMOD w Linuksie 2.6.26 i wczeÅniejszych). Jest on
              opisany w pliku źródeÅ jÄdra Linux Documentation/kmod.txt
              (obecnym tylko w jÄdrach 2.4 i wczeÅniejszych).

       /proc/sys/kernel/modules_disabled (od Linuksa 2.6.31)
              PrzeÅÄcznik wskazujÄcy czy moduÅy mogÄ byÄ Åadowane do
              modularnego jÄdra. DomyÅlna wartoÅÄ wynosi off (0), lecz można
              ustawiÄ także true (1), która spowoduje brak możliwoÅci
              Åadowania i wyÅadowania moduÅów. W takim przypadku nie da siÄ
              ustawiÄ przeÅÄcznika z powrotem na faÅsz (false). Plik jest
              obecny tylko w jÄdrach zbudowanych z wÅÄczonÄ opcjÄ
              CONFIG_MODULES.

       /proc/sys/kernel/msgmax (od Linuksa 2.2)
              Zawiera ogólnosystemowe ograniczenie maksymalnej liczby bajtów
              w pojedynczym komunikacie zapisywanym do kolejki komunikatów
              Systemu V.

       /proc/sys/kernel/msgmni (od Linuksa 2.4)
              OkreÅla ogólnosystemowe ograniczenie liczby identyfikatorów
              kolejek komunikatów. Zob. również
              /proc/sys/kernel/auto_msgmni.

       /proc/sys/kernel/msgmnb (od Linuksa 2.2)
              Zawiera ogólnosystemowy parametr sÅużÄcy do inicjacji
              ustawienia msg_qbytes tworzonych później kolejek komunikatów.
              Ustawienie msg_qbytes okreÅla maksymalnÄ liczbÄ bajtów, które
              mogÄ zostaÄ zapisane do kolejki komunikatów.

       /proc/sys/kernel/ngroups_max (od Linuksa 2.6.4)
              Jest to plik tylko do odczytu, który wyÅwietla górny limit
              liczby czÅonków grupy procesu.

       /proc/sys/kernel/ostype i /proc/sys/kernel/osrelease
              Pliki te zawierajÄ poszczególne czÄÅci z /proc/version.

       /proc/sys/kernel/overflowgid i /proc/sys/kernel/overflowuid
              Pliki te sÄ kopiami plików /proc/sys/fs/overflowgid i
              /proc/sys/fs/overflowuid.

       /proc/sys/kernel/panic
              Plik umożliwia dostÄp (odczyt i zapis) do zmiennej jÄdra
              panic_timeout. JeÅli jest to zero, jÄdro bÄdzie siÄ zapÄtlaÄ
              podczas paniki; jeÅli wartoÅÄ niezerowa, to okreÅla liczbÄ
              sekund, po której jÄdro powinno siÄ automatycznie przeÅadowaÄ.
              JeÅli używany jest software watchdog to zalecanÄ wartoÅciÄ jest
              60.

       /proc/sys/kernel/panic_on_oops (od Linuksa 2.5.68)
              Plik ten kontroluje zachowanie jÄdra, kiedy wystÄpi oops lub
              BÅÄD. JeÅli ten plik zawiera 0, to system próbuje kontynuowaÄ
              operacjÄ. JeÅli zawiera 1, to system czeka parÄ sekund (aby daÄ
              procesowi klogd czas na zapisanie wyjÅcia z oops), a nastÄpnie
              panikuje. Jeżeli wartoÅÄ w pliku /proc/sys/kernel/panic
              również jest niezerowa, to nastÄpi restart komputera.

       /proc/sys/kernel/pid_max (od Linuksa 2.5.34)
              Ten plik okreÅla wartoÅÄ po której nastÄpi przewiniÄcie
              licznika PID (tj. wartoÅÄ w tym pliku jest o 1 wiÄksza niż
              maksymalny PID). PID-y wiÄksze niż ta wartoÅÄ nie sÄ alokowane,
              z tego powodu wartoÅÄ z tego pliku dziaÅa również jako
              systemowy limit caÅkowitej liczby procesów i wÄtków. DomyÅlna
              wartoÅÄ tego pliku, czyli 32768, okreÅla taki sam zakres
              wartoÅci PID, jak wczeÅniejsze wersje jÄdra. Dla platform
              32-bitowych 32768 jest maksymalnÄ wartoÅciÄ, jakÄ może
              przyjmowaÄ pid_max. W systemach 64-bitowych pid_max może zostaÄ
              ustawiony na dowolnÄ wartoÅÄ, aż do 2^22 (PID_MAX_LIMIT, okoÅo
              4 milionów).

       /proc/sys/kernel/powersave-nap (tylko PowerPC)
              Plik zawiera znacznik. Gdy jest on ustawiony, Linux-PPC używa
              trybu oszczÄdzania energii "nap", a w przeciwnym przypadku trybu
              "doze".

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

       /proc/sys/kernel/pty (od wersji Linuksa 2.6.4)
              Ten katalog zawiera dwa pliki zwiÄzane z liczbÄ pseudoterminali
              UNIX 98 (patrz pts(4)) w systemie.

       /proc/sys/kernel/pty/max
              Plik okreÅla maksymalnÄ liczbÄ pseudoterminali.

       /proc/sys/kernel/pty/nr
              Ten plik tylko do odczytu zawiera informacjÄ o liczbie obecnie
              używanych pseudoterminali.

       /proc/sys/kernel/random
              Katalog ten zawiera różne parametry sterujÄce dziaÅaniem pliku
              /dev/random. Dalsze informacje można znaleÅºÄ w random(4).

       /proc/sys/kernel/random/uuid (od Linuksa 2.4)
              Każdy odczyt z tego pliku przeznaczonego tylko do odczytu
              zwraca losowo wygenerowany 128-bitowy UUID, jako ÅaÅcuch w
              standardowym formacie UUID.

       /proc/sys/kernel/randomize_va_space (od Linuksa 2.6.12)
              Wybiera politykÄ losowego rozmieszczania obszarów pamiÄci (ang.
              ASLR - adress space layout randomization) w systemie (na
              architekturach obsÅugujÄcych ASLR). ObsÅugiwane sÄ trzy wartoÅci
              tego pliku:

              0  WyÅÄcza ASLR. Jest to domyÅlne na architekturach
                 nieobsÅugujÄcych ASLR i gdy jÄdro jest uruchamiane z
                 parametrem norandmaps.

              1  Czyni przydzielanie stron VDSO, stosu i adresów mmap(2)
                 losowym. Oznacza to miÄdzy innymi, że biblioteki dzielone sÄ
                 Åadowane pod losowy adres. Segment tekstowy plików
                 wykonywalnych skonsolidowanych niezależnie od pozycji (PIE)
                 bÄdzie również Åadowany pod losowy adres. WartoÅÄ ta jest
                 domyÅlna, jeÅli skonfigurowano jÄdro z CONFIG_COMPAT_BRK.

              2  (od Linuksa 2.6.25) ObsÅuguje również losowoÅÄ kopca (ang.
                 heap). Jest to domyÅlne zachowanie, jeÅli nie skonfigurowano
                 jÄdra z opcjÄ CONFIG_COMPAT_BRK.

       /proc/sys/kernel/real-root-dev
              Plik ten jest udokumentowany w pliku Documentation/initrd.txt w
              źródÅach jÄdra Linux.

       /proc/sys/kernel/reboot-cmd (tylko Sparc)
              Ten plik wydaje siÄ stanowiÄ mechanizm podawania argumentów
              SPARC-owej Åadowarce systemu w ROM/Flash. Może przekazuje jej,
              co zrobiÄ po restarcie?

       /proc/sys/kernel/rtsig-max
              (Tylko w wersjach jÄdra nie późniejszych niż 2.6.7; patrz
              setrlimit(2)). Plik ten może sÅużyÄ do sterowania maksymalnÄ
              liczbÄ zgodnych z POSIX nieobsÅużonych (w kolejkach) sygnaÅów
              czasu rzeczywistego w systemie.

       /proc/sys/kernel/rtsig-nr
              (Tylko w wersjach jÄdra nie późniejszych niż 2.6.7). Plik ten
              podaje liczbÄ zgodnych z POSIX sygnaÅów czasu rzeczywistego
              oczekujÄcych obecnie w kolejce.

       /proc/sys/kernel/sched_rr_timeslice_ms (od Linuksa 3.9)
              Patrz sched_rr_get_interval(2).

       /proc/sys/kernel/sched_rt_period_us (od Linuksa 2.6.25)
              Patrz sched(7).

       /proc/sys/kernel/sched_rt_runtime_us (od Linuksa 2.6.25)
              Patrz sched(7).

       /proc/sys/kernel/sem (od Linuksa 2.4)
              Plik ten zawiera 4 liczby definiujÄce ograniczenia semaforów
              Systemu V. SÄ to w kolejnoÅci:

              SEMMSL  Maksymalna liczba semaforów w zestawie semaforów.

              SEMMNS  Ogólnosystemowe ograniczenie liczby semaforów we
                      wszystkich zestawiach semaforów.

              SEMOPM  Maksymalna liczba operacji, które mogÄ zostaÄ podane w
                      wywoÅaniu semop(2).

              SEMMNI  Ogólnosystemowe ograniczenie maksymalnej liczby
                      identyfikatorów semaforów.

       /proc/sys/kernel/sg-big-buff
              Plik ten zawiera rozmiar bufora niskopoziomowego urzÄdzenia SCSI
              (sg). Nie można nim na razie sterowaÄ, ale można go zmieniÄ
              podczas kompilacji poprzez edycjÄ include/scsi/sg.h i zmianÄ
              wartoÅci SG_BIG_BUFF. Jednakże nie ma żadnego powodu, aby to
              robiÄ.

       /proc/sys/kernel/shm_rmid_forced (od Linuksa 3.1)
              JeÅli plik jest ustawiony na 1, to wszystkie segmenty pamiÄci
              dzielonej Systemu V zostanÄ oznaczone jako przeznaczone do
              zniszczenia po tym, jak liczba doÅÄczonych procesów spadnie do
              zera. Innymi sÅowy nie da siÄ wówczas utworzyÄ segmentów
              pamiÄci dzielonej, które istniejÄ niezależnie od doÅÄczonych
              procesów.

              Efekt jest taki, że shmctl(2) IPC_RMID jest wykonywane na
              wszystkich istniejÄcych segmentach, jak również na segmentach
              tworzonych w przyszÅoÅci (dopóki plik nie zostanie zresetowany
              do 0). ProszÄ zauważyÄ, że istniejÄce segmenty nie doÅÄczone
              do żadnego procesu zostanÄ natychmiast zniszczone, jeÅli tylko
              plik ten jest ustawiony na 1. Ustawienie tej opcji zniszczy
              również segmenty utworzone, lecz nigdy niedoÅÄczone - przy
              zakoÅczeniu procesu który utworzyÅ dany segment za pomocÄ
              shmget(2).

              Ustawienie tego pliku na 1 udostÄpnia sposób na sprawdzenie,
              że wszystkie segmenty pamiÄci wspóÅdzielonej Systemu V sÄ
              liczone w odniesieniu do użycia zasobów i limitów zasobów.
              (zob. opis RLIMIT_AS w getrlimit(2)) do co najmniej jednego
              procesu).

              Ustawienie tego pliku na 1 daje niestandardowe zachowanie,
              które może zaÅamaÄ istniejÄce aplikacje, dlatego domyÅlnÄ
              wartoÅciÄ pliku jest 0. WartoÅÄ 1 może byÄ używana tylko w
              przypadku dużej wiedzy na temat semantyki aplikacji
              używajÄcych pamiÄci wspóÅdzielonej Systemu V w danym systemie.

       /proc/sys/kernel/shmall (od Linuksa 2.2)
              Ten plik zawiera ogólnosystemowe ograniczenie caÅkowitej liczby
              stron pamiÄci wspólnej Systemu V.

       /proc/sys/kernel/shmmax (od Linuksa 2.2)
              Ten plik może sÅużyÄ do odpytywania o aktualne ograniczenie
              maksymalnego rozmiaru tworzonego segmentu pamiÄci wspólnej
              (System V IPC) oraz do zmiany tego ograniczenia. JÄdro wspiera
              obecnie segmenty pamiÄci wspólnej do 1 GB. WartoÅciÄ domyÅlnÄ
              jest SHMMAX.

       /proc/sys/kernel/shmmni (od Linuksa 2.4)
              Ten plik okreÅla ogólnosystemowÄ maksymalnÄ liczbÄ segmentów
              pamiÄci wspólnej Systemu V, które można utworzyÄ.

       /proc/sys/kernel/sysctl_writes_strict (od Linuksa 3.16)
              WartoÅÄ w tym pliku okreÅla jak przesuniÄcia pliku wpÅywajÄ na
              zachowanie aktualizacji wpisów w plikach pod /proc/sys. Plik
              może przyjÄÄ trzy wartoÅci:

              -1  Zapewniona jest kompatybilna obsÅuga, bez ostrzeżeÅ printk.
                  Każdy write(2) musi zawieraÄ peÅnÄ wartoÅÄ do zapisu i
                  każdy zapis na tym samym deskryptorze pliku nadpisze caÅÄ
                  wartoÅÄ, bez wzglÄdu na pozycjÄ pliku.

              0   (domyÅlne) Zapewnia zachowanie podobne jak przy -1, lecz dla
                  procesów które przeprowadzajÄ zapis przy przesuniÄciu
                  pliku różnym od 0 zapisywane sÄ ostrzeżenia printk.

              1   Zachowuje przesuniÄcie pliku przy zapisie ÅaÅcuchów do
                  plików /proc/sys. Wiele zapisów nadpisze wartoÅÄ bufora.
                  Wszystko co zostanie zapisane pod maksymalnÄ dÅugoÅÄ bufora
                  wartoÅci zostanie zignorowane. Zapis do numerycznych wpisów
                  /proc/sys musi zawsze nastÄpowaÄ przy przesuniÄciu 0, a
                  wartoÅÄ musi byÄ w peÅni zawarta w buforze przekazanym do
                  write(2).

       /proc/sys/kernel/sysrq
              Plik kontroluje dozwolone funkcje, które sÄ wywoÅywane przy
              użyciu klawisza SysRq. DomyÅlnie, plik zawiera 1, oznaczajÄce
              że dozwolona jest każde możliwe żÄdanie SysRq (w starszych
              wersjach jÄdra, SysRq byÅo domyÅlnie wyÅÄczone i konieczne byÅo
              wÅÄczenie go w czasie uruchomienia, jednak ta sytuacja już nie
              wystÄpuje). Dozwolone wartoÅci w pliku:

              0    ZupeÅnie wyÅÄcza sysrq

              1    WÅÄcza wszystkie funkcje sysrq

              > 1  Maska bitowa dozwolonych funkcji sysrq, jak poniżej:
                     2  WÅÄcza kontrolÄ poziomu logów konsoli
                     4  WÅÄcza kontrolÄ klawiatury (SAK, unraw)
                     8  WÅÄcza debugowanie zrzutów procesów itp.
                    16  WÅÄcza polecenie sync
                    32  WÅÄcza przejÅcie systemu plików w tryb tylko do
                        odczytu
                    64  WÅÄcza wysyÅanie sygnaÅów do procesów (term, kill,
                        oom-kill)
                   128  WÅÄcza ponowne uruchomienie/wyÅÄczenie komputera
                   256  Pozwala na ustawianie nice wszystkich zadaÅ czasu
                        rzeczywistego

              Ten plik istnieje tylko jeÅli podczas kompilacji jÄdra wÅÄczono
              opcjÄ CONFIG_MAGIC_SYSRQ. Aby dowiedzieÄ siÄ wiÄcej, proszÄ
              zapoznaÄ siÄ z plikiem Documentation/sysrq.txt w źródÅach
              jÄdra Linux.

       /proc/sys/kernel/version
              Plik zawiera tekst np.:

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

              Gdzie'#5' oznacza, że jest to piÄte z kolei jÄdro zbudowane z
              tych samych źródeÅ, a nastÄpujÄca dalej data okreÅla, kiedy
              jÄdro zostaÅo zbudowane.

       /proc/sys/kernel/threads-max (od Linuksa 2.3.11)
              Ten plik okreÅla ogólnosystemowe ograniczenie caÅkowitej liczby
              wÄtków (zadaÅ), jakie mogÄ zostaÄ utworzone w systemie.

              Od Linuksa 4.1, wartoÅÄ którÄ można zapisaÄ do threads-max
              jest ograniczona. Minimalna wartoÅÄ którÄ można wpisaÄ to 20.
              Maksymalna jest dana przez staÅÄ FUTEX_TID_MASK (0x3fffffff).
              JeÅli do threads-max wpisze siÄ wartoÅÄ spoza tego zakresu
              wystÄpi bÅÄd EINVAL.

              Zapisana wartoÅÄ jest sprawdzana w odniesieniu do dostÄpnych
              stron RAM. JeÅli struktury wÄtku zajmie zbyt dużo (wiÄcej
              niż 1/8) dostÄpnych stron RAM, threads-max zostanie odpowiednio
              zredukowana.

       /proc/sys/kernel/yama/ptrace_scope (od Linuksa 3.5)
              Zob. ptrace(2).

       /proc/sys/kernel/zero-paged (tylko PowerPC)
              Plik zawiera znacznik. Gdy jest on ustawiony (niezerowy),
              Linux-PPC wstÄpnie zeruje strony w pÄtli bezczynnoÅci.
              Prawdopodobnie przyspiesza to get_free_pages.

       /proc/sys/net
              Ten katalog zawiera rzeczy zwiÄzane z sieciÄ. WyjaÅnienia
              dotyczÄce niektórych plików zawartych w tym katalogu można
              znaleÅºÄ w tcp(7) i ip(7).

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

       /proc/sys/net/core/somaxconn
              Plik definiuje wartoÅÄ cechy górnej (sufitu) do argumentu
              backlog funkcji listen; patrz strona podrÄcznika listen(2), aby
              dowiedzieÄ siÄ wiÄcej.

       /proc/sys/proc
              Ten katalog może byÄ pusty.

       /proc/sys/sunrpc
              Ten katalog obsÅuguje Sunowskie zdalne wywoÅywanie procedur dla
              sieciowego systemu plikowego (NFS). W niektórych systemach
              może nie istnieÄ.

       /proc/sys/vm
              Ten katalog zawiera pliki sterujÄce zarzÄdzaniem pamiÄciÄ,
              buforami i zarzÄdzaniem cachem.

       /proc/sys/vm/compact_memory (od Linuksa 2.6.35)
              Po zapisie 1 do tego pliku wszystkie strefy sÄ przemieszczane w
              ten sposób, że — jeÅli to możliwe — pamiÄÄ jest dostÄpna w
              ciÄgÅych blokach. Efekt tej akcji można sprawdziÄ za pomocÄ
              /proc/buddyinfo.

              Obecne tylko, jeÅli jÄdro zostaÅo skonfigurowane z
              CONFIG_COMPACTION.

       /proc/sys/vm/drop_caches (od wersji Linuksa 2.6.16)
              Zapis do tego pliku powoduje zwolnienie przez jÄdro czystych
              buforów, dentries i i-wÄzÅów z pamiÄci, powodujÄc zwolnienie
              pamiÄci. Może byÄ to przydatne to testowania zarzÄdzania
              pamiÄciÄ i wykonywania powtarzalnych testów systemu plików.
              Zapis do tego pliku powoduje utratÄ zalet buforowania, przez co
              może spowodowaÄ pogorszenie ogólnej wydajnoÅci systemu.

              Aby zwolniÄ bufor strony, proszÄ użyÄ:

                  echo 1 > /proc/sys/vm/drop_caches

              Aby zwolniÄ dentries i i-wÄzÅy, proszÄ użyÄ:

                  echo 2 > /proc/sys/vm/drop_caches

              Aby zwolniÄ bufor strony, dentries i i-wÄzÅy, proszÄ użyÄ:

                  echo 3 > /proc/sys/vm/drop_caches

              Ponieważ zapis do tego pliku nie jest destrukcyjny i brudne
              obiekty nie sÄ zwalniane, użytkownik powinien wczeÅniej
              uruchomiÄ sync(1).

       /proc/sys/vm/legacy_va_layout (od wersji Linuksa 2.6.9)
              WartoÅÄ niezerowa oznacza wyÅÄczenie nowego, 32-bitowego
              rozmieszczenia mapowania pamiÄci; jÄdro bÄdzie używaÄ starego
              (2.4) rozmieszczenia dla wszystkich procesów.

       /proc/sys/vm/memory_failure_early_kill (od Linuksa 2.6.32)
              Kontroluje jak zabijaÄ procesy z nienaprawialnym bÅÄdem pamiÄci
              (z reguÅy 2-bitowy bÅÄd w module pamiÄci), które nie mogÄ byÄ
              obsÅużone przez jÄdro, wykryte w tle przez sprzÄt. W
              niektórych przypadkach (np. jeÅli strona ma wciÄż poprawnÄ
              kopiÄ na dysku), jÄdro obsÅuży taki bÅÄd w sposób
              przezroczysty, bez wpÅywu na pracÄ aplikacji. Jednak jeÅli nie
              istnieje inna, zaktualizowana kopia danych, jÄdro zabija
              procesy, aby zapobiec uszkodzeniu danych wynikÅego z propagacji
              bÅÄdu.

              Plik posiada jednÄ z nastÄpujÄcych wartoÅci:

              1:  Wszystkie procesy, które posiadajÄ zmapowanÄ uszkodzonÄ i
                  nieprzeÅadowanÄ stronÄ, sÄ zabijane zaraz po wykryciu
                  uszkodzenia. ProszÄ zauważyÄ, że nie jest to obsÅugiwane
                  dla nielicznych typów stron, takich jak wewnÄtrzne
                  przypisanie danych przez jÄdro lub pamiÄÄ podrÄczna na dysku
                  (swap), ale dziaÅa w przypadku wiÄkszoÅci stron
                  użytkownika.

              0:  Usuwana (unmap) jest jedynie uszkodzona strona, a zabijane
                  sÄ wyÅÄcznie procesy, które chcÄ uzyskaÄ do niej dostÄp.

              Zabicie jest wykonywane za pomocÄ sygnaÅu SIGBUS z si_code
              ustawionym na BUS_MCEERR_AO. Procesy mogÄ obsÅużyÄ tÄ sytuacjÄ,
              jeÅli chcÄ; proszÄ zapoznaÄ siÄ z sigaction(2), aby dowiedzieÄ
              siÄ wiÄcej.

              Funkcja jest aktywna wyÅÄcznie na architekturach/platformach z
              zaawansowanÄ, maszynowÄ obsÅugÄ sprawdzania i zależy od
              możliwoÅci sprzÄtowych.

              Aplikacje mogÄ indywidualnie przesÅoniÄ ustawienie
              memory_failure_early_kill za pomocÄ operacji PR_MCE_KILL
              prctl(2).

              Obecne tylko, jeÅli jÄdro zostaÅo skonfigurowane z
              CONFIG_MEMORY_FAILURE.

       /proc/sys/vm/memory_failure_recovery (od Linuksa 2.6.32)
              WÅÄcza odzyskiwanie po bÅÄdzie pamiÄci (jeÅli jest obsÅugiwane
              przez danÄ platformÄ)

              1:  Próbuje odzyskiwaÄ.

              0:  Zawsze panikuje przy bÅÄdzie pamiÄci.

              Obecne tylko, jeÅli jÄdro zostaÅo skonfigurowane z
              CONFIG_MEMORY_FAILURE.

       /proc/sys/vm/oom_dump_tasks (od Linuksa 2.6.25)
              WÅÄcza tworzenie ogólnosystemowego zrzutu zadania (bez wÄtków
              jÄdra), gdy jÄdro wykonuje OOM-killing. Zrzut zawiera
              nastÄpujÄce informacje o każdym zadaniu (wÄtku, procesie):
              identyfikator wÄtku, realny identyfikator użytkownika,
              identyfikator grupy wÄtku (identyfikator procesu), rozmiar
              pamiÄci wirtualnej, rozmiar zestawu rezydentnego, procesor
              któremu przydzielono zadanie, wynik oom_adj (patrz opis
              /proc/[pid]/oom_adj) i nazwÄ polecenia. Jest to przydatne do
              okreÅlenia dlaczego OOM-killer zostaÅ przywoÅany i
              zidentyfikowania zadania, które to spowodowaÅo.

              JeÅli zawiera wartoÅÄ zero, ta informacja nie jest zrzucana.
              Zrobienie zrzutu stanu pamiÄci każdego zadania może nie byÄ
              wykonalne w bardzo dużych systemach, z tysiÄcami zadaÅ. Takie
              systemy nie powinny byÄ zmuszane do narażania siÄ na dodatkowy
              spadek wydajnoÅci w sytuacjach braku pamiÄci, gdy taka
              informacja nie może byÄ przydatna.

              JeÅli wartoÅÄ jest niezerowa, ta informacja jest pokazywana
              kiedy tylko OOM-killer rzeczywiÅcie zabija zadanie zajmujÄce
              dużo pamiÄci.

              DomyÅlnÄ wartoÅciÄ jest 0.

       /proc/sys/vm/oom_kill_allocating_task (od Linuksa 2.6.24)
              WÅÄcza lub wyÅÄcza zabijanie zadania kolejkujÄcego OOM w
              sytuacjach braku pamiÄci (Out-Of-Memory).

              JeÅli jest ustawione na zero OOM-killer przeskanuje caÅÄ listÄ
              zadaÅ i do zabicia wybierze zadania na podstawie heurystyki. Z
              reguÅy wybierane sÄ zadania zajmujÄce wiele pamiÄci, które
              zwalniajÄ duÅ¼Ä iloÅÄ pamiÄci po zabiciu.

              JeÅli jest ustawione na wartoÅÄ niezerowÄ, OOM-killer po prostu
              zabija zadanie, które wyzwoliÅo stan braku pamiÄci. W ten
              sposób unika siÄ potencjalnie kosztownego skanowania listy
              zadaÅ.

              JeÅli /proc/sys/vm/panic_on_oom jest niezerowe, to ma ono
              pierwszeÅstwo, niezależnie od wartoÅci użytej w
              /proc/sys/vm/oom_kill_allocating_task.

              DomyÅlnÄ wartoÅciÄ jest 0.

       /proc/sys/vm/overcommit_kbytes (od Linuksa 3.14)
              Ten zapisywalny plik zapewnia alternatywÄ do
              /proc/sys/vm/overcommit_ratio do kontrolowania CommitLimit gdy
              /proc/sys/vm/overcommit_memory ma wartoÅÄ 2. Pozwala na
              wykonanie overcommittu iloÅci pamiÄci w jednostkach absolutnych
              (w kB), zamiast w wartoÅciach procentowych, jak to ma miejsce
              przy overcommit_ratio. W ten sposób można osiÄgnÄÄ lepszÄ
              kontrolÄ CommitLimit na systemach z ekstremalnie duÅ¼Ä iloÅciÄ
              pamiÄci.

              Tylko jeden z overcommit_kbytes lub overcommit_ratio może
              dziaÅaÄ: jeÅli overcommit_kbytes ma wartoÅÄ niezerowÄ, to jest
              używane do obliczenia CommitLimit, w przeciwnym razie używane
              jest overcommit_ratio. Zapisanie wartoÅci do któregokolwiek z
              plików powoduje że wartoÅÄ w drugim jest ustawiana na zero.

       /proc/sys/vm/overcommit_memory
              Plik zawiera tryb rozliczeÅ pamiÄci wirtualnej jÄdra.
              Dopuszczalne wartoÅci:

                     0: heurystyczny overcommit (domyÅlnie)
                     1: zawsze robi overcommit, nigdy nie sprawdza
                     2: zawsze sprawdza, nigdy nie robi overcommitu

              W trybie 0 nie sÄ sprawdzane wywoÅania mmap(2) z MAP_NORESERVE,
              a domyÅlne sprawdzenia sÄ bardzo sÅabe, prowadzÄc do ryzyka
              zabicia procesu przez "OOM-killera". Pod Linuksem 2.4
              jakakolwiek wartoÅÄ niezerowa oznacza tryb 1.

              W trybie 2 (dostÄpnym od Linuksa 2.6), caÅkowity adres
              przestrzeni wirtualnej w systemie którÄ można przypisaÄ
              (CommitLimit w /proc/meminfo) jest obliczany jako

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

              gdzie:

                   *  total_RAM jest sumÄ pamiÄci RAM w systemie;

                   *  total_huge_TLB jest sumÄ pamiÄci przeznaczonÄ dla
                      dużych stron;

                   *  overcommit_ratio jest wartoÅciÄ w
                      /proc/sys/vm/overcommit_ratio i

                   *  total_swap jest wielkoÅciÄ przestrzeni wymiany.

              Na przykÅad w systemie z 16 GB fizycznej pamiÄci RAM i 16 GB
              pamiÄci wymiany, brakiem przestrzeni przeznaczonej na duże
              strony i z overcommit_ratio równym 50, ta formuÅa daje
              CommitLimit na poziomie 24 GB.

              Od Linuksa 3.14, gdy wartoÅÄ w /proc/sys/vm/overcommit_kbytes
              jest niezerowa, to CommitLimit jest obliczana w nastÄpujÄcy
              sposób:

                  CommitLimit = overcommit_kbytes + total_swap

       /proc/sys/vm/overcommit_ratio (od Linuksa 2.6.0)
              Plik zapisywalny definiujÄcy wartoÅÄ procentowÄ pamiÄci, na
              której można wykonaÄ overcommit. DomyÅlnÄ wartoÅciÄ jest 50.
              Zob. opis /proc/sys/vm/overcommit_memory.

       /proc/sys/vm/panic_on_oom (od wersji Linuksa 2.6.18)
              WÅÄcza lub wyÅÄcza panikÄ jÄdra w sytuacjach braku pamiÄci.

              JeÅli plik ma ustawionÄ wartoÅÄ 0, OOM-killer jÄdra zabija
              któryÅ z nieposÅusznych procesów. Z reguÅy OOM-killer jest w
              stanie to wykonaÄ i system może pracowaÄ dalej.

              JeÅli plik ma ustawionÄ wartoÅÄ 1, to jÄdro zwykle panikuje przy
              sytuacji braku pamiÄci. Jednak jeÅli proces limituje
              przydzielanie do konkretnych wÄzÅów używajÄc zasad pamiÄci
              (mbind(2)  MPOL_BIND) lub cpuset (cpuset(7)) i te wÄzÅy dotknie
              problem braku pamiÄci, to taki proces może byÄ zabity przez
              OOM-killer. Nie wystÄpuje wówczas panika, ponieważ pamiÄÄ
              innych wÄzÅów może byÄ wolna, co oznacza że system jako
              caÅoÅÄ mógÅ nie osiÄgnÄÄ jeszcze sytuacji braku pamiÄci.

              JeÅli ustawiono wartoÅÄ 2, to jÄdro zawsze panikuje w sytuacji
              braku pamiÄci.

              DomyÅlnÄ wartoÅÄ jest 0. 1 i 2 sÄ przeznaczone do poprawnej
              pracy klastrów mimo wystÄpienia problemów. ProszÄ wybraÄ
              wÅaÅciwÄ z nich, zgodnie z używanymi zasadami w takich
              sytuacjach.

       /proc/sys/vm/swappiness
              WartoÅÄ w tym pliku kontroluje jak agresywnie jÄdro przenosi
              strony pamiÄci do pamiÄci wymiany (swapu). Wyższe wartoÅci
              zwiÄkszajÄ agresywnoÅÄ, mniejsze zmniejszajÄ jÄ. DomyÅlnÄ
              wartoÅciÄ jest 60.

       /proc/sysrq-trigger (od Linuksa 2.4.21)
              Zapisanie znaków do tego pliku wyzwala tÄ samÄ funkcjÄ SysRq,
              jaka zostaÅaby wykonana przy użyciu kombinacji ALT-SysRq-<znak>
              (patrz opis /proc/sys/kernel/sysrq). Plik jest normalnie
              zapisywalny tylko dla roota. Aby dowiedzieÄ siÄ wiÄcej, proszÄ
              zapoznaÄ siÄ z plikiem Documentation/sysrq.txt w źródÅach
              jÄdra Linux.

       /proc/sysvipc
              Podkatalog zawierajÄcy pseudopliki msg, sem i shm. Pliki te
              zawierajÄ obiekty komunikacji miÄdzyprocesowej (Interprocess
              Communication - IPC) Systemu V (odpowiednio: kolejki
              komunikatów, semafory i pamiÄÄ wspólnÄ) obecnie istniejÄce w
              systemie, udostÄpniajÄc informacje podobne do tych, które sÄ
              dostÄpne poprzez ipcs(1). Pliki te zawierajÄ nagÅówki i sÄ
              sformatowane (jeden obiekt IPC w wierszu) w celu Åatwiejszego
              zrozumienia. svipc(7) podaje dodatkowe informacje o zawartoÅci
              tych plików.

       /proc/thread-self (od Linuksa 3.17)
              Ten katalog odnosi siÄ do wÄtku korzystajÄcego z systemu plików
              /proc i jest identyczny z katalogiem w /proc/self/task/[tid] o
              nazwie bÄdÄcej identyfikatorem tego wÄtku ([tid]).

       /proc/timer_list (od Linuksa 2.6.21)
              Plik tylko do odczytu udostÄpnia listÄ wszystkich bieżÄcych
              czasomierzy (wysokiej rozdzielczoÅci), wszystkich źródeÅ
              zdarzeŠzegara i ich parametrów w formie czytelnej dla
              czÅowieka.

       /proc/timer_stats (od Linuksa 2.6.21)
              Jest to funkcja debugowania uwidaczniajÄce (nad)użycia
              czasomierzy w systemie Linux deweloperom jÄdra i przestrzeni
              użytkownika. Może byÄ używana przez deweloperów zajmujÄcych
              siÄ jÄdrem i przestrzeniÄ użytkownika do weryfikacji, czy ich
              kod nie używa w nadmiarze czasomierzy. Celem jest zapobieganie
              niepotrzebnym wybudzeniom, aby zoptymalizowaÄ zużycie energii.

              JeÅli jest to wÅÄczone w jÄdrze (CONFIG_TIMER_STATS), lecz nie
              jest używane, ma narzut bliski zera oraz relatywnie niewielki
              narzut struktury danych. Nawet gdy zbieranie danych jest
              wÅÄczone przy rozruchu, narzut jest niski: wszystkie blokowania
              nastÄpujÄ wedÅug CPU, a wyszukiwanie jest haszowane.

              Plik /proc/timer_stats jest używany do kontrolowania funkcji
              próbkowania i odczytu próbek informacji.

              Funkcja timer_stats jest nieaktywna przy rozruchu. Okres
              próbkowania można uruchomiÄ poleceniem:

                  # echo 1 > /proc/timer_stats

              NastÄpujÄce polecenie zatrzymuje okres próbkowania:

                  # echo 0 > /proc/timer_stats

              Statystyki można pozyskaÄ przy pomocy:

                  $ cat /proc/timer_stats

              Gdy próbkowanie jest wÅÄczone, każdy odczyt z
              /proc/timer_stats daje nowo zaktualizowane statystyki. Po
              wyÅÄczeniu próbkowania, próbki informacji sÄ zachowywane do
              momentu wÅÄczenia nowego okresu próbkowania. Pozwala to na
              wielokrotny odczyt.

              Próbka wyniku z /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

              Kolumny wyniku:

              *  licznik liczby zdarzeÅ, po którym opcjonalnie (od Linuksa
                 2.6.23) wystÄpuje litera "D", jeÅli jest to licznik
                 odraczalny;

              *  PID procesu inicjujÄcego czasomierz

              *  nazwa procesu inicjujÄcego czasomierz;

              *  funkcja, w której czasomierz zostaŠzainicjowany i

              *  (w nawiasach) funkcja wywoÅania zwrotnego zwiÄzanego z
                 czasomierzem.

       /proc/tty
              Podkatalog zawierajÄcy psuedopliki i podkatalogi sterowników
              terminali (tty) oraz protokoÅów sterowania liniÄ (line
              discipline).

       /proc/uptime
              Ten plik zawiera dwie liczby: czas pracy systemu (w sekundach) i
              iloÅÄ czasu spÄdzonego na wykonywaniu procesu idle (w
              sekundach).

       /proc/version
              Ten napis okreÅla wersjÄ obecnie dziaÅajÄcego jÄdra. Zawiera on
              w sobie zawartoÅÄ /proc/sys/ostype, /proc/sys/osrelease i
              /proc/sys/version. Na przykÅad:
            Linux version 1.0.9 (quinlan@phaze) #1 Sat May 14 01:51:54 EDT 1994

       /proc/vmstat (od Linuksa 2.6.0)
              Plik ten wyÅwietla różne statystyki pamiÄci wirtualnej. Każdy
              wiersz pliku zawiera pojedynczÄ parÄ nazwa-wartoÅÄ, oddzielonÄ
              biaÅym znakiem. CzÄÅÄ z tych plików jest obecnych jedynie gdy
              jÄdro skonfigurowano z odpowiednimi opcjami (w niektórych
              przypadkach opcja wymagana dla poszczególnych plików mogÅa siÄ
              zmieniaÄ w różnych wersjach jÄdra, wiÄc nie sÄ one wymienione;
              wiÄcej informacji można znaleÅºÄ sprawdzajÄc kod źródeÅ
              jÄdra). MogÄ byÄ obecne nastÄpujÄce pola:

              nr_free_pages (od Linuksa 2.6.31)

              nr_alloc_batch (od Linuksa 3.12)

              nr_inactive_anon (od Linuksa 2.6.28)

              nr_active_anon (od Linuksa 2.6.28)

              nr_inactive_file (od Linuksa 2.6.28)

              nr_active_file (od Linuksa 2.6.28)

              nr_unevictable (od Linuksa 2.6.28)

              nr_mlock (od Linuksa 2.6.28)

              nr_anon_pages (od Linuksa 2.6.18)

              nr_mapped (od Linuksa 2.6.0)

              nr_file_pages (od Linuksa 2.6.18)

              nr_dirty (od Linuksa 2.6.0)

              nr_writeback (od Linuksa 2.6.0)

              nr_slab_reclaimable (od Linuksa 2.6.19)

              nr_slab_unreclaimable (od Linuksa 2.6.19)

              nr_page_table_pages (od Linuksa 2.6.0)

              nr_kernel_stack (od Linuksa 2.6.32)
                     WielkoÅÄ pamiÄci przypisana do stosów jÄdra.

              nr_unstable (od Linuksa 2.6.0)

              nr_bounce (od Linuksa 2.6.12)

              nr_vmscan_write (od Linuksa 2.6.19)

              nr_vmscan_immediate_reclaim (od Linuksa 3.2)

              nr_writeback_temp (od Linuksa 2.6.26)

              nr_isolated_anon (od Linuksa 2.6.32)

              nr_isolated_file (od Linuksa 2.6.32)

              nr_shmem (od Linuksa 2.6.32)
                     Strony użyte przez shmem i tmpfs.

              nr_dirtied (od Linuksa 2.6.37)

              nr_written (od Linuksa 2.6.37)

              nr_pages_scanned (od Linuksa 3.17)

              numa_hit (od Linuksa 2.6.18)

              numa_miss (od Linuksa 2.6.18)

              numa_foreign (od Linuksa 2.6.18)

              numa_interleave (od Linuksa 2.6.18)

              numa_local (od Linuksa 2.6.18)

              numa_other (od Linuksa 2.6.18)

              workingset_refault (od Linuksa 3.15)

              workingset_activate (od Linuksa 3.15)

              workingset_nodereclaim (od Linuksa 3.15)

              nr_anon_transparent_hugepages (od Linuksa 2.6.38)

              nr_free_cma (od Linuksa 3.7)
                     Liczba wolnych stron CMA (Contiguous Memory Allocator).

              nr_dirty_threshold (od Linuksa 2.6.37)

              nr_dirty_background_threshold (od Linuksa 2.6.37)

              pgpgin (od Linuksa 2.6.0)

              pgpgout (od Linuksa 2.6.0)

              pswpin (od Linuksa 2.6.0)

              pswpout (od Linuksa 2.6.0)

              pgalloc_dma (od Linuksa 2.6.5)

              pgalloc_dma32 (od Linuksa 2.6.16)

              pgalloc_normal (od Linuksa 2.6.5)

              pgalloc_high (od Linuksa 2.6.5)

              pgalloc_movable (od Linuksa 2.6.23)

              pgfree (od Linuksa 2.6.0)

              pgactivate (od Linuksa 2.6.0)

              pgdeactivate (od Linuksa 2.6.0)

              pgfault (od Linuksa 2.6.0)

              pgmajfault (od Linuksa 2.6.0)

              pgrefill_dma (od Linuksa 2.6.5)

              pgrefill_dma32 (od Linuksa 2.6.16)

              pgrefill_normal (od Linuksa 2.6.5)

              pgrefill_high (od Linuksa 2.6.5)

              pgrefill_movable (od Linuksa 2.6.23)

              pgsteal_kswapd_dma (od Linuksa 3.4)

              pgsteal_kswapd_dma32 (od Linuksa 3.4)

              pgsteal_kswapd_normal (od Linuksa 3.4)

              pgsteal_kswapd_high (od Linuksa 3.4)

              pgsteal_kswapd_movable (od Linuksa 3.4)

              pgsteal_direct_dma

              pgsteal_direct_dma32 (od Linuksa 3.4)

              pgsteal_direct_normal (od Linuksa 3.4)

              pgsteal_direct_high (od Linuksa 3.4)

              pgsteal_direct_movable (od Linuksa 2.6.23)

              pgscan_kswapd_dma

              pgscan_kswapd_dma32 (od Linuksa 2.6.16)

              pgscan_kswapd_normal (od Linuksa 2.6.5)

              pgscan_kswapd_high

              pgscan_kswapd_movable (od Linuksa 2.6.23)

              pgscan_direct_dma

              pgscan_direct_dma32 (od Linuksa 2.6.16)

              pgscan_direct_normal

              pgscan_direct_high

              pgscan_direct_movable (od Linuksa 2.6.23)

              pgscan_direct_throttle (od Linuksa 3.6)

              zone_reclaim_failed (od Linuksa 2.6.31)

              pginodesteal (od Linuksa 2.6.0)

              slabs_scanned (od Linuksa 2.6.5)

              kswapd_inodesteal (od Linuksa 2.6.0)

              kswapd_low_wmark_hit_quickly (od Linuksa 2.6.33)

              kswapd_high_wmark_hit_quickly (od Linuksa 2.6.33)

              pageoutrun (od Linuksa 2.6.0)

              allocstall (od Linuksa 2.6.0)

              pgrotated (od Linuksa 2.6.0)

              drop_pagecache (od Linuksa 3.15)

              drop_slab (od Linuksa 3.15)

              numa_pte_updates (od Linuksa 3.8)

              numa_huge_pte_updates (od Linuksa 3.13)

              numa_hint_faults (od Linuksa 3.8)

              numa_hint_faults_local (od Linuksa 3.8)

              numa_pages_migrated (od Linuksa 3.8)

              pgmigrate_success (od Linuksa 3.8)

              pgmigrate_fail (od Linuksa 3.8)

              compact_migrate_scanned (od Linuksa 3.8)

              compact_free_scanned (od Linuksa 3.8)

              compact_isolated (od Linuksa 3.8)

              compact_stall (od Linuksasince Linux 2.6.35)
                     Zobacz plik źródeÅ jÄdra
                     Documentation/vm/transhuge.txt.

              compact_fail (od Linuksa 2.6.35)
                     Zobacz plik źródeÅ jÄdra
                     Documentation/vm/transhuge.txt.

              compact_success (od Linuksa 2.6.35)
                     Zobacz plik źródeÅ jÄdra
                     Documentation/vm/transhuge.txt.

              htlb_buddy_alloc_success (od Linuksa 2.6.26)

              htlb_buddy_alloc_fail (od Linuksa 2.6.26)

              unevictable_pgs_culled (od Linuksa 2.6.28)

              unevictable_pgs_scanned (od Linuksa 2.6.28)

              unevictable_pgs_rescued (od Linuksa 2.6.28)

              unevictable_pgs_mlocked (od Linuksa 2.6.28)

              unevictable_pgs_munlocked (od Linuksa 2.6.28)

              unevictable_pgs_cleared (od Linuksa 2.6.28)

              unevictable_pgs_stranded (od Linuksa 2.6.28)

              thp_fault_alloc (od Linuksa 2.6.39)
                     Zobacz plik źródeÅ jÄdra
                     Documentation/vm/transhuge.txt.

              thp_fault_fallback (od Linuksa 2.6.39)
                     Zobacz plik źródeÅ jÄdra
                     Documentation/vm/transhuge.txt.

              thp_collapse_alloc (od Linuksa 2.6.39)
                     Zobacz plik źródeÅ jÄdra
                     Documentation/vm/transhuge.txt.

              thp_collapse_alloc_failed (od Linuksa 2.6.39)
                     Zobacz plik źródeÅ jÄdra
                     Documentation/vm/transhuge.txt.

              thp_split (od Linuksa 2.6.39)
                     Zobacz plik źródeÅ jÄdra
                     Documentation/vm/transhuge.txt.

              thp_zero_page_alloc (od Linuksa 3.8)
                     Zobacz plik źródeÅ jÄdra
                     Documentation/vm/transhuge.txt.

              thp_zero_page_alloc_failed (od Linuksa 3.8)
                     Zobacz plik źródeÅ jÄdra
                     Documentation/vm/transhuge.txt.

              balloon_inflate (od Linuksa 3.18)

              balloon_deflate (od Linuksa 3.18)

              balloon_migrate (od Linuksa 3.18)

              nr_tlb_remote_flush (od Linuksa 3.12)

              nr_tlb_remote_flush_received (od Linuksa 3.12)

              nr_tlb_local_flush_all (od Linuksa 3.12)

              nr_tlb_local_flush_one (od Linuksa 3.12)

              vmacache_find_calls (od Linuksa 3.16)

              vmacache_find_hits (od Linuksa 3.16)

              vmacache_full_flushes (od Linuksa 3.19)

       /proc/zoneinfo (od Linuksa 2.6.13)
              Plik zawiera informacje o strefach pamiÄci. Może byÄ przydatny
              podczas analizowania zachowania pamiÄci wirtualnej.

UWAGI
       Wiele ÅaÅcuchów znakowych (np. Årodowisko czy linia poleceÅ) wystÄpuje
       w postaci wewnÄtrznej, z polami zakoÅczonymi bajtami NUL ('\0'), wiÄc
       jeÅli do ich czytania użyje siÄ od -c lub tr "\000" "\n", to mogÄ byÄ
       bardziej czytelne. Alternatywnie, echo `cat <plik>` dziaÅa równie
       dobrze.

       Ta strona podrÄcznika jest niekompletna, prawdopodobnie niedokÅadna i
       należy do tych, które powinny byÄ bardzo czÄsto poprawiane.

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

       Pliki w źródÅach jÄdra Linux: Documentation/filesystems/proc.txt
       Documentation/sysctl/fs.txt, Documentation/sysctl/kernel.txt,
       Documentation/sysctl/net.txt i Documentation/sysctl/vm.txt.

O STRONIE
       Angielska wersja tej strony pochodzi z wydania 4.05 projektu Linux
       man-pages. Opis projektu, informacje dotyczÄce zgÅaszania bÅÄdów, oraz
       najnowszÄ wersjÄ oryginaÅu można znaleÅºÄ pod adresem
       https://www.kernel.org/doc/man-pages/.

TÅUMACZENIE
       Jiffy to wartoÅÄ wynoszÄca, w zależnoÅci od architektury, od 1 do 10
       ms (4 ms w przypadku i386).

       Autorami polskiego tÅumaczenia niniejszej strony podrÄcznika man sÄ:
       Przemek Borys (PTM) <pborys@p-soft.silesia.linux.org.pl>, Robert
       Luberda <robert@debian.org> i MichaÅ KuÅach <michal.kulach@gmail.com>.

       Polskie tÅumaczenie jest czÄÅciÄ projektu manpages-pl; uwagi, pomoc,
       zgÅaszanie bÅÄdów na stronie http://sourceforge.net/projects/manpages-
       pl/. Jest zgodne z wersjÄ  4.05 oryginaÅu.



Linux                             2016-03-15                           PROC(5)