Cyclic Scheduler in Real Time System

A cyclic scheduler in the real-time system is a periodic static scheduler. It doesn’t require resetting the timer interrupt at different values of tk . It interrupts the processor at regular intervals and scheduling decisions are taken regularly. The scheduling decision time divides the timeline into fixed intervals called frames. 

Frame size is denoted by f and the number of frames in each hyper period (or major cycle) is denoted as F. Scheduling decisions are taken at the beginning of each frame. There is no preemption within each frame.

 

Constraints for Frame Size

Constraints 1: The frame size should be larger than the execution time of every task.

f ≥ max (ei)    
f = frame size
ei = execution time

Constraint 2: The frame size should evenly divide the hyper-period into multiple frames.

Constraints 3: There should be at least one frame between release time and the deadline of a task. 

2f - gcd(Pi,f) ≤ Di
Di = Absolute deadline
P = Period of a task