Round Robin (Informatik)

Round Robin (Informatik)

Der Begriff Rundlauf-Verfahren oder englisch Round-Robin bezeichnet ein Scheduling-Verfahren, d. h. es ordnet mehreren konkurrierenden Prozessen begrenzte Ressourcen zu. Das Round-Robin-Verfahren gewährt allen Prozessen nacheinander für jeweils einen kurzen Zeitraum – einen sogenannten Zeitschlitz – Zugang zu den benötigten Ressourcen; man nennt dies auch Arbitrierung.

Round-Robin wird auch zur Lastverteilung (load balancing) verwendet. Ziel der Lastverteilung ist es, mehrere gleichartige Ressourcen möglichst gleichmäßig zu beanspruchen.

Inhaltsverzeichnis

Realisierung

Die Prozesse werden in einer Warteschlange verwaltet. Der vorderste Prozess erhält einen Zeitschlitz lang Zugang zu den Ressourcen, dann reiht er sich am Ende der Warteschlange ein und alle Prozesse rücken eine Position vor. Der nächste Prozess wird nach dem FIFO-Prinzip ausgewählt. Der Prozess kann die Ressourcen auch freiwillig früher zurückgeben. Auch wenn ein Prozess vor Ende seines Zeitschlitzes abgeschlossen wird, werden die Ressourcen sofort neu zugeteilt.

Beispiel Scheduling Multitasking-Betriebssystem

Bei Betriebssystemen mit präemptivem Multitasking erstellt der Scheduler für die aktiven Prozesse einen Ausführungsplan nach dem Round-Robin-Verfahren. Dann ermittelt er nach jedem Zeitschlitz über eine Warteschlange den Prozess, der als Nächstes an die Reihe kommt. Der Dispatcher teilt daraufhin diesem Prozess einen Zeitschlitz lang den Prozessor zu.

Gegeben seien z. B. eine Zeitscheibe von 20 ms und 4 Prozesse (P1, P2, P3, P4) mit den Laufzeiten 57 ms, 18 ms, 23 ms, 40 ms. Die Zeit für den Kontextwechsel bleibt für das Beispiel unberücksichtigt.

Das Zeitablaufdiagramm für die Abarbeitung der Prozesse gestaltet sich folgendermaßen:

Round robin.svg

Je kleiner die Zeitscheibe gewählt wird, desto mehr Kontextwechsel sind erforderlich, d. h. der Overhead steigt an. Diese Zeit steht Prozessen nicht für die Abarbeitung zur Verfügung.

Beispiel Lastenverteilung Domain-Server

Als Lastverteilung wird Round-Robin z. B. beim Domain Name System verwendet, wo ein Nameserver auf Anfrage mehrere IP-Adressen liefert. Zur Lastverteilung bei großen Websites oder IRC-Netzwerken geschieht dies auf mehreren physikalischen Servern.

Siehe auch Lastverteilung per DNS

Beispiel Lastverteilung Routing

Routing-Protokolle wie z. B. Routing Information Protocol (RIP) setzen das Round-Robin-Verfahren zur Lastverteilung auf verschiedene Leitungen (Routen) ein. Routen mit gleicher Knotenmetrik und gleichem Zielnetzwerk werden der Reihe nach zur Paketzustellung belastet. Dies geschieht entweder für jedes weitergeleitete Paket einzeln (per packet) oder für jeden neuen Zielhost (per destination).

Bewertung

Zu den Kriterien, auf denen diese Bewertung basiert, siehe Scheduling, Abschnitt „Kriterien“.

Round-Robin behandelt alle Prozesse gleich, so dass einerseits kein Prozess unfair behandelt wird oder gar verhungert, es aber andererseits auch nicht möglich ist, Prozesse mit höherer Dringlichkeit bevorzugt abzuarbeiten. Der Durchsatz dieses Scheduling-Verfahrens ist im Allgemeinen weder besonders niedrig noch besonders hoch. Die Verwendung von Zeitschlitzen fester Länge macht Round-Robin unflexibel und führt dazu, dass Ressourcen häufig ungenutzt bleiben.


