CHRT(1)

NUME
chrt - manipulează atributele în timp real ale unui proces

REZUMAT

chrt [opțiuni] [prioritatea] comanda [argument...]

chrt --pid [opțiuni] [prioritatea] PID

DESCRIERE

chrt stabilește sau recuperează atributele de planificare în timp real ale unui PID existent sau execută comanda cu atributele date.

OPȚIUNI POLITICĂ

-o, --other
    Stabilește politica de planificare la SCHED_OTHER (planificare în timp partajat). Aceasta este politica de planificare implicită a Linux. Începând cu versiunea 2.42 a util-linux, argumentul „prioritatea” este opțional; dacă este specificat, trebuie definit la zero.

-f, --fifo
    Stabilește politica de planificare la SCHED_FIFO („first in-first out”, primul intrat-primul ieșit).

-r, --rr
    Stabilește politica de planificare la SCHED_RR (planificare „round-robin”). Atunci când nu este definită nicio politică, SCHED_RR este utilizată ca valoare implicită.

-b, --batch
    Stabilește politica de planificare la SCHED_BATCH (programarea proceselor pe loturi). Specific Linux, acceptat începând cu versiunea 2.6.16. Începând cu versiunea 2.42 a util-linux, argumentul „prioritate” este opțional; dacă este specificat, trebuie definit la zero.

-i, --idle
    Stabilește politica de planificare la SCHED_IDLE (programarea lucrărilor cu prioritate foarte mică). Specific Linux, acceptat începând cu versiunea 2.6.23. Începând cu versiunea 2.42 a util-linux, argumentul „prioritate” este opțional; dacă este specificat, trebuie definit la zero.

-d, --deadline
    Stabilește politica de planificare la SCHED_DEADLINE (planificare cu termen limită a modelului de sarcini sporadice). Specific Linux, acceptat începând cu versiunea 3.14. Începând cu versiunea 2.42 a util-linux, argumentul „prioritate” este opțional; dacă este specificat, trebuie definit la zero. A se vedea și --sched-runtime, --sched-deadline și --sched-period. Relația dintre opțiunile cerute de nucleu este: runtime (în timpul execuției) ⇐ deadline (termen limită) ⇐ period (perioadă). chrt copiază perioada în termen-limită dacă --sched-deadline nu este specificat și termen-limită în timpul-execuției dacă --sched-runtime nu este specificat. Aceasta înseamnă că cel puțin --sched-period trebuie să fie specificată. A se vedea sched(7) pentru mai multe detalii.

-e, --ext
    Set scheduling policy to SCHED_EXT (BPF program-defined scheduling). Linux-specific, supported since 6.12. Since util-linux v2.42, the priority argument is optional; if specified, it must be set to zero. Note that for the policy to be recognized, the following kernel configuration options need to be enabled: CONFIG_BPF, CONFIG_SCHED_CLASS_EXT, CONFIG_BPF_SYSCALL, CONFIG_BPF_JIT, CONFIG_DEBUG_INFO_BTF, CONFIG_BPF_JIT_ALWAYS_ON and CONFIG_BPF_JIT_DEFAULT_ON.

OPȚIUNI DE PLANIFICARE

-T, --sched-runtime nanosecunde
    Specifică parametrul de timp de execuție pentru SCHED_DEADLINE și lungimea personalizată a bucății (slice) pentru politicile SCHED_OTHER și SCHED_BATCH (specific Linux). Rețineți că lungimea personalizată a bucății prin intermediul parametrului de timp de execuție este acceptată începând cu Linux 6.12.

-P, --sched-period nanosecunde
    Specifică parametrul de perioadă pentru politica SCHED_DEADLINE (specific Linux). Rețineți că limita inferioară a nucleului este de 100 de microsecunde.

-D, --sched-deadline nanosecunde
    Specifică parametrul de termen limită pentru politica SCHED_DEADLINE (specific Linux).

-R, --reset-on-fork
    Utilizează fanionul SCHED_RESET_ON_FORK sau SCHED_FLAG_RESET_ON_FORK. Specific Linux, acceptat începând cu 2.6.31.

    Fiecare fir are un fanion de planificare reset-on-fork. Atunci când acest fanion este activat, procesele-copil create de fork(2) nu moștenesc politicile de planificare privilegiate. După ce fanionul reset-on-fork a fost activat, acesta poate fi reinițializat numai dacă firul are capacitatea CAP_SYS_NICE. Acest fanion este dezactivat în procesele-copil create de fork(2).

    Mai exact, în cazul în care este activat fanionul reset-on-fork, se aplică următoarele reguli pentru procesele-copil create ulterior:

        • În cazul în care firul apelant are o politică de planificare de SCHED_FIFO sau SCHED_RR, politica este restabilită la SCHED_OTHER în procesele-copii.

        • În cazul în care procesul apelant are o valoare negativă, valoarea „nice” este restabilită la zero în procesele-copii.

OPȚIUNI

-a, --all-tasks
    Stabilește sau recuperează atributele de planificare ale tuturor sarcinilor (fire de execuție) pentru un anumit PID.

-m, --max
    Afișează prioritățile minime și maxime valide, apoi iese.

-p, --pid
    Operează pe un PID existent și nu lansează o sarcină nouă.

-v, --verbose
    Afișează informațiile de stare.

-h, --help
    Afișează acest mesaj de ajutor și iese.

-V, --version
    Afișează versiunea și iese.

EXEMPLE

Comportamentul implicit este de a rula o nouă comandă:

    chrt prioritatea comanda [argumente]

De asemenea, puteți prelua atributele în timp real ale unei sarcini existente:

    chrt --pid PID

Sau să-le stabiliți:

    chrt --pid opțiune-politică prioritatea PID

De exemplu, pentru a defini politica de planificare la SCHED_RR (round-robin) și prioritatea la 30 pentru procesul 1234:

    chrt --pid -r 30 1234

Restabilește prioritățile la cele implicite pentru un proces:

    chrt --pid -o 0 PID

Stabilește un interval personalizat de 1 ms pentru o sarcină de tip SCHED_OTHER (prioritatea este opțională pentru politicile altele decât SCHED_FIFO și SCHED_RR):

    chrt --pid -o -T 1000000 PID

A se vedea sched(7) pentru o discuție detaliată a diferitelor clase de planificare și a modului în care acestea interacționează.

PERMISIUNI

Un utilizator trebuie să posede CAP_SYS_NICE pentru a modifica atributele de planificare ale unui proces. Orice utilizator poate prelua informațiile de planificare.

NOTE

Numai SCHED_FIFO, SCHED_OTHER și SCHED_RR fac parte din POSIX 1003.1b Process Scheduling (planificare proces). Celelalte atribute de planificare pot fi ignorate pe unele sisteme.

Politica de planificare implicită a Linux este SCHED_OTHER.

AUTORI

CONSULTAȚI ȘI

nice(1), renice(1), taskset(1), sched(7)

Consultați sched_setscheduler(2) pentru o descriere a schemei de planificare Linux.

RAPORTAREA ERORILOR

Pentru rapoarte de eroare, folosiți

DISPONIBILITATE

Comanda chrt face parte din pachetul util-linux care poate fi descărcat de la