Студопедия.Орг Главная | Случайная страница | Контакты | Мы поможем в написании вашей работы!  
 

Программное решение задачи взаимного исключения



Задача: создать механизм взаимоисключений для следующих ограничений:

- на машине нет специальных команд взаимоисключение;

- скорости ассинхронных процессов заранее неизвестны;

- процессы, находящиеся вне критических участков, не должны мешать другим процессам входить в их собственные критические участки;

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

Алгоритм Деккера (первый вариант).

Преимущества метода: просто реализуется взаимоисключение

Недостатки метода: сначала должен реализоваться процесс 1

- возможно только поочередное вхождение процессов в критические области

- если один процесс обращается в критическую область больше, чем другой, то это невозможно

Алгоритм Деккера (второй вариант)

Преимущества метода: не надо процессам чередоваться.

Недостатки метода: после условия и перед присвоением значения перменной PR?WNYTRI возможен вход в критическую область обоих процессов.

Алгоритм Деккера (третий вариант, усовершенствование второго).

Преимущества метода: оба процесса одновременно не могут войти в критическую область.

Недостатки метода: возможен тупик (бесконечное ожидание), если оба процесса установят переменные одновременно.





Дата публикования: 2015-02-03; Прочитано: 267 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!



studopedia.org - Студопедия.Орг - 2014-2024 год. Студопедия не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования (0.007 с)...