Deadline Monotonic Scheduling
# Deadline Monotonic Scheduling

Deadline Monotonic Scheduling (DMS) bezeichnet in der Informatik ein Schedulingverfahren für harte Echtzeitsysteme, das zur Verwaltung von Prozessen fester Prioritäten dient. Unter den Schedulingverfahren mit festen Prioritäten ist es für beliebige Deadlines optimal.

## Annahmen

### Grundsätzliche Einschränkungen

Die theoretische Betrachtung von Echtzeit-Schedulingverfahren erfordert einige grundsätzliche Einschränkungen, um die Komplexität der Analyse handhaben zu können.

* Prozesse können zu jedem Zeitpunkt unterbrochen werden
* der Overhead für Prozesswechsel wird mit 0 Zeiteinheiten angenommen
* notwendige Ressourcen (ausgenommen CPU-Zeit) sind unbegrenzt vorhanden
* alle Prozesse sind unabhängig (intuitiv: Die Prozesse können in beliebiger Reihenfolge ausgeführt werden)
* die Last aller Prozesse zusammen muss ≤1 sein

### Annahmen für periodische Prozesse

* alle Prozesse haben Deadlines kleiner oder gleich ihrer Perioden

### Annahmen für sporadische Prozesse

* alle Prozesse haben Deadlines kleiner oder gleich ihrer Minimal Inter-Arrival-Zeiten (Minimum zwischen zwei Ankunftszeiten desselben Prozesses)

## Verfahren

Analog zu Rate Monotonic Scheduling (RMS) wird bei DMS stets der Prozess der höchsten Priorität ausgeführt. Die Prioritäten werden dabei reziprok zur relativen Deadline vergeben. Das bedeutet, dass die kürzeste Deadline die höchste Priorität hat. Das Verfahren ist präemptiv – beim Eintreffen eines neuen Prozesses mit höherer Priorität wird der aktuelle Prozess zugunsten des neuen unterbrochen. Um aperiodische Jobs handhaben zu können, wird für diese ein fiktiver periodischer Prozess mit der Minimal Inter-Arrival-Zeit als Periode angenommen.

## Mächtigkeit

DMS ist unter den Schedulingverfahren mit festen Prioritäten das mächtigste Verfahren. Es handelt sich um eine Verallgemeinerung von Rate Monotonic Scheduling, wobei mit RMS nur ein Scheduling einer Teilmenge von mit DMS ausführbaren Prozessmengen möglich ist. Im Spezialfall, dass für alle Prozesse relative Deadline und Periodenlängen gleich sind, gilt DMS = RMS.

