18、共享内存寄存器:规则与原子性解析

共享内存寄存器:规则与原子性解析

在分布式系统中,共享内存的操作规则和实现算法是至关重要的。本文将深入探讨共享内存中 (1, N) 规则寄存器和 (1, N) 原子寄存器的相关内容,包括操作顺序的定义、寄存器的规范以及具体的实现算法。

1. 操作顺序的基本概念

在共享内存的操作中,操作顺序是一个基础且关键的概念。如果一个进程 p 调用的操作 o 先于另一个操作(可能由不同进程调用),那么操作 o 必须完成,并且其完成事件发生在进程 p 上。
- 顺序操作 :若两个操作中一个先于另一个,则称这两个操作是顺序的。
- 并发操作 :若两个操作都不先于对方,则称它们是并发的。

寄存器上操作的执行定义了其读写操作的偏序关系。如果只有一个进程调用操作,根据每个进程在一个寄存器上顺序操作的假设,顺序是全序的。当没有两个操作并发且所有操作都完成时,如串行执行,顺序也是全序的。

当一个读操作返回值 v,且 v 是某个写操作的输入参数时,称该读操作从该写操作读取值 v。当一个写操作完成时,称该写操作写入了值。需要注意的是,每个值只被写入一次,因此写操作是唯一的。

2. (1, N) 规则寄存器

(1, N) 规则寄存器意味着一个特定进程 p 可以对寄存器执行写操作,任何进程都可以执行读操作。下面详细介绍其规范和实现算法。

2.1 规范

(1, N) 规则寄存器抽象 (ONRR) 的接口和属性如下:
| 事件 | 描述 |
| ---- | ---- |
| ⟨onrr,

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值