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

В проблеме, упомянутой на рисунке, по запросу p3 (0,2,0) потребность в p3 становится отрицательной (это означает, что у нее есть дополнительный ресурс). Согласно другим общим правилам запрос может быть удовлетворен, поскольку существует безопасная последовательность: P1 -> P3 -> P2.

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

1 ответ

Решение

Нет, процессу нельзя разрешать запрашивать больше, чем заявленная максимальная потребность.

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

PS Этот ответ дает Дхананджай Дхамдхере https://www.cse.iitb.ac.in/~dmd/

Спасибо, сэр, за разрешение моего запроса.

Другие вопросы по тегам