Der Befehl chrt

chrt-featured

In diesem Beitrag lernen Sie den Befehl chrt kennen, welcher unter Linux- / UNIX-Betriebssystemen eingesetzt wird, um die Echtzeit-Scheduling-Attribute von Prozessen auszulesen und zu setzen. Unter anderem können etwa der Scheduler sowie die Scheduling-Priorität von Prozessen beeinflusst werden. In der Regel setzt die Verwendung von chrt Root-Rechte voraus.

In den meisten Anwendungsfällen reicht die Verwendung des Befehls nice zur Festlegung der Prozesspriorität aus.

Installation

Als Teil des Pakets util-linux ist chrt auf den meisten Systemen bereits vorinstalliert. Mit dem folgenden Befehl ist jedoch auch eine manuelle Installation mithilfe von apt möglich:

apt-get install util-linux

Allgemeine Syntax

chrt kann verwendet werden, um einen Befehl mit den gegebenen Attributen zu starten. Die allgemeine Syntax hierfür lautet folgendermaßen:

chrt [Optionen] [Priorität] [Befehl [Argumente]]

Sollen stattdessen die Attribute eines bereits laufenden Prozesses geändert werden, so wird die Option -p verwendet und die PID des Prozesses am Ende angegeben:

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

Bei Verwendung letzterer Syntax ohne Prioritätswert sowie ohne sonstige Optionen kann chrt auch die aktuellen Attribute des Prozesses mit der gegebenen PID ausgeben. Die chrt zu übergebende Priorität liegt üblicherweise im Wertebereich 1 (niedrig) bis 99 (hoch). Es handelt sich um negative Werte, die auch als solche angezeigt, jedoch ohne Vorzeichen an chrt übergeben werden.

Beispiel: Attribute eines Prozesses auslesen

In diesem Beispiel wird das Auslesen der aktuellen Attribute eines Prozesses gezeigt.
Eingabe:

Dem Befehl chrt werden lediglich die Option -p sowie die PID des entsprechenden Prozesses übergeben.

chrt -p 1525

Ausgabe:

Der Ausgabe ist der aktuell verwendete Scheduler ("scheduling policy") sowie die Scheduling-Priorität ("scheduling priority") zu entnehmen. In diesem Fall verwendet der Prozess mit der PID 1525 den Standardscheduler ("SCHED_OTHER") und die Priorität 0.

pid 1525's current scheduling policy: SCHED_OTHER
pid 1525's current scheduling priority: 0

Wichtige Optionen

Die wichtigsten Optionen des Befehls chrt werden im Folgenden vorgestellt. Der Abschnitt zeigt jeweils die Syntax zur Änderung von bereits laufenden Prozessen. Analog können die Optionen jedoch auch verwendet werden, wenn ein Befehl mit chrt ausgeführt wird.

-o - Standardscheduler verwenden

Mithilfe der Option -o wird die Verwendung des Standardschedulers, für Prozesse ohne Echtzeitanforderungen, festgelegt. Es handelt sich hierbei auch um den Standard für die meisten "normalen" Prozesse. Die Priorität wird hier nicht für Scheduling-Entscheidungen verwendet und muss entsprechend als 0 angegeben werden.

chrt -o -p 0 [PID]

-i - Idle-Scheduler verwenden

Die Auswahl eines Schedulers für lange Prozesse, die im Hintergrund abgearbeitet werden sollen, erfolgt mit der Option -i. Die Priorität muss hier auf 0 gesetzt werden.

chrt -i -p 0 [PID]

-b - Batch-Scheduler verwenden

Für das Scheduling von Batch-Prozessen kann die Option -b verwendet werden. Auch hier muss die Priorität 0 sein.

chrt -b -p 0 [PID]

-f - FIFO-Scheduler verwenden

Mithilfe der Option -f kann das First-In-First-Out Scheduling (FIFO) verwendet werden.

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

-r - Round Robin-Scheduler verwenden

Die Option -r erlaubt die Verwendung des Round Robin-Verfahrens für das Scheduling. Es handelt sich um eine Erweiterung des FIFO-Verfahrens, bei dem eine Zeitbegrenzung für die einzelnen Prozesse gilt.

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

Abonniere JETZT unseren Newsletter!


Verpasse nie wieder neue Beiträge und exklusive Insider-Only-Inhalte!

Joel Benseler

Click Here to Leave a Comment Below

Leave a Comment: