Содержание
- 2. Определения Тупик (тупиковая ситуация, dead lock, clinch) – ситуация в системе, когда один или несколько процессов
- 3. Причины возникновения тупиков и бесконечного ожидания Реализация дискриминационной дисциплины планирования процессов (например, SJF или SRT) Отсутствие
- 4. Пример возникновения тупика: взаимоблокировка процессов и ресурсы с эксклюзивным доступом Процесс А Процесс В Ресурс 1
- 5. Пример возникновения тупика: системы со спулингом принтер Область спулинга принтера в ОП (объем – N байт)
- 6. Последствия возникновения тупиков и бесконечного ожидания Зависание одного или более процессов Простой ресурсов системы Неэффективное управление
- 7. Необходимые условия возникновения тупиков Условие взаимоисключения процессов при обращении к ресурсам эксклюзивного доступа: процессы требуют предоставления
- 8. Наличие в системе ресурсов с эксклюзивным доступом (условия 1-3) Р1 Р2 Рn … … Число процессов
- 9. Условие кругового ожидания Р1 Р2 Р3 R1 R2 R3
- 10. Возникновение тупика в системе и необходимые условия Тупик может возникнуть в системе только в том случае,
- 11. Направления изучения тупиковых ситуаций Предотвращение тупиков – создание таких операционных систем, в которых возникновение тупика просто
- 12. Предотвращение тупиков Тупик может возникнуть в системе, если в ней выполняются все четыре необходимых условия Следовательно,
- 13. Методы предотвращения тупиков Нарушение условия взаимоисключения процессов при обращении к ресурсам с эксклюзивным доступом Нарушение условия
- 14. Нарушение условия взаимоисключения процессов при обращении к ресурсам с эксклюзивным доступом Запретить эксклюзивный доступ к ресурсам
- 15. Нарушение условия ожидания Чтобы процессы не ожидали дополнительных ресурсов, необходимо выделить им все ресурсы заранее Не
- 16. Нарушение условия ожидания: недостатки Процессы, которые требуют большого количества ресурсов, могут оказаться в ситуации бесконечного ожидания,
- 17. Нарушение условия ожидания: последствия Полностью устраняется проблема тупиков Не решена проблема бесконечного ожидания Ресурсы используются неэффективно
- 18. Нарушение условия неперераспределимости ресурсов Перед запуском процессу выделяются только те ресурсы, которые ему необходимы Если процессу
- 19. Нарушение условия неперераспределимости ресурсов: недостатки Если процесс был приостановлен и для его возобновления требуется много ресурсов,
- 20. Нарушение условия неперераспределимости ресурсов: последствия Полностью решается проблема тупиков Не решена проблема бесконечного ожидания Ресурсы используются
- 21. Нарушение условия кругового ожидания Если организовать доступ процессов к ресурсам так, чтобы не могли образовываться циклические
- 22. Нарушение условия кругового ожидания: схема Р1 Р2 Р3 R1 R2 R3 Такой запрос на ресурс запрещен
- 23. Нарушение условия кругового ожидания: недостатки и последствия ПО для таких систем должно разрабатываться с учетом ранжирования
- 24. Предотвращения тупиков: общие выводы Полностью решается проблема тупиков В случае нарушения условия кругового ожидания решается также
- 25. Обходы тупиков В системе тупиковые ситуации потенциально возможны Система реализует специальные механизмы, которые позволяют Предсказать возможность
- 26. Алгоритм банкира ОС – «банкир», который владеет ресурсами Процессы – «заемщики», которые берут ресурсы «в кредит»,
- 27. Правила алгоритма банкира Количество ресурсов в системе – конечно Количество процессов в системе – конечно Процессы
- 28. Надежное и ненадежное состояния системы Состояние системы называется надежным, если система располагает таким количеством ресурсов, чтобы
- 29. Общий принцип работы системы Система должна распределять ресурсы так, чтобы следующее ее состояние было надежным Если
- 30. Пример работы алгоритмы банкира в системе с одним типом ресурсов Пусть t = 10 – количество
- 31. Пример работы алгоритмы банкира в системе с одним типом ресурсов Состояние системы будет считаться надежным, если
- 32. Пример надежного состояния
- 33. Пример ненадежного состояния
- 34. Обнаружение тупиков Построение и анализ графовых моделей, отражающих связи «процессы-ресурсы» Использование сканеров процессов (ОС Microsoft Windows)
- 35. Графовые модели в обнаружении тупиков Строится граф, отражающий процессы ресурсы связи, показывающий какие ресурсы уже распределены
- 36. Обозначения в графовой модели
- 37. Пример графа
- 38. Правила редуцирования графа Удаляются все дуги запросов, которые могут быть в данный момент удовлетворены Если у
- 39. Пример редуцируемого графа
- 41. Скачать презентацию