Threading ist eine Programmabstraktion für die parallele Ausführung in modernen Betriebssystemen. Bei der Ausführung von Programmen mit mehreren Threads geschieht Folgendes: RAM-Adressraum und offene Dateien werden von den Threads gemeinsam genutzt, um den Overhead zu minimieren und die CPU-Zeit effizienter zu nutzen. All dies macht die Multithread-Ausführung zu einem effizienten und nützlichen Mechanismus. Sie können Threads mit den Befehlszeilenwerkzeugen ps
und top
anzeigen. Als Nächstes wollen wir uns ansehen, wie dies im Linux-Betriebssystem funktioniert.
Linux bietet zwei Möglichkeiten zum Debuggen von Multithreading-Prozessen, die eine bestimmte Aktion ausführen. Zum einen kann ein Prozess mithilfe des Fork-Mechanismus seine eigenen Kopien erstellen, die dann über Sockets oder IPC kommunizieren. Т. Der Benutzer erhält Prozesse, die Ressourcen und eine bestimmte Menge an Speicher belegen. Die nächste Möglichkeit ist die Zuweisung von Threads innerhalb eines einzelnen Prozesses. Auf diese Weise haben alle Threads eines einzelnen Prozesses eine Thread-Gruppen-Kennung sowie eine eindeutige Kennung. Das heißt, sie haben Zugang zu allen Ressourcen des Elternprozesses und belegen weniger Speicherplatz.
In diesem Programm werden die Prozess-Threads durch einen einzigen Befehl aktiviert - T.
Auf die folgende Weise können Sie alle Prozess-Threads mit PID für Chromium sehen:
$ ps -T -p
In der Spalte SPID steht die Thread-ID und in der Spalte CMD der Name des Threads.
Mit Hilfe des Dienstprogramms top ist es einfach, Threads in Echtzeit zu sehen. Dazu müssen Sie top mit der Option -H
ausführen. Es ist möglich, die Anzeige der Threads zur Laufzeit mit der Taste H zu aktivieren oder zu deaktivieren:
$ top -H
Wenn Sie nur die Threads des gewünschten Prozesses anzeigen möchten, verwenden Sie die Option -H:
$ top -H -p pid
Wie Sie sehen können, ist die Verwendung von top recht einfach.
Das bequemste Dienstprogramm zur Anzeige von Threads ist jedoch HTOP. Es ist der wichtigste interaktive Prozessbetrachter auf ncurces. Mit seiner Hilfe können Sie Threads in Echtzeit in Form eines Baums beobachten.
Dazu müssen Sie die Thread-Ansicht in htop aktivieren: Öffnen Sie zunächst das Programm, rufen Sie das Menü auf, indem Sie F2 drücken, und wählen Sie dann unter Setup die Option Display Options. Setzen Sie nun ein Häkchen bei Drei Ansichten und Benutzerdefinierte Threadnamen anzeigen. Das war's, Sie können F10 drücken, um die Einstellungen zu speichern:
Das war's. Auf diese Weise können Sie die Threads in einer Baumansicht separat für jeden Prozess anzeigen. Hier sehen Sie wieder die Threads für den Chromium-Browser:
Apply the discount by inserting the promo code in the special field at checkout:
Apply the discount by inserting the promo code in the special field at checkout: