Difference between Clock-driven and Event-driven Scheduling
The real-time task can be scheduled by operating system using various scheduling algorithms. These scheduling algorithms are classified on the basis of determination of scheduling points.
1. Clock-driven Scheduling :
The scheduling in which the scheduling points are determined by the interrupts received from a clock, is known as Clock-driven Scheduling. Clock-driven scheduling handles which task is to be processed next is dependent at clock interrupt point.
Attention reader! Don’t stop learning now. Get hold of all the important CS Theory concepts for SDE interviews with the CS Theory Course at a student-friendly price and become industry ready.
2. Event-driven Scheduling :
The scheduling in which the scheduling points are determined by the events occurrences excluding clock interrupts, is known as Event-driven Scheduling. Event-driven scheduling handles which task is to be processed next is independent of clock interrupt point.
Difference between Clock-driven and Event-driven Scheduling:
|CLOCK-DRIVEN SCHEDULING||EVENT-DRIVEN SCHEDULING|
|Tasks are scheduled on the basis of interrupts received by clock.||Tasks are scheduled on the basis of event occurrences excluding clock interrupts.|
|Scheduling points are determined by clock interrupts.||Scheduling points are determined by task completion and task arrival events.|
|Clock-driven scheduling algorithms are simple.||Event-driven scheduling algorithms are very complex.|
|Clock-driven scheduling is not flexible as event-driven.||Event-driven scheduling is more flexible than clock-driven.|
|It can only handle periodic tasks.||It can schedule periodic, sporadic and aperiodic tasks.|
|It is called offline scheduling.||It is called online scheduling.|
|It is widely used in embedded systems.||It is less suitable for embedded systems.|
|It is efficient than event-driven.||It is sophisticated but more proficient.|
|It is used in small applications.||It is used in larger applications.|