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

Недостатки алгоритма банкира

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

  2. Требуется, чтобы число работающих пользователей оставалось постоянным, что нереально.

  3. Требуется, чтобы распределитель ресурсов гарантированно должен удовлетворить все запросы за некоторый конечный период времени (нужно больше гарантий).

  4. Требуется, чтобы задания и процессы гарантированно должны возвращать ресурсы в течении конечного времени.

  5. Алгоритм банкира требует, чтобы пользователи заранее указывали свои максимальные потребности в ресурсах.

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

Обнаружение тупиков

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

Графы распределения ресурсов

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

- процессы

- классы идентичных ресурсов

- идентичные ресурсы каждого класса

Рис. 14.

На рисунках

а) Процесс Р запрашивает ресурс типа R1. Стрелка только до большого кружка показывает, что в текущий момент запрос от процесса находится в состоянии рассмотрения.

б) P2 выдается только один из идентичных ресурсов.

в) Ситуация приближена к тупику, т.к. Р3 требует выданный Р4 ресурс.

г) Представлен пример кругового ожидания.

Графы запросов и распределения ресурсов меняются по мере того, как процессы запрашивают ресурсы, получают их, а затем возвращают их ОС.

Редукция графов распределения ресурсов

Один из способов обнаружения тупиков – приведение (редукция) графа. Это позволяет определить процессы, которые могут завершиться и процессы, которые будут оставаться в тупиковой ситуации. Если запросы ресурсов для некоторого процесса могут быть удовлетворены, то граф можно редуцировать на этот процесс. Такая редукция эквивалентна изображению графа в том виде, который он будет иметь, если процесс завершится и возвратит ресурсы системе. Редукция графа на конкретный процесс изображается исключением стрелок, т.е. текущего запроса на выделение ресурса.

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

P8

P9

P7

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