Loading AI tools
Algorithmus für Warteschlangen Aus Wikipedia, der freien Enzyklopädie
Das Rundlauf-Verfahren, englisch Round-Robin, ist ein Scheduling-Verfahren, das u. a. Warteschlangen abarbeitet.
Zum Einsatz kommt es beispielsweise als Prozess-Scheduler, wo es mehreren konkurrierenden Prozessen begrenzte Ausführungs-Ressourcen zuordnet. Das Round-Robin-Verfahren gewährt allen Prozessen nacheinander für jeweils einen kurzen Zeitraum während eines Zeitschlitzes Zuteilung zu einer ausführenden CPU; 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.
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.
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.
Als Lastverteilung wird Round-Robin z. B. beim Domain Name System verwendet, wo ein Nameserver auf Anfrage mehrere IP-Adressen liefern kann. Zur Lastverteilung bei großen Websites oder IRC-Netzwerken geschieht dies auf mehreren physischen Servern.
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).
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.
Seamless Wikipedia browsing. On steroids.
Every time you click a link to Wikipedia, Wiktionary or Wikiquote in your browser's search results, it will show the modern Wikiwand interface.
Wikiwand extension is a five stars, simple, with minimum permission required to keep your browsing private, safe and transparent.