Лекция ОС - управление процессорами

Содержание

Слайд 2

Дисциплина планирования должна преследовать следующие цели: Быть справедливой ко всем процессам

Дисциплина планирования должна преследовать следующие цели:

Быть справедливой ко всем процессам

Повышать производительность

системы (число процессов/время)

Уменьшать время реакции системы для пользователей

Быть предсказуемой (время решения задания не должно зависеть от нагрузки)

Минимизировать потери ресурсов

Загружать простаивающие ресурсы

Исключать бесконечное откладывание

Учитывать приоритеты

Выделять процессы, занимающие ключевые ресурсы (не прерывать)

Создавать хорошие условия для «правильных» процессов

Балансировать между min(время реакции) – max(загрузка ресурсов)

Иметь плавную зависимость параметров от нагрузки

Слайд 3

Дисциплина планирования должна учитывать: (критерии планирования) Лимитируется ли процесс I/O операциями

Дисциплина планирования должна учитывать: (критерии планирования)

Лимитируется ли процесс I/O операциями

Освобождает ли

процесс ЦП до окончания кванта времени

Режим работы процесса – пакетный или интерактивный

Необходимость «немедленной» реакции на события (real time)

Приоритет процесса

Частоту прерываний из-за отсутствия страниц в памяти (раб. множество)

Частоту прерываний из-за низкого приоритета

Выделенное время

Время ожидания в очереди

Время, необходимое для завершения процесса

И многое другое

Слайд 4

Дисциплины планирования делятся на: ДИСЦИПЛИНЫ БЕЗ ПЕРЕКЛЮЧЕНИЯ После выделения процессу ЦП

Дисциплины планирования делятся на:

ДИСЦИПЛИНЫ БЕЗ ПЕРЕКЛЮЧЕНИЯ
После выделения процессу ЦП его нельзя

отобрать до завершения

ДИСЦИПЛИНЫ С ПЕРЕКЛЮЧЕНИЕМ
У процесса можно отобрать ЦП
используя таймер или с приходом другого процесса

СТАТИЧЕСКИЕ – не меняются при работе процесса
Жесткий алгоритм управления, низкая эффективность

ДИНАМИЧЕСКИЕ – могут учитывать показания системных «сенсоров»
Гибкое управление, высокие издержки на обслуживание

ПОКУПНЫЕ – изменяется (повышается) по инициативе пользователя
Экзотика.

Приоритеты бывают:

Слайд 5

1. Планирование по сроку завершения Все процессы должны закончиться к указанному

1. Планирование по сроку завершения

Все процессы должны закончиться к указанному сроку.

Надо

точно указать какие ресурсы нужны процессу (как узнать?).

Нельзя дискриминировать отдельные процессы!

Как учесть приход различных запросов во время выполнения процесса?

Если процессов с «жесткими» сроками завершения несколько, как выбрать?

Стратегия требует активного управления, а это дорого.

ТРУДНОСТИ:

На практике редко используется, только для «закрытых» систем.

Слайд 6

2. Планирование по принципу FIFO (First Input First Output) Из очереди

2. Планирование по принципу FIFO (First Input First Output)

Из очереди выбирается тот

процесс, который раньше пришел в систему.
БЕЗ ПЕРЕКЛЮЧЕНИЯ.

Простота реализации.

Длинные процессы блокируют ЦП.

Нельзя использовать в интерактивных системах

ОСОБЕННОСТИ:

Пусть задан поток запросов

1(2)

2(3)

4(3)

3

t

1

2

3

4

5

6

7

1

2

4

3

t

1

2

3

4

5

6

7

8

9

10

Порядок выполнения запросов

treal= tout- tinp

Δ= treal- texe

Слайд 7

3. Планирование по принципу SJF (Shortest Job First ) Из очереди

3. Планирование по принципу SJF (Shortest Job First )

Из очереди выбирается процесс

с наименьшим временем выполнения.
БЕЗ ПЕРЕКЛЮЧЕНИЯ.

Снижает длину очереди.

Как оценить время выполнения?

ОСОБЕННОСТИ:

Пусть задан поток запросов

1(2)

2(3)

4(3)

3

t

1

2

3

4

5

6

7

1

2

4

3

t

1

2

3

4

5

6

7

8

9

10

Порядок выполнения запросов

Слайд 8

4. Планирование по принципу SRTF (Shortest Remaining Time First ) Из

4. Планирование по принципу SRTF (Shortest Remaining Time First )

Из очереди выбирается

процесс с наименьшим временем завершения.
С ПЕРЕКЛЮЧЕНИЕМ.

Минимальное время ожидания.

Как оценить время выполнения?

ОСОБЕННОСТИ:

Пусть задан поток запросов

1(2)

2(3)

4(3)

3

t

1

2

3

4

5

6

7

1

2

4

3

t

1

2

3

4

5

6

7

8

9

10

Порядок выполнения запросов

2

Слайд 9

5. Циклическое планирование (RR) (Round Robin) Каждый квант времени из очереди

5. Циклическое планирование (RR) (Round Robin)

Каждый квант времени из очереди выбирается очередной

процесс. Работавший процесс становится последним в очереди (цикл).
С ПЕРЕКЛЮЧЕНИЕМ.

Для интерактивных систем.

Любит ОЗУ.
Размер кванта?

ОСОБЕННОСТИ:

Пусть задан поток запросов

1(2)

2(3)

4(3)

3

t

1

2

3

4

5

6

7

1

2

3

t

1

2

3

4

5

6

7

8

9

10

Порядок выполнения запросов

4

2

4

2

4

Слайд 10

6. Планирование по принципу HRN (Highest Response ratio Next) Каждый квант

6. Планирование по принципу HRN (Highest Response ratio Next)

Каждый квант времени из

очереди выбирается процесс c наибольшим приоритетом.
С ПЕРЕКЛЮЧЕНИЕМ.

Справедливая стратегия

Размер кванта?

ОСОБЕННОСТИ:

Приоритет процесса – динамический.
ПРИОРИТЕТ=(время ожидания +время обслуживания)/(время обслуживания)