28
Например, пусть всем выполняющимся ресурсам требуется устройство с
последовательным доступом. Т.к. такое устройство не может разделяться
между параллельно выполняющимися процессами, то процессы будут
вынуждены долго ждать своей очереди, т.е. недоступность одного ресурса
может привести к тому, что длительное время не будут использоваться многие
другие ресурсы. Если же взять такой набор процессов, которые не будут
конкурировать между собой за неразделяемые ресурсы при своем
параллельном выполнении, то процессы смогут выполниться быстрее (из-за
отсутствия дополнительных ожиданий), кроме того, имеющиеся в
системе
ресурсы будут использоваться более эффективно. Таким образом, возникает
задача подбора такого множества процессов, которые при своем выполнении
будут как можно реже конфликтовать за имеющиеся в системе ресурсы –
планирование вычислительных процессов.
В
настоящее время на первый план вышли задачи
динамического
(
краткосрочного
планирования) – текущего наиболее эффективного
распределения ресурсов, возникающего практически по каждому событию.
Задачи динамического планирования стали называть
диспетчеризацией.
Краткосрочный планировщик решает, какая из задач, находящихся в очереди
готовых к выполнению, должна быть передана на исполнение.
Долгосрочный планировщик решает, какой из процессов, находящихся
во входной очереди, в
случае освобождения ресурсов памяти должен быть
переведен в очередь процессов, готовых к выполнению. Он выбирает процесс
из входной очереди с целью создания неоднородной мультипрограммной
смеси. В
большинстве распространенных современных ОС долгосрочный
планировщик отсутствует.
Основное
различие
между
краткосрочным
и
долгосрочным
планировщиками заключается в частоте из запуска (например, краткосрочный
может запускаться каждые 30 или 100 мс, долгосрочный – один раз в
несколько минут).
При рассмотрении
стратегий планирования, как правило, идет речь о
диспетчеризации. Иногда используется термин
стратегия обслуживания.
Стратегия планирования определяет, какие процессы планируются на
выполнение, чтобы достичь поставленной цели. Среди стратегий выбора
процесса, которому необходимо предоставить процессор, можно выделить
следующие:
- по возможности заканчивать вычислений (вычислительные процессы)
в том же порядке, в котором они были начаты;
- отдавать предпочтение более коротким вычислительным задачам;
- предоставлять всем пользователям (процессам пользователей)
одинаковые услуги, в том числе и одинаковое время ожидания.
Достарыңызбен бөлісу: