分布式系统中的顺序一致性

use*_*r23 10 consistency distributed-system sequential

我正在学习分布式系统中的顺序一致性,但是无法理解所解释的术语。如果有人可以就以下(a)和(c)为何顺序一致而(b)不一致的外行人的术语有所了解,我将不胜感激。谢谢。在此处输入图片说明

hen*_*xin 6

一个e操作的执行是顺序一致的,当且仅当它可以被置换为s这些操作的序列,使得:

  • 该序列s尊重每个进程的程序顺序。也就是说,对于同一个进程的任意两个操作o1o2如果o1o2in之前e,那么o1应该放在o2in之前s

  • 在序列中s,每个读操作都返回对同一变量进行的最后一次写操作的值。


对于(a),s可以吗?

W(x)b [P2], R(x)b [P3], R(x)b [P4], W(x)a [P1], R(x)a [P3], R(x)a [P4]

对于(c),s可以是:

W(x)a [P1], R(x)a [P2], R(x)a [P3], R(x)a [P4], W(x)b [P3], R(x)b [P1], R(x)b [P2], R(x)b [P4]

但是,对于(b):

  • R(x)b, R(x)a来自P3requireW(x)b之前的操作W(x)a

  • R(x)a, R(x)b来自P4requireW(x)a之前的操作W(x)b

构建这样一个序列是不可能的s