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

13. Условие «ожидания дополнительных ресурсов » и его разрешение.

Нарушение условия ожидания дополнительных ресурсов.

Первый стратегический принцип требует, что бы процесс сразу запрашивал все необходимые ресурсы и система должна предоставлять сразу всё необходимое либо ничего. Если такой набор ресурсов имеется у системы, то процесс сразу начинает работу, в противном случае процесс находится в состоянии ожидания. В течение ожидания процесс не должен удерживать какие-либо ресурсы. Благодаря такой стратегии предотвращается возникновение условия ожидания дополнительных ресурсов и тупиковые ситуации не возможны. Подобный подход может привести к серьёзному снижению эффективности использования ресурсов. Для того что бы улучшить ситуацию с использованием ресурсов разработчики предлагают метод, который заключается в том чтобы разделить программу на несколько программных шагов, выполняемых относительно независимо друг от друга. Благодаря этому можно выделять ресурсы для каждого шага, а не процесса. Это позволяет уменьшить непроизводительное использование ресурсов, но связано с увеличением расходов на этапе проектирования прикладных программ и на этапе их выполнения. Считается. что постольку ресурсы накапливаются для конкретного пользователя, этот пользователь должен платить не только за работу процесса, но и за время ожидания ресурса. С другой стороны это приводит к нарушению принципа «предсказуемости платы за ресурсы». Если пользователь попытается выполнить свою работу в период пиковой загрузки системы, то ему придется платить больше, чем когда система свободна.

Примечание (первый принцип Хавендера): Каждый процесс должен запрашивать все требуемые ресурсы сразу и не может начать выполняться до полного предоставления ему ресурсов.

14. Условие неперераспределяемости ресурсов и его разрешение.

Нарушение условия неперераспределяемости.

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

Примечание (второй принцип Хавендера): Если процесс, удерживающий определённые ресурсы получает отказ в удовлетворении запроса на дополнительные ресурсы, то этот процесс должен освободить свои первоначальные ресурсы и снова запросить их вместе с дополнительными.

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