Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
СПО 2.docx
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
98 Кб
Скачать
☆

11. Тупиковые ситуации.

Тупик – это ситуация, в которой находится процесс, ожидающий событие, которое никогда не произойдет(deadlock).

Тупики возникают вследствие :

  1. Ошибок программирования (отсутствия семафора).

  2. Занятости ресурсов, которые необходимы процессам. Ресурсы бывают разделяемыми и выделяемыми(монопольного владения). Тупики могут возникнуть с одними и с другими, но обычно с ресурсами монопольного владения.

Условия возникновения тупиков:

  1. Условие взаимоисключения, одновременно использовать ресурс может только один процесс.

  2. Условие ожидания ресурсов. Процессы удерживают ресурсы выделенные им и могут запрашивать другие ресурсы.

  3. Условие неперераспределяемости. Ресурс не может быть отобран у процесса, а только освобожден самим процессом.

  4. Условие кругового ожидания. Существует кольцевая цепь процессов, в которой каждый ресурс необходим одному процессу, но принадлежит другому.

Для возникновения тупика необходимо и достаточно выполнение всех 4-х условий.

12. Методы борьбы с тупиками: Игнорирование проблемы тупиков.

Тупик – это ситуация, в которой находится процесс, ожидающий событие, которое никогда не произойдет(deadlock).

Тупики возникают вследствие :

  1. Ошибок программирования (отсутствия семафора).

  2. Занятости ресурсов, которые необходимы процессам. Ресурсы бывают разделяемыми и выделяемыми(монопольного владения). Тупики могут возникнуть с одними и с другими, но обычно с ресурсами монопольного владения.

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

13. Методы борьбы с тупиками: Предотвращение тупиков.

Тупик – это ситуация, в которой находится процесс, ожидающий событие, которое никогда не произойдет(deadlock).

Тупики возникают вследствие :

  1. Ошибок программирования (отсутствия семафора).

  2. Занятости ресурсов, которые необходимы процессам. Ресурсы бывают разделяемыми и выделяемыми(монопольного владения). Тупики могут возникнуть с одними и с другими, но обычно с ресурсами монопольного владения.

Предотвращение тупиков производится путем тщательного распределения ресурсов. Безопасное состояние – такое состояние системы, при котором имеется хотя бы одна последовательность событий не приводящая к тупику.

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

14. Методы борьбы с тупиками: Алгоритм Банкира.

Тупик – это ситуация, в которой находится процесс, ожидающий событие, которое никогда не произойдет(deadlock).

Тупики возникают вследствие :

  1. Ошибок программирования (отсутствия семафора).

  2. Занятости ресурсов, которые необходимы процессам. Ресурсы бывают разделяемыми и выделяемыми(монопольного владения). Тупики могут возникнуть с одними и с другими, но обычно с ресурсами монопольного владения.

В системе есть n ресурсов, ОС принимает запросы на ресурсы от процесса только если его потребность не превышает n. Процесс получает требуемые ресурсы, только если гарантирует возврат устройств в течении конечного времени.

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