This shows you the differences between two versions of the page.
Next revision | Previous revision | ||
realtime:documentation:technical_basics:sched_policy_prio:start [2017/12/05 08:22] anna-maria created - moved into own namespace |
realtime:documentation:technical_basics:sched_policy_prio:start [2023/10/03 05:08] (current) costa.shul use ndash |
||
---|---|---|---|
Line 9: | Line 9: | ||
**Non real-time policies:** | **Non real-time policies:** | ||
- | * **SCHED_OTHER:** Every task gets a so called 'nice value'. It is a value between -20 for the highest nice value and 19 for the lowest nice value. The average value of execution time of the task depends on the associated nice value. | + | * **SCHED_OTHER** – every task gets a so called 'nice value'. It is a value between -20 for the highest nice value and 19 for the lowest nice value. The average value of execution time of the task depends on the associated nice value. |
- | * **SCHED_BATCH:** This policy is derived from SCHED_OTHER and is optimized for throughput. | + | * **SCHED_BATCH** – is derived from SCHED_OTHER and is optimized for throughput. |
- | * **SCHED_IDLE:** It is also derived from SCHED_OTHER, but it has nice values weaker than 19. | + | * **SCHED_IDLE** – is also derived from SCHED_OTHER, but it has nice values weaker than 19. |
**Real-time policies:** | **Real-time policies:** | ||
- | * **SCHED_FIFO:** Tasks have a priority between 1 (low) and 99 (high). A task running under this policy is scheduled until it finishes or a higher prioritized task preempts it. | + | * **SCHED_FIFO** – tasks have a priority between 1 (low) and 99 (high). A task running under this policy is scheduled until it finishes or a higher prioritized task preempts it. |
- | * **SCHED_RR:** This policy is derived from SCHED_FIFO. The difference to SCHED_FIFO is that a task runs for the duration of a defined time slice (if it is not preempted by a higher prioritized task). It can be interrupted by a task with the same priority once the time slice is used up. The time slice definition is exported in procfs (/proc/sys/kernel/sched_rr_timeslice_ms). | + | * **SCHED_RR** – is derived from SCHED_FIFO. The difference to SCHED_FIFO is that a task runs for the duration of a defined time slice (if it is not preempted by a higher prioritized task). It can be interrupted by a task with the same priority once the time slice is used up. The time slice definition is exported in procfs (/proc/sys/kernel/sched_rr_timeslice_ms). |
- | * **SCHED_DEADLINE:** This policy implements the Global Earliest Deadline First (GEDF) algorithm. Tasks scheduled under this policy can preempt any task scheduled with SCHED_FIFO or SCHED_RR. | + | * **[[realtime:documentation:technical_basics:sched_policy_prio:sched_deadline|SCHED_DEADLINE]]** – implements the Global Earliest Deadline First (GEDF) algorithm. Tasks scheduled under this policy can preempt any task scheduled with SCHED_FIFO or SCHED_RR. |