[gesichtete Version] | [gesichtete Version] |
Keine Bearbeitungszusammenfassung |
|||
(5 dazwischenliegende Versionen von 4 Benutzern werden nicht angezeigt) | |||
Zeile 1: | Zeile 1: | ||
=Round Robin= | <loop_index id="5fa9787810cf1">Round Robin</loop_index><loop_index id="5fa978785acc9">RR</loop_index><loop_index id="5fa978785acd6">Scheduling, RR</loop_index> | ||
< | Round Robin (RR) ist ein Scheduling-Verfahren, welches die zur Verfügung stehende CPU-Zeit in kleine [[Scheduling#Definition:_Zeitscheibe_.28Quantum.29|Zeitscheiben]] einteilt. Alle Prozesse werden in eine initiale Reihenfolge gebracht und der erste Prozess bekommt die CPU. Er darf diese genau bis zum Ablauf seines [[Scheduling#Definition:_Zeitscheibe_.28Quantum.29|Zeit-Quantums]] nutzen, anschließend wird er unterbrochen und der nächste Prozess in der Reihenfolge ist am Zug. Auch hier findet wieder eine Unterbrechung am Ende des [[Scheduling#Definition:_Zeitscheibe_.28Quantum.29|Quantums]] statt, usw. Nach dem letzten Prozess ist wieder der Erste an der Reihe. | ||
<loop_index> | |||
Round Robin (RR) ist ein Scheduling-Verfahren, welches die zur Verfügung stehende CPU-Zeit in kleine [[Scheduling#Definition:_Zeitscheibe_.28Quantum.29|Zeitscheiben]] einteilt. Alle Prozesse werden in eine initiale Reihenfolge gebracht und der erste Prozess bekommt die CPU. Er darf diese genau bis zum Ablauf seines [[Scheduling#Definition:_Zeitscheibe_.28Quantum.29|Zeit-Quantums]] nutzen, anschließend wird er unterbrochen und der nächste Prozess in der | |||
</p> | </p> | ||
Zeile 18: | Zeile 16: | ||
<p> | <p> | ||
<loop_area type="task"> | <loop_area type="task"> | ||
<loop_task title="RR animiert"> | <loop_task title="RR animiert" id="5fa9787810cff"> | ||
<p> | <p> | ||
RR wird in dieser [ | RR wird in dieser [https://ess.cs.uni-osnabrueck.de/software/AnimOS/CPU-Scheduling/ Animation] behandelt. Probiere es aus! | ||
</p> | </p> | ||
<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> | </p> | ||
</loop_task> | </loop_task> | ||
Zeile 42: | Zeile 39: | ||
<p> | <p> | ||
<loop_area type="task"> | <loop_area type="task"> | ||
<loop_task title="Zu kurz oder zu lang"> | <loop_task title="Zu kurz oder zu lang" id="5fa9787810d09"> | ||
<p> | <p> | ||
Es ist denkbar, dass das Betriebssystem deines PCs oder Laptops nach dem RR-Verfahren arbeitet. Was ist zu befürchten, | Es ist denkbar, dass das Betriebssystem deines PCs oder Laptops nach dem RR-Verfahren arbeitet. Was ist zu befürchten, | ||
Zeile 55: | Zeile 52: | ||
== Zeitscheiben in der Praxis == | == Zeitscheiben in der Praxis == | ||
<p> | <p> | ||
<cite>Tanenbaum+2009</cite> und <cite>Strelen+2012</cite> geben an, dass Zeitscheiben in einer Größenordnung von 10 bis 50 ms verbreitet seien. <cite>Eisenhardt+et.al.+2007</cite> sehen typische Längen zwischen 10 und 100 ms, und bei <cite>Mandl+2013</cite> ist ein Intervall von 10 bis 200 ms zu finden. <small>(Zumindest in der unteren Grenze sind sich alle einig.)</small> | <cite id="5fa9787810d13">Tanenbaum+2009</cite> und <cite id="5fa9787810d1c">Strelen+2012</cite> geben an, dass Zeitscheiben in einer Größenordnung von 10 bis 50 ms verbreitet seien. <cite id="5fa9787810d25">Eisenhardt+et.al.+2007</cite> sehen typische Längen zwischen 10 und 100 ms, und bei <cite id="5fa9787810d2e">Mandl+2013</cite> ist ein Intervall von 10 bis 200 ms zu finden. <small>(Zumindest in der unteren Grenze sind sich alle einig.)</small> | ||
</p> | </p> | ||
Zeile 68: | Zeile 65: | ||
<br /> | <br /> | ||
<p> | <p> | ||
<loop_figure title="Windows 7 Prozessorzeitplanung" description="Zu finden unter: Systemsteuerung / System / Erweiterte Systemeinstellungen / Erweitert / Leistung / Einstellungen" copyright="CC-BY" index=true show_copyright=true> | <loop_figure title="Windows 7 Prozessorzeitplanung" description="Zu finden unter: Systemsteuerung / System / Erweiterte Systemeinstellungen / Erweitert / Leistung / Einstellungen" copyright="CC-BY" index=true show_copyright=true id="5fa9787810d38"> | ||
[[Datei:Win7-quantum-anpassen.JPG]] | [[Datei:Win7-quantum-anpassen.JPG]] | ||
</loop_figure> | </loop_figure> | ||
Zeile 81: | Zeile 78: | ||
<br /> | <br /> | ||
<p> | <p> | ||
<loop_figure title="Windows Server 2008 R2 Prozessorzeitplanung" description="Zu finden unter: Systemsteuerung / System / Erweiterte Systemeinstellungen / Erweitert / Leistung / Einstellungen" copyright="CC-BY" index=true show_copyright=true> | <loop_figure title="Windows Server 2008 R2 Prozessorzeitplanung" description="Zu finden unter: Systemsteuerung / System / Erweiterte Systemeinstellungen / Erweitert / Leistung / Einstellungen" copyright="CC-BY" index=true show_copyright=true id="5fa9787810d42"> | ||
[[Datei:Win2008r2-quantum-anpassen.JPG]] | [[Datei:Win2008r2-quantum-anpassen.JPG]] | ||
</loop_figure> | </loop_figure> | ||
Zeile 100: | Zeile 97: | ||
<p> | <p> | ||
RR wird u.a. behandelt bei: | RR wird u.a. behandelt bei: | ||
* <cite>Eisenhardt+et.al.+2007</cite>, Kapitel 9.2.4 | * <cite id="5fa9787810d4b">Eisenhardt+et.al.+2007</cite>, Kapitel 9.2.4 | ||
* <cite>Glatz+2010</cite>, Kapitel 3.4.3 | * <cite id="5fa9787810d55">Glatz+2010</cite>, Kapitel 3.4.3 | ||
* <cite>Mandl+2013</cite>, Kapitel 5.2 | * <cite id="5fa9787810d5e">Mandl+2013</cite>, Kapitel 5.2 | ||
* <cite>Strelen+2012</cite>, Kapitel 4.1 | * <cite id="5fa9787810d66">Strelen+2012</cite>, Kapitel 4.1 | ||
* <cite>Tanenbaum+2009</cite>, Kapitel 2.4.3 | * <cite id="5fa9787810d6d">Tanenbaum+2009</cite>, Kapitel 2.4.3 | ||
</p> | </p> | ||
<p> | <p> | ||
Zeile 115: | Zeile 112: | ||
<p> | <p> | ||
<loop_area type="task"> | <loop_area type="task"> | ||
<loop_task title="RR und E/A-lastige Prozesse"> | <loop_task title="RR und E/A-lastige Prozesse" id="5fa9787810d75"> | ||
<p> | <p> | ||
Dem RR-Verfahren wird nachgesagt, dass es E/A-lastige Prozesse benachteiligt.</p> | Dem RR-Verfahren wird nachgesagt, dass es E/A-lastige Prozesse benachteiligt.</p> |
Round Robin (RR) ist ein Scheduling-Verfahren, welches die zur Verfügung stehende CPU-Zeit in kleine Zeitscheiben einteilt. Alle Prozesse werden in eine initiale Reihenfolge gebracht und der erste Prozess bekommt die CPU. Er darf diese genau bis zum Ablauf seines Zeit-Quantums nutzen, anschließend wird er unterbrochen und der nächste Prozess in der Reihenfolge ist am Zug. Auch hier findet wieder eine Unterbrechung am Ende des Quantums statt, usw. Nach dem letzten Prozess ist wieder der Erste an der Reihe.
In gewisser Weise ergänzt RR das FCFS-Verfahren um eine Zeitscheibe. Alle Prozesse werden gleich behandelt.
RR 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.
Es drängt sich die Frage nach der optimalen Länge einer Zeitscheibe auf. Sie soll nicht zu lang und nicht zu kurz sein. (Was eine herrlich diplomatische Antwort darstellt.)
Es ist denkbar, dass das Betriebssystem deines PCs oder Laptops nach dem RR-Verfahren arbeitet. Was ist zu befürchten,
Tanenbaum 2009 und Strelen 2012 geben an, dass Zeitscheiben in einer Größenordnung von 10 bis 50 ms verbreitet seien. Eisenhardt et.al. 2007 sehen typische Längen zwischen 10 und 100 ms, und bei Mandl 2013 ist ein Intervall von 10 bis 200 ms zu finden. (Zumindest in der unteren Grenze sind sich alle einig.)
In einem Knowledge Base Artikel von Microsoft (KB 259025) finden sich einige Hinweise zur Länge der verwendeten Zeitscheiben bei Windows 2000 und Windows XP. Je nach Prozessor und Konfiguration von Windows gehen die Werte aber stark auseinander.
Die folgende Abbildung stammt aus einem Windows 7 Professional und zeigt den Ausschnitt eines Konfigurationsfensters. Durch ändern der Option Optimale Leistung anpassen für wird die Länge des Quantums für (Vordergrund-) Programme und Hintergrunddienste verändert, ohne dass man jedoch die tatsächliche Länge in Millisekunden beeinflussen könnte. (Das ist wohl auch besser so.)
Ist das Betriebssystem auf einem Computer installiert, der vorrangig im Dialogbetrieb mit einem User agiert, so ist die Option Optimale Leistung anpassen für Programme richtig gewählt. Fungiert der Computer hingegen als Server und bedient die Anfragen verschiedener Clients, so ist Optimale Leistung anpassen für Hintergrunddienste als Einstellung empfehlenswert. Es verwundert daher nicht, dass auf einem Windows Server 2008 R2 das gleiche Konfigurationsfenster zu finden ist, wobei jedoch die alternative Option ausgewählt ist.
Auch wenn viele aktuelle Betriebsysteme Zeitscheiben verwenden, so bedeutet dies nicht, dass auch das ursprüngliche Round Robin-Verfahren, wie es hier beschrieben ist, eingesetzt wird. In gewisser Weise kann man aber sicherlich von einem stark weiterentwickelten und optimierten RR-Verfahren sprechen.
RR wird u.a. behandelt bei:
und kann dort - je nach Verfügbarkeit der Quellen - nachgelesen werden.
Dem RR-Verfahren wird nachgesagt, dass es E/A-lastige Prozesse benachteiligt.
Überlege, recherchiere und diskutiere in deiner Lerngruppe:
Diese Seite steht unter der Creative Commons Namensnennung 3.0 Unported Lizenz http://i.creativecommons.org/l/by/3.0/80x15.png