Wikimedia Foundation.

Игры ⚽ Нужен реферат?

Schlagen Sie auch in anderen Wörterbüchern nach:

  • Round-Robin (Informatik) — Der Begriff Rundlauf Verfahren oder englisch Round Robin bezeichnet ein Scheduling Verfahren, d. h. es ordnet mehreren konkurrierenden Prozessen begrenzte Ressourcen zu. Das Round Robin Verfahren gewährt allen Prozessen nacheinander für jeweils… …   Deutsch Wikipedia

  • Round-Robin — ist in der Informatik ein(e) Strategie/Verfahren, um z. B. Ressourcen bestimmten Prozessen zuzuordnen. Siehe Round Robin (Informatik). in der Informatik ein einfaches Verfahren zur Lastverteilung per DNS die Zusammenarbeit mehrerer Menschen an… …   Deutsch Wikipedia

  • Round-Robin-Verfahren — Round Robin ist in der Informatik ein(e) Strategie/Verfahren, um z. B. Ressourcen bestimmten Prozessen zuzuordnen. Siehe Round Robin (Informatik). in der Informatik ein einfaches Verfahren zur Lastverteilung per DNS die Zusammenarbeit mehrerer… …   Deutsch Wikipedia

  • Round Robin DNS — Round Robin ist in der Informatik ein(e) Strategie/Verfahren, um z. B. Ressourcen bestimmten Prozessen zuzuordnen. Siehe Round Robin (Informatik). in der Informatik ein einfaches Verfahren zur Lastverteilung per DNS die Zusammenarbeit mehrerer… …   Deutsch Wikipedia

  • Round Robin — bezeichnet: Round Robin (Informatik), ein Verfahren, das konkurrierenden Prozessen begrenzte Ressourcen zuordnet Round Robin (Hobby), die Zusammenarbeit mehrerer Menschen an einem gemeinsamen Endprodukt in der Informatik ein einfaches Verfahren… …   Deutsch Wikipedia

  • Robin — ist ein Vor und Familienname, siehe Robin (Name). Robin ist: Robin (Protein), ein Protein aus der Gewöhnlichen Robinie Robin (Batman), eine Comicfigur und Begleiter des Comichelden Batman Robin (Film), ein Film aus dem Jahr 2007 Reliant Robin,… …   Deutsch Wikipedia

  • Schedule (Informatik) — Ein Prozess Scheduler (Scheduler = Steuerprogramm) ist eine Arbitrationslogik, der die zeitliche Ausführung mehrerer Prozesse in Betriebssystemen regelt. Prozess Scheduler kann man grob in unterbrechende (preemptive) und nicht unterbrechende (non …   Deutsch Wikipedia

  • Scheduler (Informatik) — Ein Prozess Scheduler (Scheduler = Steuerprogramm) ist eine Arbitrationslogik, der die zeitliche Ausführung mehrerer Prozesse in Betriebssystemen regelt. Prozess Scheduler kann man grob in unterbrechende (preemptive) und nicht unterbrechende (non …   Deutsch Wikipedia

  • Scheduling (Informatik) — Ein Prozess Scheduler (Scheduler = Steuerprogramm) ist eine Arbitrationslogik, der die zeitliche Ausführung mehrerer Prozesse in Betriebssystemen regelt. Prozess Scheduler kann man grob in unterbrechende (preemptive) und nicht unterbrechende (non …   Deutsch Wikipedia

  • Prozess (Informatik) — Ein Prozess ist in der Informatik „der Vorgang einer algorithmisch ablaufenden Informationsverarbeitung“. Als Spezialfall „in Betriebssystemen ist ein Prozess ein Vorgang, der durch ein Programm kontrolliert wird, welches zur Ausführung einen… …   Deutsch Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”