Упреждающее планирование с фиксированным приоритетом
Упреждающее планирование с фиксированным приоритетом — это система планирования, обычно используемая в системах реального времени . При вытесняющем планировании с фиксированным приоритетом планировщик гарантирует, что в любой момент времени процессор с наивысшим приоритетом выполняет задачу из всех тех задач, которые в данный момент готовы к выполнению.
есть У вытесняющего планировщика задача прерывания часов, которая может предоставить планировщику варианты переключения после того, как задача пройдет заданный период для выполнения — интервал времени . Преимущество этой системы планирования заключается в том, что ни одна задача не перегружает процессор на время, превышающее заданный интервал времени. Однако эта схема планирования уязвима для блокировки процессов или потоков : поскольку приоритет отдается задачам с более высоким приоритетом, задачи с более низким приоритетом могут ждать неопределенное время. Одним из распространенных методов решения этой ситуации является старение, при котором постепенно увеличивается приоритет ожидающих процессов и потоков, гарантируя, что все они в конечном итоге будут выполнены. Большинство операционных систем реального времени (RTOS) имеют вытесняющие планировщики. Кроме того, отключение квантования времени эффективно дает вам невытесняющую RTOS.
Упреждающее планирование часто отличают от кооперативного планирования , при котором задача может выполняться непрерывно от начала до конца, не вытесняясь другими задачами. Чтобы иметь возможность переключения задач, задача должна явно вызвать планировщик. Кооперативное планирование используется в некоторых ОСРВ, таких как Salvo или TinyOS .