Централизованный алгоритм взаимного исключения — различия между версиями

Материал из Викиконспекты
Перейти к: навигация, поиск
(Новая страница: «'''Централизованный алгоритм''' взаимного исключения: # Центральный управляющий узел ведет …»)
 
м (rollbackEdits.php mass rollback)
 
(не показано 6 промежуточных версий 5 участников)
Строка 1: Строка 1:
 +
[[Категория: Параллельное программирование]]
 
'''Централизованный алгоритм''' взаимного исключения:
 
'''Централизованный алгоритм''' взаимного исключения:
# Центральный управляющий узел ведет очередь запросов на вход
+
# Центральный управляющий узел ведет очередь запросов на вход.
# Процесс, желающий войти в критический участок, посылает ему сообщение "запрос" и ждет, пока не получит сообщение "разрешение" (когда подходит его очередь)
+
# Процесс, желающий войти в критический участок, посылает ему сообщение "запрос" и ждет, пока не получит сообщение "разрешение" (когда подходит его очередь).
# Когда процесс выходит из критического участка, то посылает управляющему узлу сообщение "освобождение"
+
# Когда процесс выходит из критического участка, то посылает управляющему узлу сообщение "освобождение".
  
Всего нужно послать 3 сообщения для каждого случая доступа к критическому ресурсу.
+
Всего нужно послать три сообщения для каждого случая доступа к критическому ресурсу. Не масштабируется из-за необходимости иметь выделенного координатора.
 +
 
 +
[[Файл:mutex-distributed-central.png|600px]]

Текущая версия на 19:12, 4 сентября 2022

Централизованный алгоритм взаимного исключения:

  1. Центральный управляющий узел ведет очередь запросов на вход.
  2. Процесс, желающий войти в критический участок, посылает ему сообщение "запрос" и ждет, пока не получит сообщение "разрешение" (когда подходит его очередь).
  3. Когда процесс выходит из критического участка, то посылает управляющему узлу сообщение "освобождение".

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

Mutex-distributed-central.png