39、共享内存多处理器中的一致性、同步和内存一致性

共享内存多处理器中的一致性、同步和内存一致性

1. 概述

本文聚焦于共享内存多处理器中值的正确且可靠的通信。共享内存多处理器内存系统的相关正确性属性包括一致性、内存一致性模型(简称内存模型)以及同步原语的可靠执行。目标软件是为通用或多用途机器编写的可移植共享内存多线程程序,包括操作系统内核。

从硬件角度看,内存模型是共享内存系统最重要的属性,它是指令集架构(ISA)规范的一部分,管理共享内存多处理器中内存访问指令的合法交织顺序,对系统整体正确性至关重要,为硬件和软件设计者提供了简单接口。

线程间同步与内存模型是不同的问题,但有时由于共享内存提供的通信支持简单有限而需要同步。在多处理器系统中,线程间同步比分时单处理器更关键,且内存模型和同步常相互影响。

本文的目标是培养对多处理器内存属性含义和实际硬件影响的直觉,以指导初始设计和后续设计修订。主要内容包括:
- 背景:共享内存通信模型和硬件组件,以及为何现代共享内存多处理器系统难以执行内存正确性属性。
- 不同级别的一致性:普通内存一致性与存储原子性的区别。
- 内存模型和顺序一致性的介绍:通过存储同步来强制顺序一致性。
- 线程同步和ISA级同步原语。
- 基于硬件效率的宽松内存模型和依赖同步的宽松内存模型:在具有存储原子共享内存和配备存储缓冲区的顺序静态流水线的简单多处理器中实现内存模型。
- 在具有存储原子共享内存和推测性乱序处理器的多处理器中实现内存模型:内存模型的推测性违规。

2. 背景
2.1 共享内存通信模型

共享内存多处理器中值的通信是通过在所有线程共享的内存中执行常规加

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值