2 Prozesse & ThreadsProzess-Zustandsmodell

Prozess-Zustandsmodell

Auf einen Blick

Der logische Zustand eines Prozesses folgt einem Modell mit den Kernzuständen new → ready → running, dazu waiting (blockiert) und terminated. Übergänge werden vom Prozess selbst oder vom OS (per Interrupt) ausgelöst.

Interaktives Modell

Klicke auf Zustände und Pfeile, um zu sehen, was sie bedeuten:

prozess-zustandsmodell.html

Die Zustände

  • new — Prozess wird erzeugt; Initialzustand.
  • ready — laufbereit, aber CPU ist belegt → wartet in der Ready-Queue.
  • running — Idealfall, belegt faktisch die CPU.
  • waiting / blocked — wartet auf ein Ereignis (z.B. I/O-Daten); wird aus der CPU verdrängt.
  • terminated — Endzustand, meist transient. Ausnahme: Unix-Zombies.

Zusätzlich: Befindet sich ein (Teil eines) Prozesses nicht im Hauptspeicher, ist er paged-out (ausgelagert) — relevant, wenn der RAM knapp wird → Virtual Memory.

Die Übergänge

ÜbergangAuslöser
new → readyadmit / first schedule
ready → runningdispatch durch den Scheduler
running → readyTimer-Interrupt / Präemption
running → waitingwait() auf Ereignis (gibt CPU freiwillig ab)
waiting → readyEreignis tritt ein (Interrupt)
running → terminatedexit()
Häufiger Klausurfehler

waiting → ready führt nicht direkt zu running! Ein geweckter Prozess ist erst wieder laufbereit und muss vom Scheduler ausgewählt werden.

Verwandte Notes

Prozess · Prozesskontext & Kontextwechsel · Scheduling-Grundlagen · Operationen auf Prozessen

← Kapitelübersicht


⬅️ Prozessverwaltung & PCB · Prozesskontext & Kontextwechsel ➡️

Built with LogoFlowershow