保证了弱有序和无数据竞争(DRF)的系统会提供称为同步的特定指令,提供一种协调不同处理器(相当于硬件线程)的属性。
DRF-SC 系统同步指令
Links to this note
编程语言内存模型
tags: Memory Model,Programming Language,Computer Systems Programming Language Memory Models 编程语言内存模型 编程语言内存模型回答了并行程序可以依靠什么行为以便它们的线程之间可以共享内存的问题。 首先需要理解原子变量(atomic variable)或原子操作(tomic operation),编程语言模型作为程序员和编译器之间的约定规定了它们之间所需要的额外细节。 硬件、Litmus Tests、Happens Before 和 DRF-SC 程序使用DRF-SC 系统同步指令在多个处理器运行的代码之间创建一种“happens before”的关系。 Thread 1 和 Thread 2 执行 S(a) 同步指令。在这个特定执行中,两条 S(a) 指令建立了从 Thread 1 到 Thread 2 的 happens-before 关系,因此 Thread 1 中的 = W(x)= 发生在 Thread 2 中的 R(x) 之前。