Prozesskontext & Kontextwechsel

Auf einen Blick

Der Prozesskontext ist die Umgebung, in der ein laufender Prozess abgearbeitet wird. Der Wechsel von einem laufenden Prozess zum nächsten ist ein Kontextwechsel: Register sichern (in den PCB) und neue laden.

Prozesskontext

Der Kontext wird unterteilt in (→ Kernel- und User-Modus):

  • User Context / User Mode — die normale Umgebung für Anwendungen.
  • Kernel Context / Kernel Mode — für privilegierte Aktionen; höhere Berechtigungen. Der Übergang geschieht über System Calls. Mitunter gibt es weitere Kontexte (z.B. im Interrupt-Handler).

Der Kontext differenziert damit den Zustand running aus dem Prozess-Zustandsmodell.

Der Kontextwechsel — Schritt für Schritt

kontextwechsel.html

Warum ist das teuer?

Ein Kontextwechsel ist reiner Overhead — währenddessen rechnet kein Nutzprogramm. Er wird typischerweise durch den Timer-Interrupt angestoßen (Interrupts & Exceptions) und ist der Preis für Multitasking. Beim Wechsel zwischen Threads desselben Prozesses ist er günstiger, weil der gemeinsame Adressraum erhalten bleibt (kein Adressraum-Wechsel).

Verwandte Notes

Prozess-Zustandsmodell · Prozessverwaltung & PCB · Kernel- und User-Modus · Interrupts & Exceptions · Scheduling-Grundlagen

← Kapitelübersicht ��


⬅️ Prozess-Zustandsmodell · Operationen auf Prozessen ➡️

Built with LogoFlowershow