Если в системе нет ресурса,представленных в единоличное пользование одному процессу, то никогда не произойдет тупиковой ситуации. Следует избегать выделения ресурсов, когда это не является действительно необходимым и важно пытаться обеспечить ситуацию в которой претендовать на ресурс может минимально количество процессов.
Атака условия удержания и ожидания
Программирование процесса таким образом, чтобы они требовали все ресурсы сразу перед началом работы программы.
Недостатки данного способа решения:
1. Не все процессы знаю сколько и каких ресурсов им понадобиться до начала работы.
2. Ресурсы не будут использоваться оптимально
Атака условия отсутствия принудительной выгрузки ресурсов
Не существует нормального способа избежания взаимоблокировки, т.к. принудительное изъятие ресурса у процесса при его работе практически не возможна.
Атака условия циклического ожидания
1. Управление ресурсами как правило гласят что процессу дано право только на один ресурс в конкретный момент времени. Данное правило может быть задействовано не для всех процессов.
2. Общая нумерация всех ресурсов и введения правила в соответствии с которым процесс должен запрашивать несколько устройств согласно последовательности их нумерации. Работает только на сравнительно небольших количествах ресурсов.
Существуй1 следующие методы восстановления:
- принудительный перезапуск системы, характеризующийся
потерей информации о всех процессах, существовавших до перезапуска;
- принудительное завершение процессов, находящихся в тупике;
- принудительное последовательное завершение процессов,
находящееся в тупике, с последующим вызовом алгоритма распознавания после каждого завершения до исчезновения тупика;
перезапуск процессов, находящихся в тупике, с некоторой контрольной точки, т.е. из состояния, предшествовавшего запросу на ресурс;
перераспределение ресурсов с последующим последовательным перезапуском процессов, находящихся в тупике.