CHAPTER 2 (part 3)

Scheduling Periodic Tasks

2.4 The Deadline Driven Scheduling

As it was proven, the rate monotonic scheduling achieves a processor utilization that approaches ln2. This of course is not satisfactory especially if one takes into account the task switching overhead which has not been included in the calculations.

On the other hand, since the priority assignment is fixed and calculated beforehand, such a scheduling is easily implementable (especially for large task sets).

A more efficient scheduling (one that utilizes the processor at 100%) is a dynamic priority assignment scheduling. This is also a pre-emptive scheduling environment, but an environment where the priorities change dynamically with time. For this scheduling strategy the earliest deadline task is assigned the highest priority, while the task whose deadline is the furthest away, is assigned the lowest priority.

Compared with the rate monotonic assignments, the deadline driven scheduling achieves higher processor utilization, but by the same token, it requires more processing resources in order to calculate the ever changing priority assignment. We shall prove that this schedule is feasible.

Theorem 2.7. When the deadline driven scheduling algorithm is used to schedule a set of tasks on a processor, there is no processor idle time prior to an overflow (i.e. before a task overruns its deadline). It is assumed that the set of tasks consists of repetitive tasks. Proof

Theorem 2.8. For a given set of m repetitive tasks, the deadline driven scheduling algorithm is feasible if and only if  . Proof

2.5 Selecting Period Lengthts in Periodic Tasks

Periodic tasks are most often used in control systems to implement (digital) controllers.

Figure 2.14.

The system depicted in the figure above, represents the use of a controller that forces the plant to follow the input . (called in this case the regulation).

Controllers are used so that they can compensate for noise, unknown plant dynamics, and variations in the plant (e.g. as the plant ages).

Controllers can be analog, but more often they are implemented digitally because of the flexibility a digital system offers.

A system incorporating a digital controller is depicted in the figure below.

Figure 2.15.

r  the reference or command the indicated error
v  and w external disturbances (noise), y the output signal the sensed output
u  the control or actuator input signal.

Example 2.2
Example 2.3

Chapter's Exercises: