Главная Случайная страница Контакты | Мы поможем в написании вашей работы! | ||
|
Предположим, что у системы в наличии n устройств, например лент. Суть алгоритма состоит в следующем.
ОС принимает запрос от пользовательского процесса, если его максимальная потребность не превышает n.
Пользователь гарантирует, что если ОС в состоянии удовлетворить его запрос, то все устройства будут возвращены системе в течение конечного времени.
Текущее состояние системы называется надежным, если ОС может обеспечить всем процессам их выполнение в течение конечного времени.
В соответствии с алгоритмом банкира выделение устройств возможно, только если состояние системы остается надежным.
Рассмотрим пример надежного состояния для системы с тремя пользователями и 12-ю устройствами, где 10 устройств задействовано, а 2 имеется в наличии. Пусть текущая ситуация такова:
Текущее количество | Максимальная потребность | |
Первый пользователь | ||
Второй пользователь | ||
Третий пользователь |
Данное состояние надежно. Последующие действия системы могут быть таковы. Вначале удовлетворить запросы второго пользователя, затем дождаться, когда он выполнит свою работу и освободит свои 6 устройств. Затем можно обслужить остальных пользователей. То есть, система удовлетворяет только те запросы, которые оставляют ее в надежном состоянии и отклоняет остальные.
Термин ненадежное состояние не предполагает, что обязательно возникнут тупики. Он лишь говорит о том, что в случае неблагоприятной последовательности событий система может зайти в тупик.
Дата публикования: 2015-01-26; Прочитано: 897 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!