Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
VSOS_2014.doc
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
1.9 Mб
Скачать
    1. Диспетчеризация

Выделим еще одну важную компоненту планировщика – диспетчер центрального процессора. Диспетчер – это модуль, который передает управление центральным процессором процессу, выбранному планировщиком низкого уровня.

Диспетчеризация включает:

  • переключение контекста;

  • переключение в режим пользователя;

  • переход на необходимую точку в программе пользователя для возобновления ее работы.

    1. Критерии планирования процессора

Используются следующие критерии, позволяющие сравнить алгоритмы планирования процессора.

Загруженность процессора (CPU utilization). Загруженность процессора теоретически может находиться в пределах от 0 до 100%. В реальных системах загруженность процессора колеблется в пределах от 40% до 90%.

Производительность (Throughput). Мерой полезной загруженности системы может служить число процессов, выполняющихся в единицу времени, называемое производительностью.

Время оборота (Turnaround time). Для некоторых процессов важным критерием является полное время выполнения, то есть интервал от момента появления процесса во входной очереди до момента его завершения. Это время называется временем оборота и включает время ожидания во входной очереди, время ожидания в очереди готовых процессов, время выполнения центральным процессором и время ввода-вывода.

Время ожидания (Waiting time). Под временем ожидания понимается суммарное время нахождение процесса в очереди готовых процессов.

Время реакции/отклика (Response time). Для сугубо интерактивных программ важным показателем является время реакции или отклика, или время, прошедшее от момента попадания процесса во входную очередь до момента первого обращения к терминалу.

Очевидно, что простейшая стратегия краткосрочного планирования должна быть направлена на максимизацию средних значений загруженности и пропускная способности, а также на минимизацию средних значений времени оборота, времени ожидания, времени реакции.

В ряде случаев используются сложные критерии, например, минимаксный критерий: минимум максимального времени отклика вместо более простого минимум среднего времени оклика.

    1. Стратегии планирования процессора

3Планирование в порядке поступления

Простейшей стратегией планирования является планирование по принципу FCFS (FirstCome , FirstServed). Эта стратегия заключается в том, что процессор выделяется тому процессу, который раньше всех других его запросил. Реализуется эта стратегия с помощью классической очереди готовых процессов, управляемой по принципу FIFO (First – In, First – Out). Когда процесс попадает в очередь готовых процессов, его РСВ помещается в конец («хвост») очереди. Выполняющийся процесс удаляется из очереди. Текст планировщика прост для написания и понимания.

Среднее время ожидания для стратегии FCFS часто весьма велико и зависит от порядка поступления процессов в очередь готовых процессов.

Пример.

Пусть три процесса P1, P2 и P3 попадают в очередь одновременно в момент времени 0 и имеют следующие значения времени обслуживания (burst time) центральным процессором (в. миллисекундах):

P1

24

P2

3

P3

3

На Рис. 7.4. приведена диаграмма Ганта очередей готовых процессов.

P1

P2

P3

0

24

27

30

Рисунок 7.15 - Диаграмма Ганта для различных вариантов расположения процесса в очереди готовых процессов

Время ожидания равно 0 для процесса P1, 24 для процесса P2 и 27 для процесса P3.

Среднее время ожидания равно (0 + 24 + 27) / 3 = 17 мс. Если процессы поступят в порядке P2, P3, P1, то результат будет иным.

Стратегия FCFS относится к классу стратегий без вытеснения. Получив процессорное время, процесс выполняется до тех пор, пока не завершится или не выполнит запрос ввода-вывода. Эта стратегия особенно не подходит для систем с разделением времени, в которых важно, чтобы каждый процесс получал возможность выполняться через регулярные интервалы. В основном эта стратегия в литературе упоминается для сравнения.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]