Dynamic Dispatching of Cyclic Real-Time Tasks with RelativeTiming Constraints

  • Authors:
  • Seonho Choi;Ashok K. Agrawala

  • Affiliations:
  • Department of Computer Science, Bowie State University, 14000 Jericho Park Road, Bowie, MD 20715;Institute for Advanced Computer Studies, Department of Computer Science, University of Maryland, College Park, MD 20742

  • Venue:
  • Real-Time Systems
  • Year:
  • 2000

Quantified Score

Hi-index 0.00

Visualization

Abstract

In some hard real-time systems, relative timing constraints maybe imposed on task executions, in addition to the release timeand deadline constraints. Relative timing constraints such asseparation or relative deadline constraints may be given betweenstart or finish times of tasks (Gerber et al., 1995; Han andLin, 1989; Han et al., 1992; Han and Lin, 1992; Han et al., 1996).One approach in real-time schedulingis to find a total order on a set of N tasks ina scheduling window, and cyclically use this order at run timeto execute tasks. However, in the presence of relative timingconstraints, if the task execution times are nondeterministicwith defined lower and upper bounds, it is not always possibleto statically assign task start times at pre-runtime for a giventask ordering (Gerber et al., 1995). We develop a technique called dynamic cyclic dispatching asan extension of a parametric dispatching mechanism in (Gerberet al., 1995). An ordered set of N tasks is assumedto be given in a scheduling window and this schedule(ordering)is cyclically repeated at runtime in consecutive scheduling windows.Relative timing constraints between tasks may be defined acrossscheduling window boundaries as well as within one schedulingwindow. A task set is defined to be dispatchable if there existsany way in which the tasks can be dispatched with all their timingconstraints satisfied. An off-line algorithm is presented tocheck the dispatchability of a task set and to obtain parametriclower and upper bound functions for task start times if the taskset is dispatchable. These parametric bound functions are evaluatedat runtime to obtain a valid time interval during which a taskcan be started. The complexity of this off-line component isshown to be O(n^2N^3) where n is thenumber of tasks in a scheduling window that have relative timingconstraints with tasks in the next scheduling window. An onlinealgorithm can evaluate these bounds in O(N) time.Unlike static approaches whichassign fixed start times to tasks in the scheduling window, ourapproach allows us to flexibly manage the slack times at runtimewithout sacrificing the dispatchability of tasks. Also, a widerclass of relative timing constraints can be imposed to the taskset compared to the traditional approaches.