Heim  >  Artikel  >  Was ist die kleinste Befehlsflusseinheit, wenn ein Programm ausgeführt wird?

Was ist die kleinste Befehlsflusseinheit, wenn ein Programm ausgeführt wird?

青灯夜游
青灯夜游Original
2022-08-23 14:16:408852Durchsuche

„Thread“ ist die kleinste Einheit des Befehlsflusses, wenn ein Programm ausgeführt wird. Ein Prozess bezieht sich auf ein Programm mit bestimmten unabhängigen Funktionen. Ein Thread ist Teil des Prozesses und beschreibt den Ausführungsstatus des Befehlsflusses. Der Thread ist die kleinste Einheit des Befehlsausführungsflusses im Prozess und die Grundeinheit der CPU-Planung. Ein Thread ist ein Ausführungsprozess einer Aufgabe (ein Programmsegment); ein Thread belegt keinen Speicherplatz, er ist im Speicherbereich des Prozesses enthalten. Innerhalb desselben Prozesses teilen sich mehrere Threads die Ressourcen des Prozesses; ein Prozess verfügt über mindestens einen Thread.

Was ist die kleinste Befehlsflusseinheit, wenn ein Programm ausgeführt wird?

Die Betriebsumgebung dieses Tutorials: Windows 7-System, Dell G3-Computer.

„Thread“ ist die kleinste Einheit des Befehlsflusses, wenn ein Programm ausgeführt wird.

Ein Prozess bezieht sich auf einen dynamischen Ausführungsprozess eines Programms mit bestimmten unabhängigen Funktionen auf einer Datensammlung. Der Thread ist Teil des Prozesses und beschreibt den Ausführungsstatus des Befehlsflusses. Es ist die kleinste Einheit des Befehlsausführungsflusses in einem Prozess und die Grundeinheit der CPU-Planung.

Thread: Ein leichter Prozess, der die kleinste Einheit für die Planung durch das Betriebssystem darstellt. Ein Thread ist ein Ausführungsprozess einer Aufgabe (eines Programmsegments). Der Thread belegt keinen Speicherplatz, er ist im Speicherbereich des Prozesses enthalten. Innerhalb desselben Prozesses teilen sich mehrere Threads die Ressourcen des Prozesses. Ein Prozess hat mindestens einen Thread.

Status

Wenn das Betriebssystem einen Thread erstellt, befindet sich der Thread im Erstellungsstatus. Wenn die CPU den Thread plant, befindet sich der Thread zu diesem Zeitpunkt im laufenden Status Threads befinden sich natürlich im Bereitschaftszustand, z. B. bei der Ausführung von E/A. Wenn das Betriebssystem den Thread zerstört, befindet er sich in einem beendeten Zustand . Darüber hinaus verfügt der Thread auch über einen statischen Bereitschaftszustand und einen statischen Blockierungszustand. Wenn er sich in diesen beiden Zuständen befindet, wird er vom Betriebssystem angehalten, um den Thread-Status zu beobachten und zu analysieren.

Was ist die kleinste Befehlsflusseinheit, wenn ein Programm ausgeführt wird?

Funktionen

In einem Multithread-Betriebssystem sind normalerweise mehrere Threads in einem Prozess enthalten. Jeder Thread ist die Grundeinheit für die CPU-Nutzung und eine Einheit, die den geringsten Overhead verursacht. Threads haben die folgenden Eigenschaften.

1), Leichte Entitäten

Entitäten in Threads besitzen grundsätzlich keine Systemressourcen, sondern verfügen nur über einige unverzichtbare Ressourcen, die einen unabhängigen Betrieb gewährleisten können.

Thread-Entitäten umfassen Programme, Daten und TCB. Thread ist ein dynamisches Konzept und seine dynamischen Eigenschaften werden durch den Thread Control Block (TCB) beschrieben.

2), Grundeinheit der unabhängigen Terminplanung und Disposition.

In Multithread-Betriebssystemen sind Threads die Grundeinheit, die unabhängig ausgeführt werden kann, und sind daher auch die Grundeinheit für unabhängige Planung und Verteilung. Da Threads sehr „leicht“ sind, ist der Thread-Wechsel sehr schnell und verursacht nur wenig Overhead (im selben Prozess).

3) können gleichzeitig ausgeführt werden.

Mehrere Threads in einem Prozess können gleichzeitig ausgeführt werden, und sogar alle Threads in einem Prozess können gleichzeitig ausgeführt werden. Threads in verschiedenen Prozessen können auch gleichzeitig ausgeführt werden, wobei der Prozessor und die Funktionsfähigkeit von Peripheriegeräten voll ausgenutzt werden parallel.

4), gemeinsame Prozessressourcen.

Jeder Thread im selben Prozess kann die dem Prozess gehörenden Ressourcen gemeinsam nutzen. Dies zeigt sich zunächst darin, dass alle Threads denselben Adressraum (den Adressraum des Prozesses) haben, was bedeutet, dass der Thread auf den Adressraum zugreifen kann. Jede virtuelle Adresse des Prozesses; darüber hinaus können Sie auch auf offene Dateien, Timer, Semaphormechanismen usw. zugreifen, die dem Prozess gehören. Da Threads im selben Prozess Speicher und Dateien gemeinsam nutzen, kommunizieren Threads miteinander, ohne den Kernel aufzurufen.

Weitere Informationen zu diesem Thema finden Sie in der Spalte „FAQ“!

Das obige ist der detaillierte Inhalt vonWas ist die kleinste Befehlsflusseinheit, wenn ein Programm ausgeführt wird?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Vorheriger Artikel:Was ist ein Computeradapter?Nächster Artikel:Was ist ein Computeradapter?