Методы планирования
Для удовлетворения потребностей разных приложений в системе QNX реализованы три метода планирования:
- планирование по принципу простой очереди (первым пришел_
- первым обслужен);
- круговой метод планирования;
- адаптивное планирование.
Каждый процесс в системе может выполняться, используя любой из этих методов. Они эффективны применительно к одному процессу, а не ко всем процессам на узле.
Запомните, что данные методы планирования используются только тогда, когда два или более процессов, разделяющих один и тот же приоритет, находятся в состоянии ГОТОВ (т.е. процессы непосредственно конкурируют друг с другом). Если в состояние ГОТОВ переходит процесс, имеющий более высокий приоритет, он немедленно выгружает все процессы с меньшим приоритетом.
Три процесса, имеющие одинаковые приоритеты, находятся в состоянии ГОТОВ. Если процесс А блокируется, процесс В начнет выполняться.
Рис. 10
Метод планирования наследуется от порождающего процесса, однако, он может быть изменен.
Если вы хотите | Используйте |
Определить метод планирования для процесса | Функцию getscheduler() |
Установить метод планирования для процесса | Функцию setscheduler() |