首页 . 理学 . 计算机科学技术 . 计算机体系结构 . 分布式处理系统

逻辑时钟

/logical clock/
条目作者胡凯

胡凯

最后更新 2022-01-20
浏览 146
最后更新 2022-01-20
浏览 146
0 意见反馈 条目引用

分布式系统的一种时钟同步特性,主要用于实现分布式系统中各进程之间时间的相对一致性(时钟同步)

英文名称
logical clock
创立时间
1978
实行地区
全球
创立者
Leslie Lamport
所属学科
计算机科学技术

是2013年图灵奖获得者L.兰波特(Leslie Lamport)于1978年阐述的概念。分布式系统中只有相关的进程才需要有时钟同步,同步的主要目的是维持事件的顺序性。除时间的基本特性外,逻辑时钟与标准时钟(物理时钟)之间没有通用意义上的明确关系。

在分布式系统中,每台计算机都有各自的时钟,一般依赖石英晶体的振荡频率产生,称之为物理时钟,但不能保证它们都是以同一频率振荡,从而就会逐渐造成时钟不同步。在同一时刻读出的所有机器的时钟值不相同,称为时钟偏移。尽管时钟同步是可能的,但不是绝对必要的,在一些应用中,如果两个进程不进行交互,它们在时间上也无须同步,因为这不会造成任何问题。重要的不是所有进程在时间上完全一致,而是它们在时间发生顺序上要达成一致。

L.兰波特定义了一个“先发生”关系。它的表达式a→b,读作a在b之前发生。意即,所有进程都认为事件a先发生,而后事件b才发生。事件先发生关系具有传递性,若a→b和b→c为真,则a→c也为真。例如,一个进程构造消息的事件为a,同一进程发送该消息的事件为b,另一个进程接收该消息的事件为c。显然a→b、b→c为真,a→c也为真。

逻辑时钟实际上是一种测量时间的方法,使得对每个事件x都能为它分配一个所有进程都认可的时间值C(x)。C(x)是一个升序整数,称为逻辑时钟。对于所有的a和b,如果a→b,则C(a)<C(b)。逻辑时钟是需要不断较正的,如果a→b且C(b)<C(a),则校正C(b)=C(a)+1,直到C(a)<C(b)。

相关条目

阅读历史

    意见反馈

    提 交

    感谢您的反馈

    我们会尽快处理您的反馈!
    您可以进入个人中心的反馈栏目查看反馈详情。
    谢谢!