字数
340 字
阅读时间
2 分钟
要搞懂系统级别的并发安全,我们首先要知道系统层面上并发安全问题是怎么来的 并发安全主要分为三个方面
- 可见性
- 有序性
- 原子性 接下来我讲从各个层面上对其进行分析。
首先我们需要明白 cpu架构 在目前的cpu设计中,为了能够加速访问数据的效率,专家设置了多级缓存架构,目前最常见的是cpu三级缓存架构,如图:
首先是L3 缓存,这是cpu与内存打交道的第一层缓存,通常容量大小有10~80mb,这部分缓存是cpu核心间共享的 然后是L2 缓存,这部分是cpu物理核心独占的,但是因为目前的超线程技术,cpu逻辑核心依旧存在缓存共享这个问题 最后是L1缓存,这部分是cpu 逻辑核心独占的,不存在缓存被一起操作的情况
为了方便大家理解这里我们先屏蔽掉三级缓存结构、讲cpu缓存视为一级,至于三级缓存如何保证一致性的我们回头再看。