Leksykon IT › Programowanie › Earliest deadline first (EDF)

Earliest deadline first (EDF)

Programowanie Svenska → Zaktualizowano: 2026-11-02

Szeregowanie czasu rzeczywistego, w którym procesor zawsze dostaje zadanie o najbliższym terminie.

Priorytety nie są stałe; przelicza się je za każdym razem, gdy zadanie staje się gotowe do uruchomienia. Liu i Layland wykazali w 1973 roku, że na jednym procesorze z wywłaszczaniem EDF dotrzymuje wszystkich terminów, dopóki łączne obciążenie nie przekracza 100 procent — to teoretyczny pułap, podczas gdy rate-monotonic scheduling gwarantuje jedynie około 69.

Mimo to EDF jest używany rzadziej, niż można by sądzić. Większość RTOS-ów opiera się na stałych priorytetach, które są prostsze w implementacji i łatwiejsze do analizy. Do tego EDF fatalnie znosi przeciążenie: terminy zaczynają przepadać lawinowo i trudno to przewidzieć, podczas gdy stałe priorytety poświęcają przynajmniej najmniej ważną pracę. W Linuksie klasa SCHED_DEADLINE pojawiła się w wersji 3.14 (2014) i uczyniła tę metodę praktyczną także poza laboratorium.

← Wróć do leksykonu