Тупики. Необходимые условия возникновения тупиков.

 

 

1.1 Тупики.

Тупики и близкая к ним проблема бесконечного откладывания - важные факторы, которые должны учитывать разработчики ОС.

Tупик (deadlock) - это такая ситуация в мультипрограммной системе, когда процесс ожидает некоторого события, которое никогда не произойдет. Системная тупиковая ситуация, или “зависание” системы - это ситуация, когда один или более процессов оказываются в состоянии тупика.

Рассмотрим простой пример тупика при распределении ресурсов.

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

На графе распределения ресурсов показана тупиковая ситуация, в которой каждый процесс удерживает ресурс, запрашиваемый другим процессом, причем ни один из процессов не хочет освободить принадлежащий ему ресурс.

 

Ресурс 1 выделен Процесс_Y запрашивает

процессу_Х Ресурс 1 ресурс 1

       
 
 
   


Процесс_Х Процесс_Y

       
   
 
 


Процесс_Х запрашивает Ресурс 2 выделен

ресурс 2 Ресурс 2 процессу_ Y

 

Рисунок 1 - Граф распределения ресурсов

 

Такое состояние кругового ожидания характерно для систем в тупиковом состоянии.

Системы спулинга (ввода-вывода с буферизацией) часто оказываются подвержены тупикам (самостоятельно привести примеры таких ситуаций).

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

 








Дата добавления: 2017-11-04; просмотров: 749;


Поиск по сайту:

При помощи поиска вы сможете найти нужную вам информацию.

Поделитесь с друзьями:

Если вам перенёс пользу информационный материал, или помог в учебе – поделитесь этим сайтом с друзьями и знакомыми.
helpiks.org - Хелпикс.Орг - 2014-2024 год. Материал сайта представляется для ознакомительного и учебного использования. | Поддержка
Генерация страницы за: 0.003 сек.