Provided by: manpages-pl_4.27.0-1_all bug

NAZWA

       /proc/pid/oom_score_adj - dostosowanie wyniku dla OOM-killera

OPIS

       /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 wyczerpana, 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
              wszystkim zaalokowanym 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ść.

              Program  choom(1)  zapewnia  interfejs  wiersza  poleceń  do dostosowywania wartości oom_score_adj
              działającego procesu lub nowo wykonywanego polecenia.

HISTORIA

       /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,  choć  może
              zawsze zwiększyć swoje ustawienie oom_adj (od Linuksa 2.6.20).

              Od  Linuksa  2.6.36  używanie  tego pliku jest przestarzałe, na korzyść /proc/pid/oom_score_adj, a
              usunięto go w Linuksie 3.7.

ZOBACZ TAKŻE

       proc(5), proc_pid_oom_score(5)

TŁUMACZENIE

       Tłumaczenie  niniejszej  strony  podręcznika:  Przemek  Borys   <pborys@dione.ids.pl>,   Robert   Luberda
       <robert@debian.org> i Michał Kułach <michal.kulach@gmail.com>

       Niniejsze  tłumaczenie  jest  wolną  dokumentacją.  Bliższe informacje o warunkach licencji można uzyskać
       zapoznając  się  z  GNU General Public License w wersji 3  lub  nowszej.   Nie   przyjmuje   się   ŻADNEJ
       ODPOWIEDZIALNOŚCI.

       Błędy  w  tłumaczeniu  strony  podręcznika  prosimy  zgłaszać  na  adres  listy  dyskusyjnej manpages-pl-
       list@lists.sourceforge.net.

Linux man-pages 6.9.1                            2 maja 2024 r.                        proc_pid_oom_score_adj(5)