Алгоритм для причинно-согласованного порядка

Материал из Викиконспекты
Версия от 09:50, 3 июня 2019; Yeputons (обсуждение | вклад) (Новая страница: «Этот алгоритм берёт систему с асинхронным(?) порядком и начинает гарантировать в ней Ие…»)
(разн.) ← Предыдущая | Текущая версия (разн.) | Следующая → (разн.)
Перейти к: навигация, поиск

Этот алгоритм берёт систему с асинхронным(?) порядком и начинает гарантировать в ней причинно-согласованный порядок.

Псевдокод алгоритма для причинно-согласованного порядка. Вместе с сообщением отправляем матрицу M: M[i, j] — количество сообщений, отправленных процессом i процессу j.

 var
     M:array[l..N, 1..N] of integer initially 0;
 To send a message to [math]P_j[/math]:
     M [i,j] := M[i,j] + 1;
     send M as part of the message;
 To receive a message with matrix W from Pj:
     enabled if W[j,i] = M [j,i] + 1 [math]\land[/math] [math] \forall k \neq j[/math] [math]M[k, i] \geqslant W[k, i][/math]
     M := max(M, W)