共享内存寄存器的原理与实现
1. 共享内存操作基础概念
在共享内存的操作中,有几个基础概念需要明确。如果一个进程 p 调用的操作 o 先于其他操作(可能由不同进程调用),那么操作 o 必须完成,并且其完成事件发生在进程 p 上。
- 顺序与并发操作 :若两个操作中一个先于另一个,我们称这两个操作是顺序的;若两个操作都不先于对方,则称它们是并发的。对寄存器的操作执行会在其读写操作上定义一个偏序关系。若只有一个进程调用操作,根据每个进程对一个寄存器顺序操作的假设,这个顺序是全序的。当没有两个操作并发且所有操作都完成时,如串行执行,顺序也是全序的。
- 读写操作的定义 :当一个读操作返回值 v ,且 v 是某个写操作的输入参数时,我们称该读操作从这个写操作读取值,或者说值 v 是从这个写操作读取的。当一个写操作完成时,我们称该写操作写入了对应的值。
2. (1, N) 规则寄存器
2.1 规格说明
(1, N) 规则寄存器意味着一个特定进程 p 可以对寄存器执行写操作,而任何进程都可以执行读操作。其接口和属性如下表所示:
| 模块 | 详情 |
| ---- | ---- |
| 名称 | (1, N)-RegularRegister,实例 onrr |
| 事件 | Request: ⟨
超级会员免费看
订阅专栏 解锁全文
1072

被折叠的 条评论
为什么被折叠?



