Figure : Time vs Miss Ratio
At the points where the spikes are seen, we observe deadline misses. This causes the service-level controller to react by reducing the service-level of the degradable tasks, thereby alleviating the effect on system utilization due to the deadline miss.
Figure : Time vs
Utilization
Sample period = 15
Two tasks submitted. For both the tasks: deadline = 7 units and period = 10 units. For EDF execution time submitted was 5 units and for FC-EDF the execution times submitted were (3,4,5). The actual execution times were varied randomly.
The Major time periods can be explained as follows
Initially there is only one task in the system. As that task never misses a deadline, the FC-EDF scheduler starts getting greedy by reducing the system utilization due to that task.
At t = 140 a new task is added to the system and hence the system utilization sharply increases.
This addition of the task is followed by a deadline miss at 147 which aggravates the situation and further increases the system utilization.
FC-EDF detects degradable tasks and thus reduces their service-level, thereby bringing down the system utilization a bit. But the cascading effect of the missed deadline causes the system utilization to gradually reach 1 as the DW value is 10 sample periods or 150 time units.
As the effect of the past missed deadline fades away, the system starts recovering.
Due to a rise in the PID controller’s computed value, FC-EDF tries to boost the service-level of the tasks, which again increases the system utilization. Also there is a deadline miss.
Finally the system stabilizes finally and the system utilization starts dropping.
In contrast EDF never gets to accepting
any other task, even though the actual utilization is far lower than the
computed value.