Dynamic priority scheduling is a type of scheduling algorithm in which the priorities are calculated during the execution of the system. The goal of dynamic priority scheduling is to adapt to dynamically changing progress and to form an optimal configuration in a self-sustained manner. It can be very hard to produce well-defined policies to achieve the goal depending on the difficulty of a given problem.
4-552: Earliest eligible virtual deadline first ( EEVDF ) is a dynamic priority proportional share scheduling algorithm for soft real-time systems. EEVDF was first described in the 1995 paper "Earliest Eligible Virtual Deadline First : A Flexible and Accurate Mechanism for Proportional Share Resource Allocation" by Ion Stoica and Hussein Abdel-Wahab. It uses notions of virtual time, eligible time, virtual requests and virtual deadlines for determining scheduling priority. It has
8-473: The Linux kernel. Dynamic priority scheduling Earliest deadline first scheduling and Least slack time scheduling are examples of Dynamic priority scheduling algorithms. The idea of real-time scheduling is to confine processor utilization under schedulable utilization of a certain scheduling algorithm, which is scaled from 0 to 1. Higher schedulable utilization means higher utilization of resource and
12-450: The better the algorithm. In preemptible scheduling, dynamic priority scheduling such as earliest deadline first (EDF) provides the optimal schedulable utilization of 1 in contrast to less than 0.69 with fixed priority scheduling such as rate-monotonic (RM) . In periodic real-time task model, a task's processor utilization is defined as execution time over period. Every set of periodic tasks with total processor utilization less or equal to
16-534: The property that when a job keeps requesting service, the amount of service obtained is always within the maximum quantum size of what it is entitled. In 2023, Peter Zijlstra proposed replacing the Completely Fair Scheduler (CFS) in the Linux kernel with an EEVDF process scheduler . The aim was to remove the need for CFS "latency nice" patches. The EEVDF scheduler replaced CFS in version 6.6 of
#879120