Scroll to navigation

CHOOM(1) Polecenia użytkownika CHOOM(1)

NAZWA

choom - wyświetla i zmienia punktację OOM-killera.

choom -p PID

choom -p PID -n liczba

choom -n liczba [--] polecenie [argument ...]

OPIS

Polecenie choom wyświetla i zmienia punktację OOM-killera (ang. Out-Of-Memory - sytuacja braku pamięci).

OPCJE

-p, --pid pid

Określa identyfikator procesu.

-n, --adjust wartość

Określa wartość zmiany punktacji.

-h, --help

Wyświetla ten tekst i wychodzi.

-V, --version

Wyświetla wersję i wychodzi.

UWAGI

Jądro Linux używa heurystyki zwanej "badness" (zło lub niegodziwość) do wyboru procesu, który zostanie zabity w przypadku wystąpienia 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.

Istnieje dodatkowy czynnik w wyniku badness: pamięć bieżąca i użycie pamięci wymiany jest dyskontowane o 3% w przypadku procesów roota.

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

Zmieniana wartość punktacji jest dodawana do wyniku badness przed wyznaczeniem zadania do zabicia. Prawidłowy zakres wartości wynosi od -1000 do +1000. Pozwala to na wpływanie na OOM-killera z przestrzeni użytkownika sięgającego od preferowania danego zadania w każdym wypadku, do zupełnego pomijania go. Najniższa możliwa wartość, -1000 oznacza zupełne wyłączenie OOM-killera dla danego zadania, ponieważ otrzyma ono zawsze wynik badness wynoszący 0.

Ustawienie wartości 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 oznacza mniej więcej, że 50% dozwolonej pamięci zadania nie będzie się liczyło na poczet opisywanego wyniku.

AUTORZY

Karel Zak <kzak@redhat.com>

ZOBACZ TAKŻE

proc(5)

ZGŁASZANIE BŁĘDÓW

Problemy należy zgłaszać w systemie śledzenia błędów <https://github.com/util-linux/util-linux/issues>.

DOSTĘPNOŚĆ

Polecenie choom jest częścią pakietu util-linux, który można pobrać ze strony Archiwum jądra Linux <https://www.kernel.org/pub/linux/utils/util-linux/>.

2025-09-24 util-linux 2.41.2