Лабораторный практикум по курсу "Операционные системы"
частотой, решения по планированию могут приниматься при каждом прерывании по таймеру
(или каждом k-ом).
С последним способом планирования связаны следующие два определения.
Невытесняющие алгоритмы планирования выбирают поток и позволяют ему работать
вплоть до блокировки либо до того момента, когда поток сам отдаст центральный процессор.
Вытесняющие алгоритмы планирования выбирают поток и
позволяют ему работать
некоторое максимально возможное фиксированное время. Если к концу заданного интервала
времени поток все еще работает, он приостанавливается, и управление переходит к другому
потоку (если существует поток, готовый к исполнению). Вытесняющее планирование
требует прерываний по таймеру, происходящих в конце отведенного периода времени. При
отсутствии таймера возможна реализация только невытесняющих
алгоритмов.
Критерии оценки алгоритмов планирования
Различные операционные системы и различные приложения ориентированы на решение
различных задач. Соответственно, критерии оценки алгоритмов планирования в разных
системах может быть различно. Традиционно выделяют три среды:
1. Системы пакетной обработки данных.
В системах пакетной обработки данных нет пользователей, сидящих за терминалами и
ожидающих ответа. В таких
системах приемлемы алгоритмы без переключений или с
переключениями, но с большим временем, уделяемом каждому потоку. Такой подход
уменьшает число переключений контекста процессов/потоков и повышает эффективность.
2. Интерактивные системы.
В интерактивных системах необходимы алгоритмы с переключениями, чтобы предотвратить
захват процессора одним потоком – преднамеренный или как следствие ошибки
программирования. Необходимо поддержание разумной
степени мультипрограммирования
за счет ограничения количества процессов и потоков, которые могут работать в системе
одновременно, и понимание человеческой психологии. Если между нажатием на клавишу и
появлением символа на экране проходит 20-30 секунд, то многие пользователи предпочтут
прекратить работу и продолжить ее, когда система будет менее загружена, либо могут даже
сменить операционную
систему.
3. Системы реального времени.
В системах с ограничениями реального времени основной задачей всей системы в целом
является гарантированная обработка поступающих сигналов в течение заданных временных
отрезков.
Существует несколько критериев оценки алгоритмов планирования. Есть критерии, общие
для всех сред, и есть критерии, имеющие значение только в какой-либо одно среде.
1. Общие
критерии.
- Справедливость – гарантированное предоставление каждому потоку справедливой доли
процессорного времени. В данном случае «справедливой» не значит «равной», однако
сопоставимые потоки и процессы должны получать сопоставимое обслуживание.
- Баланс – поддержка занятости всех частей системы. Например, если выбирать на
исполнение поочередно потоки, ограниченными возможностями процессора, и потоки,
ограниченными возможностями устройств ввода-вывода,
то загрузка как процессора, так и
устройств ввода-вывода будет максимальной.
26 Учебно-исследовательская лаборатория «Информационные технологии»