Einzelnen Beitrag anzeigen
Alt 09.08.2003, 15:26   #12
kikakater
Inventar
 
Registriert seit: 24.01.2001
Beiträge: 5.631


Standard

Bei Hyperthreading sind die CPU Register doppelt ausgeführt, sodaß ein Speichern und Neuladen nicht notwendig ist für einen zweiten Prozess.

Situation: Divx Player gestartet, 2. Divx Player gestartet

CPU ohne HT:

Nach Beendigung der Zeitscheibe des ersten Prozesses werden die CPU Register zwischengespeichert (vom Systemkernel) und auf den zweiten Prozess umgeschaltet. Bevor die Applikation (2.Divx Player) ausgeführt wird, werden noch die Register der CPU mit ihren aktuellen Werten geladen.

CPU mit HT:

Die CPU Register werden bei zwei Prozessen nicht ungültig, das Aufteilen der Thread 1 und Thread 2 Rolle übernimmt das Betriebssystem vollautomatisch.

Ein Thread ist also ein Swap Thread und der andere ein permanenter bei Volllast. Im Idle Zustand (keine Verarbeitung) wird dieser permanente Thread auch zu einem Swap Thread, damit andere Prozesse abwechselnd mit diesem untätigen - sich im Idle Zustand befindlichen - Prozess abgearbeitet werden.
kikakater ist offline   Mit Zitat antworten