Informatik Betriebssysteme – Prozesse und Threads
Karteikarten zum Thema „Informatik“ · 14 Karten · von atrio. Beispiele: Was ist ein Prozess in Betriebssystemen? · Was ist ein Thread und wie unterscheidet e…
Karten
14 KartenWas ist ein Prozess in Betriebssystemen?
Rückseite
Ein Prozess ist ein laufendes Programm mit eigenem Adressraum, PCB und Ressourcen – die Ausführungseinheit des Betriebssystems.
Was ist ein Thread und wie unterscheidet er sich vom Prozess?
Rückseite
Ein Thread ist ein Ausführungsstrang innerhalb eines Prozesses, teilt Code, Daten und Dateien, hat aber eigenen Stack und Registersatz.
Welche Zustände kann ein Prozess annehmen?
Rückseite
Prozesse durchlaufen die Zustände Neu, Bereit (Ready), Laufend (Running), Blockiert (Waiting) und Beendet (Terminated).
Was bewirkt ein Kontextwechsel (Context Switch)?
Rückseite
Ein Kontextwechsel speichert den aktuellen Prozesszustand (Register, PC, Stack) und lädt den nächsten Prozess – er verursacht Overhead.
Welche Daten teilen Threads desselben Prozesses?
Rückseite
Threads desselben Prozesses teilen Code-Segment, Heap, globale Variablen und offene Dateien, nicht aber Stack und Register.
Was ist der Unterschied zwischen Benutzer- und Kernel-Threads?
Rückseite
Benutzer-Threads werden im User-Space verwaltet (schnell, aber blockieren sich gegenseitig), Kernel-Threads vom OS (echte Parallelität, mehr Overhead).
Was versteht man unter Process Control Block (PCB)?
Rückseite
Der Process Control Block speichert Prozess-ID, Zustand, Program Counter, Register, Speichergrenzen, offene Dateien und Scheduling-Informationen.
Welche Scheduling-Algorithmen kennst du für Prozesse?
Rückseite
Wichtige Algorithmen: First-Come-First-Served, Shortest-Job-First, Round-Robin, Priority Scheduling, Multilevel Feedback Queue – jedes mit unterschiedlichen Wartezeiten.
Was ist der Unterschied zwischen präemptivem und nicht-präemptivem Scheduling?
Rückseite
Präemptives Scheduling unterbricht laufende Prozesse zwangsweise, nicht-präemptives wartet auf freiwillige Abgabe der CPU – präemptiv ermöglicht Echtzeitverhalten.
Was ist eine Race Condition und wie entsteht sie?
Rückseite
Eine Race Condition entsteht, wenn mehrere Threads gleichzeitig auf gemeinsame Daten zugreifen und das Ergebnis von der Ausführungsreihenfolge abhängt.
Welche Synchronisationsmechanismen gibt es für Threads?
Rückseite
Zur Synchronisation dienen Mutexes, Semaphoren, Monitore, Condition Variables und Barrieren – sie schützen kritische Sections und koordinieren Threads.
Was ist ein Deadlock und welche vier Bedingungen müssen erfüllt sein?
Rückseite
Ein Deadlock tritt auf, wenn Prozesse zyklisch auf Ressourcen warten: Gegenseitiger Ausschluss, Halten und Warten, Keine Präemption, Zyklisches Warten.
Was bewirkt ein Semaphore und wie unterscheidet er sich von einem Mutex?
Rückseite
Ein Semaphore ist ein Zähler für Ressourcen (wait/signal), ein Mutex ein binärer Lock mit Owner-Konzept – Mutex nur für gegenseitigen Ausschluss.
Was ist Priority Inversion und wie wird sie gelöst?
Rückseite
Priority Inversion blockiert hochpriorisierte Threads durch niedrigpriorisierte – gelöst durch Priority Inheritance (Erhöhung der Priorität des blockierenden Threads).