Ich verwende Jobs, Aufgaben, Kerne, Threads usw., aber ich verstehe die Beziehung zwischen ihnen nicht wirklich.
Egal wie sehr ich kein Spezialist für Computer bin, ich habe zusammengefasst, was als Informatiker passiert ist.
Dies ist am einfachsten zu verstehen. Ein oder mehrere Threads werden in einem Prozess erstellt.
Der Prozess ist das übergeordnete Element und der Thread ist das untergeordnete Element.
Wie es verwendet wird, hängt von der Umgebung ab und es scheint, dass es oft ** mehrdeutig ** ist. War gut. Ich habe es richtig benutzt, aber es war kein Fehler.
Wenn es sich vorerst um ein Linux-System handelt,
Es scheint.
Die Zusammensetzung, die ** CPU (= Prozessor) ** enthält ** Teile (Kern) **, die tatsächlich die Verarbeitung durchführen.
In der Realität wird der Kern als CPU erkannt und Prozesse und Threads werden zugewiesen.
Um ehrlich zu sein, habe ich diesen Bereich nicht gut verstanden, also habe ich ihn nachgeschlagen. Die Antwort ist nein.
Da der Kern nur ein Ort zum Verarbeiten von Prozessen und Threads ist **, ist der dem Kern zugewiesene Thread eine Story, nachdem der Prozess oder Thread erstellt wurde.
Zunächst scheint es also richtig zu sein, dass die Obergrenze für Threads, die parallel ausgeführt werden können, 12 beträgt und 6 Kerne vorhanden sind, um sie zuzuweisen.
Mit anderen Worten. Wenn das Thread-Limit 12 ist, ist das Prozesslimit zwangsläufig 12.
Wenn Sie beispielsweise alle 12 Threads in 3 Prozessen verwenden, können Sie sich eine Zuweisungsmethode wie diese vorstellen.
Vorgangsname | Anzahl der Threads Beispiel 1 | Anzahl der Threads Beispiel 2 |
---|---|---|
A | 4 | 6 |
B | 4 | 4 |
C | 4 | 2 |
Reference
Recommended Posts