Deterministic Scheduling Aperiodic Scheduling Earliest Deadline Due, Earliest Deadline First, Latest Deadline First, Spring Algorithm Periodic Scheduling

  • View
    215

  • Download
    1

Embed Size (px)

Text of Deterministic Scheduling Aperiodic Scheduling Earliest Deadline Due, Earliest Deadline First, Latest...

  • Deterministic Scheduling Aperiodic Scheduling

    Earliest Deadline Due, Earliest Deadline First, Latest Deadline First, Spring Algorithm

    Periodic Scheduling

    References: Shaw Chap 6 Buttazo Chap 3 & 4

  • Introduction Priority & Round Robin Periodic Scheduling(Feasible Solution)Example 1:

  • More Round Robin Periodic Scheduling(Non-feasible Solution)Example 2:

  • APERIODIC TASK SCHEDULINGNotation:

  • Earliest Due Date (EDD) - Jacksons RuleSet of tasks:Problem:Algorithm:

  • Earliest Due Date (EDD) - Jacksons Rule

  • Earliest Due Date (EDD) Example 1

  • Earliest Due Date (EDD) Example 2

  • Earliest Due Date (EDD) Guaranteed FeasibilityOrder tasks by increasing deadlines. Then:

  • Earliest Deadline First (EDF) Horns Algorithm

  • Earliest Deadline First (EDF) Example

  • Earliest Deadline First (EDF) Guarantee of Schedualability Dynamic Scheduling:

    Assume Schedulable Need to Guarantee that

    Assuming all tasks are ordered by increasing deadlines:Worst case finishing time:For Guaranteed Schedulability:

  • EDF - Non-Preemptive SchedulingThe scheduling problem for non-preemptive EDF is NP hard

  • Non-Acyclic Search Tree Scheduling

  • Bratleys Algorithm

  • Scheduling with Precedence Constraints

    Latest Deadline First (or last?)- Optimizes max Lateness

  • Latest Deadline First

  • EDF with Precedence ConstraintsThe problem of scheduling a set of n tasks with precedent constraints and dynamic activations can be solved if the tasks are preemptable.

    The basic ideas is transform a set of dependent tasks into a set of independent tasks by adequate modification of timing parameters. Then, tasks are scheduled by the Earliest Deadline First (EDF) algorithm, iff is schedulable. Basically, all release times and deadlines are modified so that each task cannot start before its predecessors and cannot preempt their successors.

  • EDF with Precedence ConstraintsModifying the release time:

  • EDF with Precedence Constraints

    Modifying the Deadlines:

  • Example

  • Jack Stankovics Spring Algorithmvery powerful and actually has been applied in Jacks real-time operating systemThis does not yield an optimal schedule, but the general problem is NP hard. This does lend itself to artificial intelligence and learning. We are interested here in the concept, rather in any implementation.

    The objective is to find a feasible schedule when tasks are have different types of constraints, such as precedence relations, resource constraints, arbitrary arrivals, non-preemptive properties, and importance levels. A heuristic function H is used to drive the scheduling toward a plausible path.At each level of the search, function H is applied to each of the remaining tasks. The task with the smallest value determined by the heuristic function H is selected to extend the current schedule. If a schedule is not looking strongly feasible, a minimal amount of backtracking is used.

  • Jack Stankovics Spring AlgorithmPrecedence constraints can be handled by adding a term E =1 if the task is eligible and E = infinity if it is not.

  • Jack Stankovics Spring Algorithm

  • Summary

  • Homework #3 (due 5/3/07) : Lecture 4/241)

    2)

    3)