
Aufgabe 1: (10 Punkte)

a) Was ist der Unterschied zwischen Parallelität und Pseudo-Parallelität ?

b) Wie unterscheiden sich die Begriffe Programm, Prozess und Thread voneinander ?

c) Wann und unter welchen Voraussetzungen ist Synchronisation erforderlich ?

d) Welches Synchronisationskonzept liegt Java zugrunde ?

e) Wodurch unterscheiden sich die beiden Java Methoden wait() und sleep() ?

f) Wie unterscheiden sich Monitor und Semaphor voneinander ?

g) Was versteht man unter dem Begriff Deadlock ?

h) Wie lauten die notwendigen und hinreichenden Bedingungen für das Auftreten eines Deadlocks ?

i) Wie sieht das vollständige Zustandsdiagramm für einen Thread aus ?

j) Was sind verdrängende und nicht-verdrängende Zuteilungsstrategien und wie unterscheiden sie sich ?