分布式操作系统中的共享存储器PPT讲稿.ppt
《分布式操作系统中的共享存储器PPT讲稿.ppt》由会员分享,可在线阅读,更多相关《分布式操作系统中的共享存储器PPT讲稿.ppt(25页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、分布式操作系分布式操作系统中的共享存中的共享存储器器第1页,共25页,编辑于2022年,星期五多处理机系统的概念多处理机的分类 集中式共享存储器结构 分布式共享存储器结构2022/9/242022/9/242 2第2页,共25页,编辑于2022年,星期五 使用多个处理机组成一个并行计算机(parallel computer)是提高系统性能的有效方法。一个并行计算机是多个处理部件(processing element)的集合,所有的处理部件通过相互通信,协同解决复杂的问题。处理部件之间由互联网络连接,这种并行的优点是可以利用现有的高性能处理机,加上快速互联网络构成高性能并行系统。多个处理机及存储
2、器模块构成的并行处理机被称为多处理机系统(multiprocessor system),简称多处理机。处理机之间的通信通过共享存储器(shared memory)进行。2022/9/242022/9/243 3第3页,共25页,编辑于2022年,星期五多处理机系统概念多处理机系统概念广义上说,使用多台计算机协同工作来完成所要求的任务的计算机系统都是多处理机系统。传统的狭义多处理机系统的作用是利用系统内的多个CPU来并行执行用户的几个程序,以提高系统的吞吐量或用来进行冗余操作以提高系统的可靠性。多个处理机(器)在物理位置上处于同一机壳中,有一个单一的系统物理地址空间和每一个处理机均可访问系统内的
3、所有存储器是它的特点。2022/9/242022/9/244 4第4页,共25页,编辑于2022年,星期五多处理机的分类多处理机的分类 一个多处理机有一个可以被所有处理机访问的存储系统(实现享)。存储器系统由一个或多个存储器模块组成,所有的存储器模块使用一个统一编址的地址空间。处理机可以用不同的地址访问不同的存储器模块。根据系统中处理器个数的多少,可把现有的MIMD(多指令多数据流,实现作业,任务,指令等各级全面并行)计算机分为两类,每一类代表了一种存储器的结构个互联策略。由于多处理机的规模大小这个概念的含义是随时间的变化的,所以我们用存储结构来区分这些机器。第一类:集中式共享存储器结构 第二
4、类:分布式共享存储器结构2022/9/242022/9/245 5第5页,共25页,编辑于2022年,星期五集中式共享存储器集中式共享存储器(Centralized Shared-memory Architecture)这类多处理机在目前至多有几十个处理器。由于处理器数目较小,可通过大容量的Cache和总线互连使各处理器共享一个单独的集中式存储器。因为只有一个单独的主存,而且从各处理器访问该存储器的时间是相同的,所以这类机器有时被称为UMA(Uniform Memory Access)机器。这类集中式共享存储器结构是目前最流行的结构。图1为此类机器结构的示意图。图中多个处理器-Cache子系统
5、共享同一个物理存储器,其连接一般采用一条或多条总线。2022/9/242022/9/246 6第6页,共25页,编辑于2022年,星期五图1 基于总线带缓存的多处理器总线2022/9/242022/9/247 7第7页,共25页,编辑于2022年,星期五这种体系结构支持对共享数据和私有数据的Cache缓存。私有数据供一个单独的处理器使用,而共享数据供多个处理器使用。共享数据主要是用来供处理器之间通过读写它们进行通信。私有数据缓冲在Cache中降低了平均访存时间和对存储器带宽的要求,使程序的行为类似于单机。共享数据可能会在多个Cache中被复制,这样做除了可降低访存时间和对存储器带宽的要求外,还
6、可减少多个处理器同时读共享数据所产生的冲突。但共享数据进入Cache也产生了一个新的问题,即Cache的一致性问题。2022/9/242022/9/248 8第8页,共25页,编辑于2022年,星期五多处理机的一致性(多处理机的一致性(Coherence)对于在多处理机上的数据共享,不同处理器的Cache都保存有对应存储器单元的内容,因而在操作中就可能产生数据的不一致。表1通过两个处理器Cache对应同一存储器单元产生出不同的值的例子说明了这个问题,这通常称为Cache一致性问题。2022/9/242022/9/249 9第9页,共25页,编辑于2022年,星期五由两个处理器由两个处理器(A和
7、和B)读写引起的读写引起的Cache一致性问题一致性问题时间事件CPU A Cache 内容CPU B Cache 内容X单元存储器内容011 CPU A 读 X112 CPU B 读 X113 CPU A 将0存入X0100时间:X单元数据为 11时间:CPU A 将X中数据1读入Cache2时间:CPU B 将X中数据1读入Cache3时间:CPU A将0写入X中。此时Cache A与X中数据一致为0,与Cache B 不一致2022/9/242022/9/241010第10页,共25页,编辑于2022年,星期五存储器一致性满足条件存储器一致性满足条件 若一个存储器满足以下三点,则称该存储
8、器是一致的。(1)处理器P对X进行一次写之后又对X进行读,读和写之间没有其它处理器对X进行写,则读的返回值总是写进的值。(2)一个处理器对X进行写之后,另一处理器对X进行读,读和写之间无其它写,则读X的返回值应为写进的值。(3)对同一单元的写是顺序化的,即任意两个处理器对同一单元的两次写,从所有处理器看来顺序都应是相同的。例如,对同一地址先写1,再写2,任何处理器均不会先读到2,然后又读到1。2022/9/242022/9/241111第11页,共25页,编辑于2022年,星期五注释注释 第一条属性保持了程序的顺序,即使在单机中我们也要求如此。第二条属性给出了存储器一致性的概念。如果一个处理器
9、不断读取旧的数据,则可以肯定认为这个存储器是不一致的。第三条属性要求写操作的顺序化要求更严格。处理器P1对X单元进行一次写,接着处理器P2对X也进行一次写,如果不保证写操作顺序化,就可能出现这种情况:某个处理器先看到P2写的值而后看到P1写的值。解决这个问题最简单的方法就是写操作顺序化,使同一地址所有写的顺序对任何处理器看来是相同的。这种属性称为写顺序化。2022/9/242022/9/241212第12页,共25页,编辑于2022年,星期五实现一致性的基本方案实现一致性的基本方案 在一致的多处理机中,Cache提供了共享数据的迁移和复制(Migration and Replication)功
10、能。共享数据的迁移是把远程的共享数据项拷贝放在本处理器局部的Cache中使用,从而降低了对远程共享数据的访问延迟。共享数据的复制是把多个处理器需要同时读取的共享数据项的拷贝放在各自局部Cache中使用,复制不仅降低了访存的延迟,也减少了访问共享数据所产生的冲突。一般情况下小规模多处理机不是采用软件而是采用硬件技术实现Cache一致性。2022/9/242022/9/241313第13页,共25页,编辑于2022年,星期五 对多个处理器维护一致性的协议称为Cache一致性协议(Cache-coherent protocol)。实现Cache一致性协议的关键是跟踪共享数据块的状态。目前有两类协议,
11、它们采用了不同的共享数据状态跟踪技术:(1)目录(Directory)物理存储器中共享数据块的状态及相关信息均被保存在一个称为目录的地方。(2)监听(Snooping)每个Cache除了包含物理存储器中块的数据拷贝之外,也保存着各个块的共享状态信息。Cache通常连在共享存储器的总线上,各个Cache控制器通过监听总线来判断它们是否有总线上请求的数据块。在使用多个处理器,每个Cache都与单个共享存储器相连组成的多处理机中,一般都采用监听协议,因为这种协议可利用已有的物理连接(总线到存储器)来修改Cache中的状态信息。可用以下两种方法(协议)来维持上面所讲的一致性要求。2022/9/2420
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 分布式 操作系统 中的 共享 存储器 PPT 讲稿
限制150内