Clock-driven scheduling is also called as time-driven scheduling. When scheduling is clock- driven, decisions are made at specific time instants on what jobs should execute when. Typically in clock-driven scheduling system, all the parameters of hard real-time jobs are fixed and known.
A schedule of the jobs is computed off-line and is stored for use at run-time. The scheduler schedules the jobs according to this schedule at each scheduling decision time. Hence scheduling overhead at run-time is minimized. Scheduling decisions are usually made at regularly spaced time instants.
One way to implement this is to use a hardware timer set to expire periodically which causes an interrupt which invokes the scheduler. When the system is initialized, the scheduler selects and schedules the jobs that will execute until the next scheduling decision time and then blocks itself waiting for the expiration of the timer. When the timer expires, the scheduler repeats these actions.