Приоритеты процессов
Вопрос 1 «Алгоритм диспетчеризации. Способ выбора процесса для диспетчеризации».
Когда принимаются решения по диспетчеризации
Планировщик принимает решение по диспетчеризации:
· после разблокировки процесса;
· по истечении временного интервала (кванта) для выполняющегося процесса;
· когда прерывается текущий процесс.
Приоритеты процессов
В QNX каждому из процессов присваивается приоритет. Планировщик выбирает для выполнения следующий процесс, находящийся в состоянии READY, в соответствии с его приоритетом. (Программа в состоянии READY - это программа, которая способна использовать ЦП). Для выполнения выбирается процесс с наивысшим приоритетом.
В очереди шесть процессов (A-F), готовых к выполнению и находящихся в состоянии READY. Остальные процессы (G-Z) блокированы. В данный момент выполняется процесс A. Процессы A, B и C имеют наивысший приоритет, поэтому будут разделять центральный процессор в соответствии с алгоритмом диспетчеризации для выполняемого процесса. Приоритеты, присваиваемые процессам, находятся в диапазоне от 0 (наименьший) до 31 (наивысший). Уровень приоритета по умолчанию для создаваемого процесса наследуется от его родителя; для приложений, запускаемых командным процессором, приоритет обычно равен 10. |