Prozess-Zustandsmodell
Prozess-Zustandsmodell
Auf einen Blick
Interaktives Modell
Klicke auf Zustände und Pfeile, um zu sehen, was sie bedeuten:
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
| Übergang | Auslöser |
|---|---|
| new → ready | admit / first schedule |
| ready → running | dispatch durch den Scheduler |
| running → ready | Timer-Interrupt / Präemption |
| running → waiting | wait() auf Ereignis (gibt CPU freiwillig ab) |
| waiting → ready | Ereignis tritt ein (Interrupt) |
| running → terminated | exit() |
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
⬅️ Prozessverwaltung & PCB · Prozesskontext & Kontextwechsel ➡️