Zeitscheibenscheduling
Lernziel
- preemtive Umschaltung von Prozessen
- Schutz kritischer Abschnitte von oo-StuBS mit Hilfe von Schleusen
Aufgabe
Ziel dieser Aufgabe ist die Umstellung der Synchronisation von
Aktivitäten innerhalb von oo-StuBS auf die Verwendung von
Zeitscheiben. Gleichzeitig soll nun eine grobgranulare
Locking-Strategie verwendet und eine
Systemaufrufschnittstelle definiert werden.
Der Scheduler soll ausgelöst durch einen Timer-Interrupt
in der Lage sein, einzelne Threads zu verdrängen. Hierzu müssen
die Klassen Guarded_Scheduler
, Thread
,
PIT
und Watch
implementiert werden.
Hinweis: Um aus Benutzerprogrammen heraus die
geschützten Methoden des Schedulers aufrufen zu können, darf die
globale Variable scheduler
nicht länger ein Objekt der
Klasse Scheduler
sein. Sie muss nun einer Instanz der Klasse
Guarded_scheduler
entsprechen.
Vorgaben
Die fünfte Vorgabe enthät wie üblich die Klassenvorgaben für die Aufgabe.