Получают ли две задачи SCHED_FIFO с одинаковым приоритетом время обработки в каждом периоде в Linux?
Получают ли две задачи SCHED_FIFO с одинаковым приоритетом время обработки в каждом периоде в Linux, при условии, что ни одна из задач не завершится до окончания периода?
В документации Linux говорится, что процессы SCHED_FIFO могут быть вытеснены только процессами с более высоким приоритетом, но я понимаю, что CFS работает на более высоком уровне и назначает временные интервалы для каждой из двух задач в каждом периоде.
1 ответ
В документации Linux говорится, что процессы SCHED_FIFO могут быть вытеснены только процессами с более высоким приоритетом
Это правильно, в дополнение к этому, они также могут быть выгружены, если вы установите RLIMIT_RTTIME
(getrlimit(2)
) и этот предел достигнут.
Единственные другие причины, почему другой SCHED_FIFO
Процесс (с тем же приоритетом) может быть запланирован, если первый спит или если он добровольно уступает (добровольное вытеснение).
CFS не имеет ничего общего с SCHED_FIFO
, это только заботится о SCHED_NORMAL
, SCHED_BATCH
а также SCHED_IDLE
,