61
• установить размер кванта зависящим от номера очереди, например:
Q[n]=q*n или Q[n]=q*2
n
; поскольку в очереди с большими
номерами попадают более длинные процессы, их обслуживание с
большим квантом позволит сэкономить расходы на переключение;
• обслуживать разные очереди по разным дисциплинам (например: RR –
для первой очереди, FCFS – для второй).
2.3. Планирование процессов в реальных системах
Как мы отмечали выше, в реальных ОС при планировании
процессорного времени применяются модификации и/или комбинации
базовых алгоритмов, обеспечивающие большую эффективность и
гибкость. Можно утверждать, что в реальных ОС применяются почти
исключительно комбинированные методы, учитывающие как внешние
приоритеты, так и поведение процесса, и степень загрузки ЦП, и,
возможно, других ресурсов системы. Можно также утверждать, что
дисциплины планирования без вытеснения в ОС общего назначения
бесперспективны. Доживающая свой век Windows 3.x и Mac OS –
последние из современных ОС, применяющая кооперативную
многозадачность.
По-видимому, в ближайшее время наиболее интенсивно будут
применяться и развиваться интерактивные ОС и ОС, обеспечивающие
режим клиент/сервер, поэтому современные ОС применяют дисциплины,
отдающие предпочтение обменным процессам. Для таких ОС достаточно
типичной можно считать следующую макросхему определения
приоритетов процессов в очереди к ЦП. Наивысший абсолютный
приоритет имеют системные процессы, которые не могут вытесняться.
Далее следуют системные процессы, которые могут быть вытеснены.
Наконец, низший приоритет имеют пользовательские процессы.