In diesem Abschnitt soll genauer betrachtet werden, welche Rahmenbedingungen gelten müssen, damit man mit Hilfe der drei Klassen auch Threads erlauben kann, deren Deadline kürzer ist als ihre Periode, ohne den schlechtesten Fall annehmen zu müssen und sie mit einzurechnen. Das würde eine schlechte Auslastung des Prozessors bedeuten, da der Thread diese Rechenzeit nur sehr selten nutzt.
Die Voraussetzungen aus Abschnitt 2.5.1 bleiben weitestgehend erhalten, mit der Ausnahme, daß ein Thread mit Di<Ti zugelassen wird. Das Verfahren funktioniert nur solange, wie die Summe aller Prozentsätze innerhalb der Klasse genau unter 100% liegt.
Threads der Klasse maximal können bei der Betrachtung vernachlässigt werden, da es für sie nicht kritisch ist, wenn sie für kurze Zeit keine Rechenzeit bekommen. Zusätzliche Threads in der Klasse genau (mit Ti=Di) ergeben nur einen konstanten Offset, das heißt, man hat weniger Gesamtrechenzeit zur Verfügung. Zusätzliche Threads in der Klasse minimal müssen sich alle Ressourcen teilen, so daß man sie für den Moment auch als einen Thread betrachten kann, der alle Resourcen alleine braucht. Wir betrachten daher nur zwei Threads, einen in der Klasse genau (G) und einen in der Klasse minimal (M).
Es gibt zwei prinzipielle Herangehensweisen, um den Prozentsatz für den Thread mit der kurzen Deadline zu berechnen. Zum einen müssen die anderen Threads noch ihre benötigte Rechenzeit
bekommen. Zunächst sei ,
wie in Abbildung 2.10 gezeigt wird. Dann muß bei einer Prozessorauslastung von 100%, also für PM=1-PG, gelten:
Damit müssen die beiden Threads mit den folgenden Prozentsätzen angegeben werden:
Wenn TG>TM gilt, dann kann es pasieren, daß in eine Periode von M mehrere Ausführungen von G fallen, wie es in Abbildung 2.11 zu sehen ist. Wenn TG ein ganzzahliges Vielfaches von TM ist, erhöhen sich die Verluste zwischen 0 und DG um den gleichen Faktor, um den sich der Zugewinn in der restlichen Zeit erhöht. Es muß daher gelten:
Wenn TG>TM ist, aber TG kein ganzzahliges Vielfaches von TM ist, muß der Thread G einen höheren Prozentsatz zugewiesen bekommen, da ein weiterer Peak von G auftreten kann, ohne daß M ausreichend Zeit hat, diesen auszugleichen. Im schlechtesten Fall, bei dem die Deadline von M mit der von G zusammenfällt, gilt:
Wenn mehrere Threads in der Klasse minimal vorhanden sind, müssen die Verluste aller Threads aufsummiert und PG so gewählt werden, daß alle diese Verluste ausgeglichen werden. Das führt dann zwar zu komplexeren Berechnungen, der benötigte Prozentsatz bleibt aber weiterhin berechenbar.