Главная Случайная страница Контакты | Мы поможем в написании вашей работы! | ||
|
Холт показал, что можно смоделировать четыре условия возникновения тупиков, используя направленные графы. Графы имеют два вида узлов: процессы (показанные кружками) и ресурсы (квадратами). Ребро, направленное от узла ресурса к узлу процесса, означает, что ресурс ранее был запрошен процессом, получен и в данный момент используется этим процессом. На рис. 3.1а ресурс R в настоящее время отдан процессу А.
Ребро, направленное от процесса к ресурсу, означает, что процесс в данный момент блокирован и находится в состоянии ожидания доступа к этому ресурсу (рис. 3.1б). Цикл в графе означает наличия взаимоблокировки и показан на рис. 3.1в.
Таким образом, графы ресурсов представляет собой инструмент, позволяющий обнаружить взаимоблокировку в заданной последовательности запросов/возврат ресурсов.
Моделирование состоит в графическом отображении последовательности запросов и возвратов ресурсов с дальнейшей проверкой связей на зацикливание. Если зацикливания нет, то взаимоблокировки нет, в противном случае взаимоблокировка имеет место быть.
Для решения проблемы взаимоблокировки существуют четыре стратегии:
Пренебрежение проблемой в целом (если проигнорировать проблему, возможно, затем она проигнорирует Вас)
Обнаружение и восстановление. Позволяет взаимоблокировке произойти, обнаружить ее и предпринять какие-либо действия.
Динамическое избежание тупиковых ситуаций с помощью аккуратного распределения ресурсов.
Предотвращение с помощью структурного опровержения одного из четырех условий, необходимых для взаимоблокировки.
Дата публикования: 2015-01-26; Прочитано: 1424 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!