2.2.3. Приоритетное планирование.
Описанные ранее стратегии могут рассматриваться как частные случаи стратегии приоритетного планирования. Эта стратегия предполагает, что каждому процессу приписывается приоритет, определяющий очередность предоставления ему CPU. Например, стратегия FCFS предполагает, что все процессы предполагает, что все процессы имеют одинаковые приоритеты, а стратегия SJF предполагает, что приоритет есть величина, обратная времени последующего обслуживания.
Приоритет — это целое положительное число, находящееся в некотором диапазоне, например от 0 до 7, от 0 до 4095. Будем считать, что чем меньше значение числа, тем выше приоритет процесса.
Пример №3. | приоритет |
П1(10 мс) | 3 |
П2(1 мс) | 1 |
П3(2 мс) | 3 |
П4(1 мс) | 4 |
П5(5 мс) | 2 |
На рисунке приведена диаграмма Ганга, располагающая процессы в очереди в соответствии со стратегией приоритетного планирования
П2 | П5 | П1 | П3 | П4 | |
WT2=0 мс | WT5=1 мс | WT1=6 мс | WT3=16 мс | WT4=18 мс |
Внутренние факторы:
требования к памяти
количество открытых файлов
отношение среднего времени ввода - вывода к среднему времени CPU и так далее
Внешние факторы:
важность процесса
тип и величина файлов, используемых для оплаты
отделение, выполняющее работы и так далее
Внутренние факторы могут использоваться для автоматического назначения приоритетов самой операционной системой, а внешние для принудительного, с помощью оператора.
Главный недостаток приоритетного планирования заключается в возможности блокирования на неопределенно долгое время низкоприоритетных процессов.
Известен случай, когда в 1973 году в Массачусетском технологическом институте MIT при остановке компьютера IBM 7094 в очереди готовых процессов были обнаружены процессы, представленные в 1967 и все еще не выполненные.
Для устранения отмеченного недостатка используются следующие методы: процессы, время ожидания которых превышает фиксированную величину, например 15 минут, автоматически получают единичное приращение приоритета.
2.2.4. “Карусельная” стратегия планирования. RR-Round Robin.
Round Robin стратегия применяется в системах разделения времени. Определяется небольшой отрезок времени, названный квантом времени (10..100 мс). Очередь готовых процессов рассматривается как кольцевая. Процессы циклически перемещаются по очереди, получая CPU на время, равное одному кванту. Новый процесс добавляется в хвост очереди. Если процесс не завершился в пределах выделенного ему кванта времени, его работа принудительно прерывается, и он перемещается в хвост очереди.
Пример 4
П1(24 мс)
П2(3 мс)
П3(3 мс)
q=4 мс.
Диаграмма Ганга соответственно Round Robin стратегии для этого случая имеет вид:
П1 | П2 | П3 | П1 | П1 | П1 | П1 | П1 |
WT1=0 мс | 7 | 10 | 14 | 18 | 22 | 26 | 30 |
Свойства Round Robin стратегии сильно зависят от величины временного кванта q. Чем больше временной квант, тем дольше Round Robin стратегия приближается к FCFS стратегии (для рассмотренного примера, если q>24 мс, то -> FCFS). При очень малых значениях временного кванта Round Robin стратегия называют разделением процессора — processor sharing. Теоретически это означает, что каждый из N процессов работает со своим собственным процессором, производительность процессора равна 1/N от производительности физического процессора.
2.2.5. ПЛАНИРОВАНИЕ с использованием многоуровневой очереди.(Multilevel queue scheduling).
Эта стратегия разработана для ситуации, когда процессы могут быть легко классифицированы на несколько групп, например, часто процессы разделяют на две группы: интерактивные (процессы переднего плана) и пакетные (фоновые).
Интерактивные и пакетные процессы имеют различные требования к краткосрочному планировщику, например по отношению ко времени отклика.
Стратегия многоуровневой очереди разделяет очередь готовых процессов на несколько очередей, в каждой из которых находятся процессы с одинаковыми свойствами, и каждый из которых может планироваться индивидуальной стратегией, например Round Robin стратегия для интерактивных процессов и FCFS для пакетных процессов.
Взаимодействие очередей осуществляется по следующим правилам: ни один процесс с более низким приоритетом не может быть запущен, пока не выполнятся процессы во всех очередях с более высоким приоритетом.
приоритет
Работа процесса из очереди с более низким приоритетом может быть приостановлена, если в одной из очередей с более высоким приоритетом появился процесс.
... циркуляр руководства компании, #321/A, определяющий количество глюков для каждой версии Windows. Ю.Н.: - Но зачем?! С.Б.: - Потому что Microsoft не хочет резать курицу, несущую золотые яйца. Представьте себе, что мы выпустили бы на рынок идеальную операционную систему, каковой на самом деле является Windows. Рынок был бы насыщен очень быстро, после чего пользователи потеряли бы всякий стимул
... менеджмента в управлении операционной системой Операционный менеджер по своему положению находится у истоков формирования миссии и стратегии операционной системы и эффективного регулирования ее ресурсами. И, естественно, разработка эффективной операционной стратегии зависит от «хороших» стратегических и тактических решений операционного менеджера. В данном случае стратегические решения имеют ...
... доступа к данным препятствует как несанкционированному использованию информации, так и распространению вредоносных кодов в системе. Глава 2. Производители программного обеспечения Разумеется, многофункциональность ПК определяет не операционная система, а программное обеспечение, используемое на нем. Именно эти продукты позволяют использовать компьютер в различных производственных сферах. И, ...
... ориентированы на 32 разрядные шинные архитектуры компьютеров с процессорами 80386, 80486 или Pentium. Фирма Novell также подготовила варианты сетевой ОС NetWare, предназначенные для работы под управлением многозадачных, многопользовательских операционных систем OS/2 и UNIX. Версию 3.12 ОС NetWare можно приобрести для 20, 100 или 250 пользователей, а версия 4.0 имеет возможность поддержки до 1000 ...
0 комментариев