Glossary · Automation software engineering and architecture
Earliest-deadline-first (EDF)
Also known as: EDF scheduling
German: Earliest Deadline First (EDF)
In real-time scheduling, earliest-deadline-first (EDF) is a dynamic-priority algorithm that always runs the ready task whose absolute deadline is closest. For independent periodic tasks with deadlines equal to their periods on one processor, EDF can meet all deadlines as long as total processor utilization does not exceed 100 percent.
- Software engineering
In one sentence
EDF is a dynamic-priority real-time scheduling algorithm that always runs the ready task with the nearest deadline.
Example
A research controller schedules sensor fusion and communication jobs with EDF, so priorities adjust automatically as their deadlines approach.
How it applies
- Engineering: EDF uses processor capacity efficiently, because priorities follow actual urgency. It is available in some real-time operating systems, for example as a Linux scheduling class, but less common in industrial controllers.
- Operation: Under overload, EDF can degrade badly: when not all deadlines can be met, many tasks may miss them in a cascade. Overload behavior must be analyzed and controlled.
- Documentation: When a system uses EDF, document task deadlines, execution time budgets and the overload strategy. Developers extending the system must understand that adding a task affects all others.
EDF vs. fixed-priority scheduling
In Fixed-priority scheduling, each task has a fixed priority set at design time, as in most PLC runtimes. Fixed priorities are simpler to analyze and behave more predictably under overload, because lower-priority tasks are affected first. EDF achieves higher utilization but is harder to certify and to reason about.