3.2.10.2.5 Priority Scheduling

[gesichtete Version][gesichtete Version]
Keine Bearbeitungszusammenfassung
(LOOP2 Upgrade)
Zeile 1: Zeile 1:
=Priority Scheduling=
=Priority Scheduling=
<p>
<p>
<loop_index>Priority Scheduling|PS|Scheduling, PS</loop_index>
<loop_index id="5fa9786e32d6b">Priority Scheduling|PS|Scheduling, PS</loop_index>
Beim Priority Scheduling (kurz: PS) wird jedem Prozess eine Priorität zugewiesen. Der Prozess mit der höchsten Priorität bekommt als erstes die CPU.
Beim Priority Scheduling (kurz: PS) wird jedem Prozess eine Priorität zugewiesen. Der Prozess mit der höchsten Priorität bekommt als erstes die CPU.
</p>
</p>
Zeile 9: Zeile 9:
<p>
<p>
<loop_area type="task">
<loop_area type="task">
<loop_task title="Verschiedene Prozesse mit gleicher Priorität">
<loop_task title="Verschiedene Prozesse mit gleicher Priorität" id="5fa9786e32d73">
<p>
<p>
Wie soll der Scheduler vorgehen, wenn es mehrere Prozesse mit gleicher Priorität gibt? Z.B. mehrere Prozesse mit höchster Priorität?
Wie soll der Scheduler vorgehen, wenn es mehrere Prozesse mit gleicher Priorität gibt? Z.B. mehrere Prozesse mit höchster Priorität?
Zeile 22: Zeile 22:
<p>
<p>
PS wird u.a. behandelt bei:
PS wird u.a. behandelt bei:
* <cite>Eisenhardt+et.al.+2007</cite>, Kapitel 9.2.3
* <cite id="5fa9786e32d78">Eisenhardt+et.al.+2007</cite>, Kapitel 9.2.3
* <cite>Glatz+2010</cite>, Kapitel 3.4.3 (siehe dort unter ''ML-Strategie'')
* <cite id="5fa9786e32d7e">Glatz+2010</cite>, Kapitel 3.4.3 (siehe dort unter ''ML-Strategie'')
* <cite>Mandl+2013</cite>, Kapitel 5.2
* <cite id="5fa9786e32d83">Mandl+2013</cite>, Kapitel 5.2
* <cite>Strelen+2012</cite>, Kapitel 4.1
* <cite id="5fa9786e32d88">Strelen+2012</cite>, Kapitel 4.1
* <cite>Tanenbaum+2009</cite>, Kapitel 2.4.3
* <cite id="5fa9786e32d8d">Tanenbaum+2009</cite>, Kapitel 2.4.3
</p>
</p>
<p>
<p>
Zeile 37: Zeile 37:
<p>
<p>
<loop_area type="task">
<loop_area type="task">
<loop_task title="Was passiert bei niedriger Priorität?">
<loop_task title="Was passiert bei niedriger Priorität?" id="5fa9786e32d91">
<p>
<p>
Auf einem System warten mehrere Prozesse mit hoher Priorität, mehrere mit mittlerer Priorität und auch mehrere mit niedriger Priorität auf die Zuteilung der CPU.
Auf einem System warten mehrere Prozesse mit hoher Priorität, mehrere mit mittlerer Priorität und auch mehrere mit niedriger Priorität auf die Zuteilung der CPU.
Zeile 52: Zeile 52:
<p>
<p>
<loop_area type="task">
<loop_area type="task">
<loop_task title="Erweitere PS">
<loop_task title="Erweitere PS" id="5fa9786e32d97">
<p>
<p>
Erweitere das PS-Verfahren um folgende Tätigkeit:
Erweitere das PS-Verfahren um folgende Tätigkeit:
Zeile 77: Zeile 77:
<p>
<p>
<loop_area type="task">
<loop_area type="task">
<loop_task title="Herauf statt herunter!">
<loop_task title="Herauf statt herunter!" id="5fa9786e32d9b">
<p>
<p>
Statt die Prioritäten von Prozessen dynamisch herabzusetzen, könnte man sie auch heraufsetzen. Überlege, recherchiere und diskutiere in deiner Lerngruppe:
Statt die Prioritäten von Prozessen dynamisch herabzusetzen, könnte man sie auch heraufsetzen. Überlege, recherchiere und diskutiere in deiner Lerngruppe:

Version vom 9. November 2020, 19:12 Uhr

Priority Scheduling

Beim Priority Scheduling (kurz: PS) wird jedem Prozess eine Priorität zugewiesen. Der Prozess mit der höchsten Priorität bekommt als erstes die CPU.


Aufgabe 1

Aufgabe

Wie soll der Scheduler vorgehen, wenn es mehrere Prozesse mit gleicher Priorität gibt? Z.B. mehrere Prozesse mit höchster Priorität?


Weiterführende Literatur

PS wird u.a. behandelt bei:

und kann dort - je nach Verfügbarkeit der Quellen - nachgelesen werden.


Aufgabe 2

Aufgabe

Auf einem System warten mehrere Prozesse mit hoher Priorität, mehrere mit mittlerer Priorität und auch mehrere mit niedriger Priorität auf die Zuteilung der CPU.

Solange sich mindestens ein Prozess mit hoher Priorität im Zustand Bereit befindet: welche Auswirkungen hat dies auf die CPU-Zuteilung für Prozesse mit mittlerer und niedriger Priorität?


Aufgabe 3

Aufgabe

Erweitere das PS-Verfahren um folgende Tätigkeit:

Bei jedem Kontextwechsel wird die Priorität des von der CPU scheidenden Prozesses um eine Stufe herabgesetzt (sofern er sich nicht bereits in der niedrigsten Stufe befindet).

Welche Auswirkungen auf alle Prozesse mit unterschiedlichen Prioritäten ergeben sich jetzt?

  • Erläutere die Auswirkungen anhand eines selbstgewählten Beispiels!
  • Orientiere dein Beispiel an den Beispielen der bekannten Animation. Denke dabei an die Angabe der Prioritäten.


Hast du dein Beispiel erstellt? Prima. Dann führen wird das Gedankenspiel noch einmal in eine entgegengesetzte Richtung:


Aufgabe 4

Aufgabe

Statt die Prioritäten von Prozessen dynamisch herabzusetzen, könnte man sie auch heraufsetzen. Überlege, recherchiere und diskutiere in deiner Lerngruppe:

  • Wessen Priorität wird heraufgesetzt?
  • Wann genau passiert das?
  • Wie groß ist der Aufwand im Vergleich zur oben beschriebenen Strategie mit dem Herabsetzen von Prioritäten?



Diese Seite steht unter der Creative Commons Namensnennung 3.0 Unported Lizenz http://i.creativecommons.org/l/by/3.0/80x15.png