ВУЗ:
Составители:
Алгоритм выбора по характеру использования предыдущего кванта различает два типа состояния готовности про-
цессов: низкоприоритетная и высокоприоритетная готовность.
Если процесс полностью использовал предыдущий выделенный квант времени ЦП, то ему присваивается состояние
"Низкоприоритетная готовность". Если процесс использовал не весь выделенный квант времени ЦП из-за перехода в состоя-
ние ожидание по вводу-выводу, то ему присваивается состояние "Высокоприоритетная готовность". На обслуживание сна-
чала выбираются процессы, находящиеся в состоянии высокоприоритетной готовности, а затем, если их нет, процессы, на-
ходящиеся в состоянии "Низкоприоритетная готовность".
3.3.2.5. АЛГОРИТМЫ ВЫБОРА ВЕЛИЧИНЫ КВАНТА
Выбор величины кванта является принципиально необходимым в режиме разделения времени. Процедура квантования
выполняется каждый раз, когда ОС выбирает процесс из рабочей смеси и активизирует его. В настоящее время наиболее
распространенными являются:
− алгоритм равномерного квантования;
− алгоритм квантования по приоритету процесса;
− алгоритм минимизации количества переключений между процессами.
Алгоритм равномерного квантования
– самый простой из упомянутых выше алгоритмов. В соответствии с этим алго-
ритмом каждому процессу, находящемуся в рабочей смеси, выделяется квант времени, длительность которого может изме-
няться на отрезке времени существования процесса в системе. Длительности квантов времени всех процессов равны между
собой
Алгоритм квантования по приоритету процесса осуществляет регулирование длительности кванта
q
i
для i-го про-
цесса в зависимости от его текущего приоритета
p
i
. Функциональная зависимость q
i
= q
i
(p
i
) может иметь любой допустимый
вид и должна иметь следующие основные свойства: монотонность, положительная определенность, ограниченность.
Алгоритм квантования с минимизацией количества переключений
заключается в том, что активизируемый процесс
занимает не только свой квант, но и остатки квантов процессов, перешедших к этому моменту времени в состояние ожида-
ния.
На практике применяют также различные сочетания описанных алгоритмов.
3.4. ВЗАИМОСВЯЗАННЫЕ И КОНКУРИРУЮЩИЕ ЗАДАЧИ
3.4.1. Средства управления ресурсами
Под управлением ресурсами в ОС понимается распределение ресурсов системы между различными задачами и процес-
сами, одновременно функционирующими в ней.
В ОС, как правило, отсутствует отдельный супервизор ресурсов, поскольку функции распределения ресурсов реализу-
ются как на уровне внешнего планирования, так и на уровне внутреннего планирования.
Основными функциями управления ресурсами являются:
− учет наличия и состояния ресурсов;
− прием и учет заявок на ресурсы от задач и процессов;
− распределение ресурсов между задачами и процессами;
− организация использования ресурсов, выделенных каждой задаче или процессу;
− возврат ресурса в систему по мере его освобождения потребителем.
Для реализации функций управления ресурсами в ОС формируются информационные таблицы, в которых отражаются
следующие основные данные:
• для ресурсов:
− учетная информация о ресурсе (идентификатор, класс, количество каналов и т.п.);
− код состояния ресурса;
− идентификатор процесса-владельца и т.п.;
• для заявок на ресурсы:
−
идентификатор процесса-заявителя;
− приоритет процесса;
− идентификатор и требуемый объем ресурса и т.п.
В ходе организации использования ресурсов формируются таблицы, в которых указываются списки распределенных и
свободных ресурсов, связи между ресурсами и процессами.
Наряду с проблемой рационального распределения ресурсов между процессами существует также проблема синхрони-
зации протекания параллельных процессов и исключение возникновения тупиков в вычислительной системе.
Процесс в мультипрограммной системе находится в состоянии
тупика, если он ожидает некоторого события, которое
никогда не произойдет.
Системная тупиковая ситуация, или ситуация "зависания" системы – это ситуация, когда один или более процессов
оказываются в состоянии тупика.
В операционных системах тупики возникают в большинстве случаев как результат конкуренции процессов за облада-
ние монопольно используемыми ресурсами (рис. 3.1).
Сформулированы следующие четыре необходимых условия наличия тупика:
1) процессы требуют предоставления им монопольного права управления ресурсом, которые им выделяются (условие
взаимоисключения);
Страницы
- « первая
- ‹ предыдущая
- …
- 30
- 31
- 32
- 33
- 34
- …
- следующая ›
- последняя »
