Prioritätsscheduling - LinkFang.de





Prioritätsscheduling


Das Prioritätsscheduling (auch PS – priority scheduling) ist ein in Betriebssystemen häufig verwendetes Zeitaufteilungs-Verfahren (sog. „Scheduling“), das jedem Prozess eine Priorität zuweist und jeweils den lauffähigen Prozess mit der höchsten Priorität zur Ausführung bringt.

Hintergrund

In einem Computer kann ein Prozessorkern immer nur einen Prozess (gleichzeitig) bearbeiten. Um dennoch mehrere Prozesse quasi-gleichzeitig abarbeiten zu können, wechselt der Prozessorkern sehr schnell zwischen diesen - sie erhalten sog. „Zeitscheiben“ (i. A. haben die Zeitscheiben eine feste Dauer im Millisekunden-Bereich). Dabei kann ein höher priorisierter Prozess öfter „an die Reihe kommen“, ein niedriger priorisierter muss dafür länger auf eine Zeitscheibe warten.

Arten und Verfahren

Die Prioritätenvergabe kann statisch oder dynamisch erfolgen:

  • In Echtzeitsystemen wird häufig eine statische Prioritätenvergabe verwendet, während andere Systeme oftmals dynamische Prioritäten nutzen.
  • Bei dynamischer Prioritätenvergabe wird die Priorität mit jedem Timertick verringert, bis ein anderer Prozess eine höhere Priorität als der aktuell lauffähige besitzt.

Auch die Einteilung von Prozessen in verschiedene Prioritätenklassen ist möglich. Innerhalb der einzelnen Prioritätenklassen wird typischerweise ein Round-Robin-Scheduling verwendet. Ein Beispiel für einen Scheduler mit dynamisch verwalteten Prioritätsklassen ist der Multilevel Feedback Queue Scheduler.

Mittels intelligenter Algorithmen zur Prioritätenvergabe können verschiedene Systemziele erreicht werden. So ist es möglich, Prozessprioritäten bei Prozessen mit starkem I/O dynamisch zu vergrößern, um die Interaktivität des Systems zu verbessern.

Gefahr Prioritätsinversion

Es besteht die Gefahr der Prioritätsinversion, die auftritt, wenn ein Prozess mit niedriger Priorität eine Ressource mit Hilfe einer Semaphorvariablen exklusiv belegt hat [math](p()-Operation)[/math], die von einem Prozess mit hoher Priorität benötigt wird. Obwohl der hochpriore Prozess eigentlich ausgeführt werden sollte, muss er warten, bis der niederpriore Prozess die Ressource mit einer [math]v()-Operation[/math] wieder freigibt. Dieses Problem kann durch einen Prozess mittlerer Priorität verschärft werden, da dieser sowohl den hoch- wie niederprioren Prozess nun beliebig lange verdrängen kann. Ein berühmter Absturz, der auf diesen Fehler zurückgeführt wurde, ist der Beinahe-Verlust der Pathfinder-Marssonde. Obwohl das Problem seit den 1970er Jahren bekannt ist, ist noch keine optimale Lösung gefunden worden. Zwei bekannte Lösungsansätze sind die Prioritätsgrenze oder -schranke (Priority Ceiling) und die Prioritätsvererbung (Priority Inheritance).


Kategorien: Keine Kategorien vorhanden!

Quelle: Wikipedia - http://de.wikipedia.org/wiki/Prioritätsscheduling (Vollständige Liste der Autoren des Textes [Versionsgeschichte])    Lizenz: CC-by-sa-3.0

Änderungen: Alle Bilder mit den meisten Bildunterschriften wurden entfernt. Ebenso alle zu nicht-existierenden Artikeln/Kategorien gehenden internen Wikipedia-Links (Bsp. Portal-Links, Redlinks, Bearbeiten-Links). Entfernung von Navigationsframes, Geo & Normdaten, Mediadateien, gesprochene Versionen, z.T. ID&Class-Namen, Style von Div-Containern, Metadaten, Vorlagen, wie lesenwerte Artikel. Ansonsten sind keine Inhaltsänderungen vorgenommen worden. Weiterhin kann es durch die maschinelle Bearbeitung des Inhalts zu Fehlern gerade in der Darstellung kommen. Darum würden wir jeden Besucher unserer Seite darum bitten uns diese Fehler über den Support mittels einer Nachricht mit Link zu melden. Vielen Dank!

Stand der Informationen: August 201& - Wichtiger Hinweis: Da die Inhalte maschinell von Wikipedia übernommen wurden, ist eine manuelle Überprüfung nicht möglich. Somit garantiert LinkFang.de nicht die Richtigkeit und Aktualität der übernommenen Inhalte. Sollten die Informationen mittlerweile fehlerhaft sein, bitten wir Sie darum uns per Support oder E-Mail zu kontaktieren. Wir werden uns dann innerhalb von spätestens 10 Tagen um Ihr Anliegen kümmern. Auch ohne Anliegen erfolgt mindestens alle drei Monate ein Update der gesamten Inhalte.