分布式系统互斥算法-令牌环算法

分布式系统互斥算法---令牌环算法

在一个分布式系统中,把所有进程逻辑上组成一个环,首先每个进程知道其下一个进程是谁(通常更常用的应该是每个进程要维护一个记录,知道其后的所有其他进程,以便在其直接后继发生崩溃时,能把令牌传递给其后继,更有甚者传递给其后继的后继);

当环初始化时,进程0得到一个令牌(可以理解为一个互斥锁),该令牌沿着环进行传递,当进程获得到令牌后,会首先检查其是否有访问共享资源的需求,如果需要,则进行资源访问,访问完成后向后继传递令牌;如果不需要访问,则直接传递令牌给其后继。如图1所示。为了增强可靠性,我们要求当令牌传递给下一个进程时,要求其往回回复确认信息,如果

没有返回确认信息,则认为此节点崩溃,此时将令牌传递给后继的后继。

分布式系统互斥算法-令牌环算法