„Earliest Deadline First“ – Versionsunterschied
[gesichtete Version] | [gesichtete Version] |
K Bot: Ergänze: cs:Earliest deadline first |
Keine Bearbeitungszusammenfassung |
||
Zeile 3: | Zeile 3: | ||
== Funktionsweise == |
== Funktionsweise == |
||
* Alle, zu dem betrachteten Zeitpunkt, bereitstehenden Tasks werden nach aufsteigenden Fertigstellungsterminen ([[Deadline]]s) geordnet |
* Alle, zu dem betrachteten Zeitpunkt, bereitstehenden Tasks werden nach aufsteigenden Fertigstellungsterminen ([[Deadline]]s) geordnet |
||
* |
* Der Task, der als erstes fertig sein muss, erhält den Prozessor |
||
Es werden immer die Zeitpunkte für das Scheduling betrachtet, an denen entweder ein neuer Task gestartet wird oder ein gerade noch aktiver [[Task]] beendet wird. |
Es werden immer die Zeitpunkte für das Scheduling betrachtet, an denen entweder ein neuer Task gestartet wird oder ein gerade noch aktiver [[Task]] beendet wird. |
Version vom 26. Februar 2009, 17:13 Uhr
Earliest Deadline First (EDF) ist ein Scheduling-Verfahren des Betriebssystems, mit dessen Hilfe es den Prozessen (Tasks) Prozessor-Zeit zuteilt. Es gehört zu den zeitbasierten Verfahren, denn es trifft seine Entscheidungen so, dass Fertigstellungstermine (Deadlines) eingehalten werden. Die präemptive Variante von Earliest Deadline First wird vor allem für Echtzeitsysteme verwendet.
Funktionsweise
- Alle, zu dem betrachteten Zeitpunkt, bereitstehenden Tasks werden nach aufsteigenden Fertigstellungsterminen (Deadlines) geordnet
- Der Task, der als erstes fertig sein muss, erhält den Prozessor
Es werden immer die Zeitpunkte für das Scheduling betrachtet, an denen entweder ein neuer Task gestartet wird oder ein gerade noch aktiver Task beendet wird.
EDF ist dabei sehr flexibel, denn es kann sowohl für präemptives, wie auch für kooperatives Multitasking verwendet werden. Außerdem kann es in aperiodischen sowie periodischen Plänen eingesetzt werden.
Prozessorauslastung
EDF kann den Prozessor bis zur maximalen Prozessorauslastung einplanen. Dies gilt allerdings nur für Tasksysteme, in denen die Zeitspanne bis zur Deadline eines Tasks jeweils größer oder gleich der Periode der jeweiligen Task selbst ist. Des Weiteren dürfen zwischen den Tasks keine Abhängigkeiten bestehen und keine gemeinsame Resource verwendet werden, da dadurch einen Deadlock verursacht werden könnte.