3.2.10.2.2 Shortest Job First

[gesichtete Version][gesichtete Version]
(Die Seite wurde neu angelegt: „{{#index:Shortest Job First|SJF|Scheduling, SJF}} <p> Dieses Thema wird in der weiterführenden Literatur behandelt: </p> <p> <loop_area type="notice">'''Weite…“)
 
Keine Bearbeitungszusammenfassung
 
(23 dazwischenliegende Versionen von 3 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
{{#index:Shortest Job First|SJF|Scheduling, SJF}}
<loop_index id="5fa9787c5480d">Shortest Job First</loop_index><loop_index id="5fa978c177b2f">SJF</loop_index><loop_index id="5fa978c177b34">Scheduling, SJF</loop_index>
Shortest Job First (kurz: SJF) kann kaum treffender als durch seinen Namen beschrieben werden: Von allen erzeugten Prozessen auf dem System bekommt derjenige als erstes die CPU, der die kürzeste Laufzeit besitzt.
</p>
 
<p>
<loop_index id="5fa9787c54814">Shortest Process Next</loop_index><loop_index id="5fa9787c982d3">SPN</loop_index><loop_index id="5fa9787c982de">Scheduling, SPN</loop_index>
In einigen Quellen wird dieses Verfahren auch Shortest Process Next (kurz: SPN) genannt. Beide Begriffe werden synonym verwendet.
</p>
 
<br />
== Aufgabe 1 ==
<p>
<loop_area type="task">
<loop_task title="SPN animiert" id="5fa9787c54818">
<p>
SPN wird in dieser [https://ess.cs.uni-osnabrueck.de/software/AnimOS/CPU-Scheduling/ Animation] behandelt. Probiere es aus!
</p>
<p>
Achte darauf, dass unter 'Scheduling strategy' der richtige Scheduling-Algorithmus ausgewählt ist. Und finde heraus, welche Bedeutung 'CPU burst' und 'IO burst' in dieser Animation haben.
</p>
</loop_task>
</loop_area>
</p>
 
<br />
 
== Weiterführende Literatur ==
<p>
SJF bzw. SPN wird u.a. behandelt bei:
* <cite id="5fa9787c5481d">Eisenhardt+et.al.+2007</cite>, Kapitel 9.2.3
* <cite id="5fa9787c54821">Glatz+2010</cite>, Kapitel 3.4.3
* <cite id="5fa9787c54826">Mandl+2013</cite>, Kapitel 5.2
* <cite id="5fa9787c5482a">Strelen+2012</cite>, Kapitel 4.1
* <cite id="5fa9787c5482e">Tanenbaum+2009</cite>, Kapitel 2.4.2
</p>
<p>
<p>
Dieses Thema wird in der weiterführenden Literatur behandelt:
und kann dort - je nach Verfügbarkeit der Quellen - nachgelesen werden.
</p>
 
<br />
 
== Aufgabe 2 ==
<p>
<loop_area type="task">
<loop_task title="Kurz oder lang" id="5fa9787c54833">
<p>
Auf einem System existieren bereits mehrere Prozesse. Einige sind ''kurz'', andere ''lang''. Welche Auswirkung hat es auf die ''langen Prozesse'', wenn auf diesem System ständig neue ''kurze Prozesse'' hinzukommen?
</p>
</loop_task>
</loop_area>
</p>
 
<br />
 
== Aufgabe 3 ==
<p>
<loop_area type="task">
<loop_task title="Blockieren und Interrupts" id="5fa9787c54838">
<p>
Wie sollte sich der Scheduler bei Anwendung der SJF-Strategie verhalten, wenn der auf der CPU aktive Prozess blockiert?
</p>
<p>
Und was passiert mit dem auf der CPU aktiven Prozess bei einem Interrupt?
</p>
</loop_task>
</loop_area>
</p>
 
<br />
== Aufgabe 4 ==
<p>
<loop_area type="task">
<loop_task title="Erzeugt oder was?" id="5fa9787c5483d">
<p>
Oben ist zu lesen: "''Von allen erzeugten Prozessen...''".<br />
Aber das Wort ''erzeugt'' ist dabei eigentlich nur unter einer Bedingung oder Einschränkung richtig. Was ist gemeint?
</p>
<p>
<spoiler text="Tipp">
Denk mal an die [[Prozesszustände]] und an die möglichen Zustandsübergänge.</spoiler>
</p>
</loop_task>
</loop_area>
</p>
</p>
<br />
== Aufgabe 5 ==
<p>
<p>
<loop_area type="notice">'''Weiterführende Literatur'''<br>
<loop_area type="task">
<cite>Mandl+2013</cite> erläutert dieses Thema in Kapitel 5.2 (Scheduling-Verfahren). Die Lektüre dieser Quelle sei ausdrücklich empfohlen.<br />
<loop_task title="SJF auf deinem Rechner" id="5fa9787c54840">
<small>
<p>
<p>
Studierende sind oftmals berechtigt, eine PDF-Version dieses Buches ohne entstehende Kosten [[Hinweise für Studierende#Downloadbare Bücher von Springerlink|über ihre Hochschulen von Springerlink zu beziehen.]]
Was denkst du, wie sich SJF auf deinem PC oder Laptop mit grafischer Oberfläche auswirkt? Nenne mindestens zwei Auswirkungen! Sind diese Auswirkungen positiv oder negativ?
</p>
</p>
</small>
</loop_task>
</loop_area>
</loop_area>
</p>
</p>

Aktuelle Version vom 15. Januar 2024, 09:01 Uhr

Shortest Job First (kurz: SJF) kann kaum treffender als durch seinen Namen beschrieben werden: Von allen erzeugten Prozessen auf dem System bekommt derjenige als erstes die CPU, der die kürzeste Laufzeit besitzt.

In einigen Quellen wird dieses Verfahren auch Shortest Process Next (kurz: SPN) genannt. Beide Begriffe werden synonym verwendet.


Aufgabe 1

Aufgabe

SPN wird in dieser Animation behandelt. Probiere es aus!

Achte darauf, dass unter 'Scheduling strategy' der richtige Scheduling-Algorithmus ausgewählt ist. Und finde heraus, welche Bedeutung 'CPU burst' und 'IO burst' in dieser Animation haben.


Weiterführende Literatur

SJF bzw. SPN wird u.a. behandelt bei:

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


Aufgabe 2

Aufgabe

Auf einem System existieren bereits mehrere Prozesse. Einige sind kurz, andere lang. Welche Auswirkung hat es auf die langen Prozesse, wenn auf diesem System ständig neue kurze Prozesse hinzukommen?


Aufgabe 3

Aufgabe

Wie sollte sich der Scheduler bei Anwendung der SJF-Strategie verhalten, wenn der auf der CPU aktive Prozess blockiert?

Und was passiert mit dem auf der CPU aktiven Prozess bei einem Interrupt?


Aufgabe 4

Aufgabe

Oben ist zu lesen: "Von allen erzeugten Prozessen...".
Aber das Wort erzeugt ist dabei eigentlich nur unter einer Bedingung oder Einschränkung richtig. Was ist gemeint?


Aufgabe 5

Aufgabe

Was denkst du, wie sich SJF auf deinem PC oder Laptop mit grafischer Oberfläche auswirkt? Nenne mindestens zwei Auswirkungen! Sind diese Auswirkungen positiv oder negativ?



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