Scroll to navigation

CHRT(1) Dienstprogramme für Benutzer CHRT(1)

BEZEICHNUNG

chrt - die Echtzeitattribute eines Prozesses manipulieren

ÜBERSICHT

chrt [Optionen] Priorität Befehl Argument ...

chrt [Optionen] -p [Priorität] PID

BESCHREIBUNG

chrt setzt oder ermittelt die Echtzeit-Scheduling-Attribute eines existierenden Prozesses mit der Kennung PID oder führt einen Befehl mit den angegebenen Attributen aus.

SCHEDULING-REGELN

-o, --other

setzt die Scheduling-Regel auf SCHED_OTHER (zeitbasiertes Scheduling). Dies ist die Vorgabe unter Linux.

-f, --fifo

setzt die Scheduling-Regel auf SCHED_FIFO (zuerst hinein - zuerst hinaus).

-r, --rr

setzt die Scheduling-Regel auf SCHED_RR (Rundlauf-Scheduling, »round-robin«). Wenn keine Regel definiert ist, wird SCHED_RR als Vorgabe verwendet.

-b, --batch

setzt die Scheduling-Regel auf SCHED_BATCH (Stapelverarbeitungsprozess-Scheduling). Linux-spezifisch, unterstützt seit 2.6.16. Das Prioritäts-Argument muss auf Null gesetzt werden.

-i, --idle

setzt die Scheduling-Regel auf SCHED_IDLE (Scheduling von Prozessen niedriger Priorität). Linux-spezifisch, unterstützt seit 2.6.23. Das Prioritäts-Argument muss auf Null gesetzt werden.

-d, --deadline

legt die Scheduling-Regel auf SCHED_DEADLINE fest (»sporadic task model deadline scheduling«, Linux-spezifisch, seit 3.14 unterstützt). Das Prioritäts-Argument muss auf Null gesetzt werden. Siehe auch --sched-runtime, --sched-deadline und --sched-period. Der Zusammenhang zwischen den vom Kernel verlangten Optionen ist Laufzeit ⇐ deadline ⇐ Periode. chrt kopiert period nach deadline, falls --sched-deadline nicht angegeben ist und deadline nach runtime, falls --sched-runtime nicht angegeben ist. Das bedeutet, dass mindestens --sched-period angegeben sein muss. Siehe sched(7) für weitere Details.

SCHEDULING-OPTIONEN

-T, --sched-runtime Nanosekunden

gibt die Laufzeitparameter für die SCHED_DEADLINE-Regel an (Linux-spezifisch).

-P, --sched-period Nanosekunden

gibt den Periodenparameter für die SCHED_DEADLINE-Regel an (Linux-spezifisch). Beachten Sie, dass die untere Grenze des Kernels bei 100 Millisekunden liegt.

-D, --sched-deadline Nanosekunden

gibt den Deadline-Parameter für die SCHED_DEADLINE-Regel an (Linux-spezifisch).

-R, --reset-on-fork

fügt SCHED_RESET_ON_FORK oder SCHED_FLAG_RESET_ON_FORK hinzu (Linux-spezifisch, unterstützt seit 2.6.31).

Jeder Thread hat einen Scheduling-Schalter reset-on-fork. Wenn dieser Schalter gesetzt ist, erben von fork(2) erzeugte Kindprozesse nicht die privilegierten Scheduling-Regeln. Nachdem der Schalter reset-on-fork aktivert wurde, kann er nur zurückgesetzt werden, wenn der der Thread über die Capability CAP_SYS_NICE verfügt. Dieser Schalter ist in von fork(2) erzeugten Kindprozessen deaktiviert.

Genauer gesagt, falls der Schalter reset-on-fork gesetzt ist, werden die folgenden Regeln für nachfolgend erzeugte Kinder angewendet:

•Falls die Scheduling-Regel des aufrufenden Threads auf SCHED_FIFO oder SCHED_RR gesetzt ist, wird die Regel in Kindprozessen auf SCHED_OTHER zurückgesetzt.

•Falls der aufrufende Prozess einen negativen Nice-Wert hat, wird der Nice-Wert in Kindprozessen auf 0 zurückgesetzt.

OPTIONEN

-a, --all-tasks

setzt oder ermittelt die Scheduling-Attribute aller Prozesse (Threads) für eine gegebene Kennung (PID).

-m, --max

zeigt die minimal und maximal möglichen Prioritäten und beendet dann das Programm.

-p, --pid

verwendet eine vorhandene Prozesskennung (PID), anstatt einen neuen Prozess zu starten.

-v, --verbose

zeigt Statusinformationen an.

-h, --help

zeigt einen Hilfetext an und beendet das Programm.

-V, --version

zeigt Versionsinformationen an und beendet das Programm.

BEISPIELE

Das Standardverhalten ist die Ausführung eines neuen Befehls:

chrt Priorität Befehl [Argumente]

Sie können auch die Echtzeitattribute eines existierenden Prozesses ermitteln:

chrt -p PID

Oder sie festlegen:

chrt -r -p Priorität PID

Folgendes setzt das Echtzeit-Scheduling auf die Priorität 30 für den Prozessmit der angegebenen PID mit der (Round-Robin-)Klasse SCHED_RR:

chrt -r -p 30 PID

Prioritäten für einen Prozess auf die Vorgabe setzen:

chrt -o -p 0 PID

In sched(7) finden Sie eine detaillierte Beschreibung der verschiedenen Scheduling-Klassen und Informationen darüber, wie diese miteinander interagieren.

ZUGRIFFSRECHTE

Ein Benutzer muss über CAP_SYS_NICE verfügen, um die Scheduling-Attribute eines Prozesses zu ändern. Die Ermittlung der Scheduling-Attribute ist allen Benutzern erlaubt.

ANMERKUNGEN

Nur SCHED_FIFO, SCHED_OTHER und SCHED_RR sind Teil des Prozess-Schedulings nach POSIX 1003.1b. Die anderen Scheduling-Attribute können auf einigen Systemen ignoriert werden.

Die unter Linux vorgegebene Scheduling-Regel ist SCHED_OTHER.

AUTOREN

Robert Love <rml@tech9.net>, Karel Zak <kzak@redhat.com>

SIEHE AUCH

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

In sched_setscheduler(2) finden Sie eine Beschreibung des Scheduling-Schemas in Linux.

FEHLER MELDEN

Nutzen Sie zum Melden von Fehlern das Fehlererfassungssystem auf <https://github.com/util-linux/util-linux/issues>.

VERFÜGBARKEIT

Der Befehl chrt ist Teil des Pakets util-linux, welches aus dem Linux-Kernel-Archiv <https://www.kernel.org/pub/linux/utils/util-linux/> heruntergeladen werden kann.

2024-10-01 util-linux 2.40.2