Practical problems in clock driven scheduling falls into following three categories.

  • Handling overruns:
    • Jobs are scheduled based on maximum execution time, but failures might cause
    • A robust system will handle this by either: 1) killing the job and starting an error recovery task; or 2) preempting the job and scheduling the remainder as an aperiodic
    • Depends on usefulness of late results, dependencies between jobs,
  • Mode changes:
    • A cyclic scheduler needs to know all parameters of real-time jobs a
    • Switching between modes of operation implies reconfiguring the scheduler and bringing in the code/data for the new jobs.
    • This can take a long time: schedule the reconfiguration job as an aperiodic or sporadic task to ensure other deadlines met during mode
  • Multiple processors:

Can be handled, but off-line scheduling table generation more complex.