Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
54-63_os.docx
Скачиваний:
8
Добавлен:
21.11.2019
Размер:
81.25 Кб
Скачать

54 Сравните различные многоочередные дрр.

Далее рассмотрим более сложные многоочередные ДРР [10].

  1. Неприоритетная многоочередная ДРР (рис.2.8) основана на КЦА:

  • организуется N очередей;

  • все новые запросы поступают в конец очереди 1;

  • первый запрос очереди i (1≤i≤N) поступает на обслуживание, если очереди 1, 2,…, (i-1) – пусты;

  • на обслуживание выделяется квант времени tk;

  • не до конца обслуженный запрос возвращается в конец очереди (i+1), что похоже на неявное снижение приоритета длинного запроса.

Рис.2.8. Схема неприоритетной многоочередной ДРР

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

  1. Приоритетная многоочередная ДРР (рис.2.9) также основана КЦА и является модификацией предыдущей дисциплины. Она отличается от предыдущей дисциплины тем, что каждый новый запрос имеет приоритет p=1÷N и попадает в очередь с номером j=N-p+1.

Рис.2.9. Схема приоритетной многоочередной ДРР

По отношению к новым запросам с приоритетами возможны две следующие стратегии поведения системы.

  1. Обслуживание с абсолютным приоритетом. Если во время обслуживания запроса из очереди i поступает запрос в очередь j < i, то обслуживание i-го уровня прерывается, система начинает обслуживать более приоритетный запрос в течение tk. После окончания его обслуживания продолжается обслуживание прерванного запроса i-го уровня. Особенности: дискриминация низкоприоритетных запросов, время ожидания высокоприоритетных уменьшается, усложняется логика работы системы и ее реализация, появляется проблема прерывания обслуживания, и понадобятся дополнительные средства и ресурсы для ее реализации. Дисциплина подходит для систем управления объектами, в которых важна быстрая реакция на событие. Но при таком подходе возникают и сложные организационные проблемы:

  • найти удачное правило продолжения обслуживания прерванного запроса:

  • когда ему вновь выделять ресурс (если сразу – новые затраты);

  • учитывать, что ресурс уже использовался до прерывания, или нет;

  • выбрать, в какую очередь помещать прерванный запрос (i+1, i, i-1);

  • что делать, если во время прерывания обслуживания появится еще запрос уровня q < I (проблема маскирования)?

  1. Обслуживание с относительным приоритетом. Новый запрос не вызывает прерывания обслуживания запроса, даже если обслуживается менее приоритетный запрос. Только после окончания обслуживания текущего (менее приоритетного) запроса начнется обслуживание нового (более приоритетного). Особенности: минимизируются затраты на переключения процессора, но допускается его монополизация. Дисциплина не подходит для систем РДВ и РВ.

  1. Какие факторы в реальных условиях осложняют решение проблемы распределения ресурсов?

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

  • взаимосвязи процессов;

  • стратегий распределения других ресурсов;

  • тупиковых ситуаций, когда возникает циклический конфликт занятости ресурсов [1, 2]. Пример подобной ситуации приведен на рис.2.10, где Процессу 1 требуются Ресурсы 1 и 2, но выделяется только Ресурс 1, так как Ресурс 2 ранее уже был выделен Процессу 2, которому требовался еще Ресурс 1. Но Ресурс 1 также занят и не может быть выделен Процессу 2;

  • прав процесса использовать разделяемый ресурс;

  • специфики самого ресурса.

Процесс 2

Процесс 1

Ресурс 2

Ресурс 1

Рис.2.10. Пример тупиковой ситуации

Кроме рассмотренных ДРР, существуют и другие, ориентированные на специфику самого распределяемого ресурса. Например, при распределении ОП используется:

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