Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
218
Добавлен:
24.05.2017
Размер:
525.82 Кб
Скачать

2.4.2 Алгоритмы планирования, основанные на квантовании

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

Возможные переходы между состояниями:

1. Потоку выделен квант процессорного времени

2. Поток ожидает завершения ввода/вывода

3. Ввод/вывод завершен (событие произошло)

4. Поток исчерпал квант

К

Рис. 2.2 Граф состояний потока в системе с квантованием

ванты, выделяемые потокам, могут быть одинаковыми для всех потоков или различными. Кванты, выделяемые одному потоку, могут быть фиксированной величины, а могут изменяться в разные периоды жизни потока. Кроме того, соотношение между длительностью кванта и средним временем выполнения задачи влияет на производительность системы. Все эти обстоятельства позволяют ОС реализовывать некоторую определенную политику в планировании (предпочтение коротких или длинных задач, компенсация неиспользованного кванта, минимизация накладных расходов, связанных с переключениями). При этом не используется никакой предварительной информации о процессах, дифференциация обслуживания при квантовании базируется на истории существования потока в системе.

2.4.3 Алгоритмы планирования, основанные на приоритетах

Приоритет – это число, характеризующее степень привилегированности потока при использовании ресурсов ОС.

Фиксированный приоритет – приоритет потока назначается ОС при его создании и не изменяется во время существования потока.

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

Существуют две разновидности приоритетного планирования:

-

Рис. 2.3 Граф состояний потока в системе с относительными приоритетами

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

Возможные переходы между состояниями:

1. Выбор по приоритету

2. Поток ожидает завершения ввода/вывода

3. Ввод/вывод завершен (событие произошло).

-

Рис. 2.4 Граф состояний потока в системе с абсолютными приоритетами

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

Возможные переходы между состояниями:

1. Выбор по приоритету

2. Поток ожидает завершения ввода/вывода

3. Ввод/вывод завершен (событие произошло)

4. В очереди появился поток с более высоким приоритетом.

Соседние файлы в папке учебник(см. лекции) Корольковой