11 Диспетчеризация
процессов. Временная диаграмма. Алгоритм диспетчера. Режим "холостого
хода".
Пример планирования и
диспетчеризации в системе разделения времени.
Предполагается наличие следующих
структур: диспетчер - циклически проходит через очередь задач (процессов); программа инициализации - инициирует переменные и массивы; программа обработки входных данных - обрабатывает
приходящие запросы на активацию (активизацию) процессов (задач) и на обновление
файлов-дублей; программа управления таймером; программа
обработки условных активаций - контролирует совпадающие пары запросов на
активацию; предпланировщик реконфигурации -
генерирует модификацию после получения всех запрошенных отчетов о состоянии
управления ресурсами; планировщик процессов -
выбирает из очереди с учетом приоритетов процесс и предоставляет процессор;
программа обработки завершения процесса; программа управления ресурсами
(перегрузка или недогрузка ресурсов).
Х.Х.-простой процессора. Причина
Х.Х. – очередь на выполнение пуста. Диаграмма Х.Х.(нарисовать)
Графическая интерпретация планирования и диспетчеризации
представлена на рисунке:
Временная диаграмма
взаимодействия "Диспетчера" и задач.
Примечание: для того, чтобы не
загромождать диаграмму на ней приведена только часть используемых при
планировании и диспетчировании структур.
НАЧАЛО
Процедура диспетчера
Поиск в очереди-на-выполнение задачи с высшим приоритетом
(HP)
IF1<задача найдена (очередь не
пуста)>
IF2<задача
является приостановленной>
Вызов системной задачи
«приостановить задачу»
Поиск в очереди-на-выполнение
«готовой» задачи
IF3<
«готовая» задача найдена (очередь не пуста)
Выделить задаче Dt
в соответствии с уровнем очередности
Сбросить флаг работы SV
Восстановить регистры
задачи
Передать управление
задачей
FI3
Else
Перейти к поиску в
очереди-на-выполнение «готовой» задачи
FI2
Else
Перейти к выделению кванта
времени Dt задаче
Возобновить поиск в
очереди-на-выполнение задачи с HP
FI1 КОНЕЦ