Алгоритм Скина — различия между версиями

Материал из Викиконспекты
Перейти к: навигация, поиск
м (переименовал «Алгоритм Скрина» в «Алгоритм Скина»: неправильное название алгоритма)
м
Строка 1: Строка 1:
 
[[Категория: Параллельное программирование]]
 
[[Категория: Параллельное программирование]]
'''Алгоритм Скрина''' полного порядка сообщений. Используются [[Логические часы Лампорта|логические часы Лампорта]].
+
'''Алгоритм Скина''' полного порядка сообщений. Используются [[Логические часы Лампорта|логические часы Лампорта]].
 
# Инициатор отправляет сообщение и время
 
# Инициатор отправляет сообщение и время
 
# При приеме сообщения процесс помечает сообщение как недоставленное и отправляет свое время инициатору
 
# При приеме сообщения процесс помечает сообщение как недоставленное и отправляет свое время инициатору
 
# Когда инициатору вернулись все сообщения, он выбирает максимальное время и снова отправляет сообщение (уже финальную версию)
 
# Когда инициатору вернулись все сообщения, он выбирает максимальное время и снова отправляет сообщение (уже финальную версию)
 
# При приеме финального сообщения оно помечается как доставленное и доставляется получателю, если оно имеет минимальное время в очереди сообщений
 
# При приеме финального сообщения оно помечается как доставленное и доставляется получателю, если оно имеет минимальное время в очереди сообщений

Версия 10:26, 27 июня 2010

Алгоритм Скина полного порядка сообщений. Используются логические часы Лампорта.

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