Inhaltsverzeichnis
Welche Threads stützen sich auf den Prozess?
Threads hingegen stützen sich auf die Betriebsmittel des Prozesses ab, dem sie zugeordnet sind. Sie haben zwar einen eigenen Befehlszähler, einen unabhängigen Registersatz und einen eigenen Stapelspeicher (Stack), aber das alles in der Regel im Prozess-Adressraum.
Wie kann ein Prozess einen anderen Thread erzeugen?
Ein Prozess kann einen anderen Thread erzeugen, und jetzt werden zwei Teile desselben Prozesses ausgeführt und fragen nach CPU-Turns. Alle Prozesse sind Programme, und mit diesem Mechanismus können zwei Dinge in demselben Programm gleichzeitig ausgeführt werden.
Was ist eine Threadsynchronisation?
Man spricht hier auch von Synchronisation. Zum Zweck der Threadsynchronisation existieren mehrere Konzepte, wie z. B. Locks (engl. für Sperre: Ein Thread sperrt einen Speicherbereich zur exklusiven Bearbeitung, andere Threads haben währenddessen keinen Zugriff auf diesen Speicherbereich, bis dieser wieder freigegeben wird), Mutexe und Semaphore .
Wie ist die Kommunikation zwischen diesen Threads möglich?
Da Threads, die demselben Prozess zugeordnet sind, den gleichen Adressraum verwenden, ist eine Kommunikation zwischen diesen Threads von vornherein sehr einfach möglich (vgl. mit Interprozesskommunikation bei Prozessen). Jeder „Programmfaden“ ist für die Ausführung einer bestimmten Aufgabe verantwortlich.
Wie ist das mit Multithreading möglich?
Sinnvoll ist das beispielsweise bei der Videobearbeitung: Hier kann zum Beispiel eine Szene im Hintergrund gerendert werden, während der Nutzer die nächste Szene editiert. Mit Multithreading haben Chip-Hersteller die Möglichkeit, ihre CPUs zu beschleunigen, ohne dabei sehr viel höheren Energieverbrauch zu generieren.
Was ist der Bedeutungsunterschied zwischen Prozess und Thread?
Bedeutungsunterschied (Kernel-) Thread gegenüber Prozess, Task und User Thread. Ein Prozess bezeichnet den Ablauf eines Computerprogrammes auf einem oder mehreren Prozessor(en).