TASKSET(1)

BEZEICHNUNG
taskset - den CPU-Bezug eines Prozesses festlegen oder ermitteln

ÜBERSICHT
taskset [Optionen] Maske Befehl [Argument…]
taskset [Optionen] -p [Maske] PID

BESCHREIBUNG

taskset wird zum Ermitteln oder Festlegen des CPU-Bezugs eines laufenden Prozesses verwendet, entweder durch Angabe der Prozesskennung (PID) oder durch Ausführen eines neuen Befehls mit dem angegebenen CPU-Bezug. Der CPU-Bezug ist eine Scheduler-Eigenschaft, die einen Prozess an eine gegebene CPU-Gruppe des Systems »bindet«. Der Linux-Scheduler respektiert den angegebenen CPU-Bezug, so dass der Prozess nicht auf irgend einer anderen CPU ausgeführt wird. Beachten Sie, dass der Scheduler auch den natürlichen CPU-Bezug unterstützt: der Scheduler versucht, Prozesse auf der gleichen CPU zu halten, solange es aus Leistungsgründen praktisch ist. Daher ist das Erzwingen eines spezifischen CPU-Bezugs nur in bestimmten Anwendungsfällen sinnvoll.

Der CPU-Bezug wird in Form einer Bitmaske dargestellt, mit dem niedrigstwertigen Bit für die erste und dem höchstwertigen für die letzte logische CPU. Es müssen nicht alle CPUs auf einem System vorhanden sein, aber eine Maske kann mehr CPUs enthalten, als verfügbar sind. Eine ermittelte Bitmaske bildet nur jene CPUs ab, die tatsächlich physisch auf dem System vorhanden sind. Falls eine ungültige Maske angegeben wird (für die keine passenden CPUs auf dem System gefunden wurden), wird ein Fehler zurückgegeben. Die Masken können hexadezimal angegeben werden (mit oder ohne führendem »0x«) oder als CPU-Liste, die mit der Option --cpu-list angegeben wird. Zum Beispiel

    0x00000001
        ist Prozessor #0,

    0x00000003
        sind die Prozessoren #0 und #1,

    0xFFFFFFFF
        sind die Prozessoren #0 bis #31,

    32  sind die Prozessoren #1, #4 und #5,

    --cpu-list 0-2,6
        sind die Prozessoren #0, #1, #2 und #6.

    --cpu-list 0-10:2
        sind die Prozessoren #0, #2, #4, #6, #8 und #10. Das Suffix »:N« gibt die Schrittweite in dem Bereich an, zum Beispiel wird 0-10:3 als Liste von 0,3,6,9 interpretiert.

Wenn taskset etwas zurückgibt, dann ist garantiert, dass das gegebene Programm einer gültigen CPU zugeordnet wurde.

OPTIONEN

-a, --all-tasks
    setzt oder ermittelt den CPU-Bezug aller Prozesse (Threads) für eine gegebene Prozesskennung (PID).

-c, --cpu-list
    interpretiert Maske als numerische Liste von Prozessoren statt einer Bitmaske. Nummern werden durch Kommata getrennt und dürfen Bereichsangaben enthalten. Beispiel: 0,5,8-11.

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

-V, --version
    zeigt Versionsinformationen an und beendet das Programm.

-h, --help
    zeigt einen Hilfetext an und beendet das Programm.

VERWENDUNG

Per Vorgabe wird ein neuer Befehl mit der gegebenen Bezugsmaske ausgeführt:
    taskset Maske Befehl [Argumente]

Sie können auch den CPU-Bezug eines existierenden Prozesses ermitteln:
    taskset -p PID

oder ihn festlegen:
    taskset -p Maske PID

ZUGRIFFSRECHTE
Ein Benutzer muss über CAP_SYS_NICE verfügen, um den CPU-Bezug eines Prozesses zu ändern. Die Ermittlung der Bezugsmaske ist allen Benutzern erlaubt.

SIEHE AUCH
chrt(1), nice(1), renice(1), sched_getaffinity(2), sched_setaffinity(2)

In sched(7) finden Sie eine Beschreibung des Scheduling-Schemas in Linux.

AUTOR
Geschrieben von Robert M. Love.

COPYRIGHT
Copyright © 2004 Robert M. Love. Dies ist freie Software, in den Quellen finden Sie die Bedingungen zur Vervielfältigung und Weitergabe. Es gibt KEINE Garantie, auch nicht für die MARKTREIFE oder die TAUGLICHKEIT FÜR EINEN BESTIMMTEN ZWECK.

VERFÜGBARKEIT
Der Befehl taskset ist Teil des Pakets util-linux und kann von https://www.kernel.org/pub/linux/utils/util-linux/ heruntergeladen werden.

ÜBERSETZUNG
Die deutsche Übersetzung dieser Handbuchseite wurde von Mario Blättermann <mario.blaettermann@gmail.com> und Dr. Tobias Quathamer <toddy@debian.org> erstellt. Diese Übersetzung ist Freie Dokumentation; lesen Sie die GNU General Public License Version 3 oder neuer bezüglich der Copyright-Bedingungen. Es wird KEINE HAFTUNG übernommen. Wenn Sie Fehler in der Übersetzung dieser Handbuchseite finden, schicken Sie bitte eine E-Mail an <debian-l10n-german@lists.debian.org>.