读写修改共享变量下的互斥算法研究
1. 引言
在并发系统中,互斥问题是一个核心问题,旨在确保同一时间只有一个进程能够访问临界区域。读写修改(Read-Modify-Write)共享变量模型为解决互斥问题提供了强大的工具。在这个模型中,进程能够在一个瞬间步骤中访问共享变量,并根据变量值和进程状态确定新的变量值和进程状态。虽然该模型看似强大,但仍存在一些挑战和需要研究的问题。
2. 基本互斥问题
为了理解读写修改模型与读写模型的差异,我们先来看一个简单的单变量算法——TrivialME 算法。
- TrivialME 算法
- 共享变量 : x ∈ {0, 1} ,初始值为 0。
- 进程动作 :
- 输入 : tryi 和 exiti 。
- 输出 : criti 和 remi 。
- 内部 : testi 和 reset~ 。
- 进程状态 : pc ∈ {rem, test, leave-try, crit, reset, leave-exit} ,初始值为 rem 。
互斥算法中共享变量优化研究
超级会员免费看
订阅专栏 解锁全文
30

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



