Hängt vom Prozessor ab und davon, was für die Darstellung des Taskstatus erforderlich ist. Kommt auch zu einem gewissen Grad auf das Betriebssystem an.
Im alten Original (Pre-Virtual-Memory) Unix würden die Register an einem festen Ort im Speicher abgelegt, dann der gesamte Anwenderspeicher auf die Festplatte geschrieben und ein neues Anwenderspeicher-Image eingelesen Überspringen des Einleseschritts.) Dies wurde sehr schnell durch ein virtuelles Auslagerungsschema ersetzt, als CPUs mit TLBs verfügbar wurden ("Berkley Unix").
In einer Stapelarchitektur im Burroughs-Stil müssen (theoretisch) nur der Stapelzeiger und die Task-ID ausgetauscht werden. Die Speicheradressierung (im Original) erfolgt über "Funktionen" und "Segmente", im Gegensatz zur Verwendung eines TLB.
Ältere Registerarchitekturen mit TLB-basiertem virtuellem Speicher erforderten, dass die TLBs (und manchmal der Cache) beim Auslagern mindestens ungültig gemacht wurden, zusätzlich zum Auslagern der Programmregister (einschließlich IAR, Bedingungscode usw.). Neuere TLB-basierte Architekturen können dieses Problem auf verschiedene Weise lösen, indem sie das Leeren vermeiden, sodass bei einem relativ schnellen Zurückschalten nicht alles neu geladen werden muss. (Aus diesem Grund erhalten Aufgaben auf Multiprozessorsystemen häufig eine "Affinität" eines bestimmten Prozessors, um das Nachladen von TLB / Cache zu minimieren.)