操作系统(第三版)+刘振鹏 第8章 网络与分布式处理

上传人:E**** 文档编号:89466385 上传时间:2019-05-25 格式:PPT 页数:32 大小:441KB
返回 下载 相关 举报
操作系统(第三版)+刘振鹏 第8章 网络与分布式处理_第1页
第1页 / 共32页
操作系统(第三版)+刘振鹏 第8章 网络与分布式处理_第2页
第2页 / 共32页
操作系统(第三版)+刘振鹏 第8章 网络与分布式处理_第3页
第3页 / 共32页
操作系统(第三版)+刘振鹏 第8章 网络与分布式处理_第4页
第4页 / 共32页
操作系统(第三版)+刘振鹏 第8章 网络与分布式处理_第5页
第5页 / 共32页
点击查看更多>>
资源描述

《操作系统(第三版)+刘振鹏 第8章 网络与分布式处理》由会员分享,可在线阅读,更多相关《操作系统(第三版)+刘振鹏 第8章 网络与分布式处理(32页珍藏版)》请在金锄头文库上搜索。

1、操作系统(第三版),第 8 章 网络 与分布式处理,第8章 网络与分布式处理,8-1 分布式系统概述 8-2 网络服务器 8-3 分布式进程管理 8-4 进程迁移 8-5 分布式进程通信 8-6 分布式进程同步与互斥 8-7 分布式进程死锁问题,8-1-1 分布式系统的概念 分布式能力包括以下几个方面 通信结构 、网络操作系统 、分布式操作系统 8-1-2 通信结构 具有结构的一组模块构成了通信结构 一个简单的通信结构 通常,通信涉及三个方面:应用、计算机和网络 。因此,一个通信任务组织成相对独立的三层:网络存取层、传输层和应用层:,8-1 分布式系统概述,网络存取层 网络存取层负责的是计算机

2、与其连接网络之间的数据交换 传输层 传输层为所有应用提供了可靠的传输机制 应用层 应用层包含了支持各用户应用所需的逻辑 网络上的每个计算机必须有一个惟一的网络地址,以便网络将数据发送给正确的计算机。 协议是一组规则或约定,8-1 分布式系统概述,8-1-3 开放式系统互连通信结构 开放式系统互连OSI七层模型 物理层 物理层为启动、维护和释放数据链路实体之间二进制位而进行的物理连接提供机械的、电气的、功能的和规程的特性,这种物理连接允许进行全双工或半双工的二进制位流传输 数据链路层 将数据按规定的格式(帧)组织起来,进行传输,保证数据传输无差错,按顺序到达目的地,8-1 分布式系统概述,网络层

3、 网络层提供了计算机之间通过某类通信网的信息传输 、死锁和拥挤的控制、网际互联的服务 传输层 传输层的功能是在通信用户之间提供点到点的可靠通信服务 会话层 会话层的主要任务是提供一种有效方法,以便组织并协调两个表示实体进程之间的对话,并管理它们之间的数据交换,8-1 分布式系统概述,表示层 表示层的目的是对应用层送来的命令和数据内容加以解释说明,并对各种语法赋以应用的含义,以便使从应用层送入的各种信息具有明确的表示意义 应用层 应用层为应用程序提供存取OSI环境的手段,8-1 分布式系统概述,8-2-1 服务器的结构 服务器与网络上的其它工作站样,它有一个网络接口模块,该模块包括了与局域网交互

4、所需的硬件和软件;用户工作站也包括了一个网络接口。此外它还包含了与服务器通信的一些网络逻辑 这种结构的服务器功能强,而且灵活,其功能表现在它可用于控制各种类型的资源 8-2-2 磁盘和文件服务器 文件服务器 提供的服务:对文件进行几种存储和管理、自动备份和恢复、用户流动性 、与其它文件服务器进行连接,8-2 网络服务器,磁盘服务器 许多文件服务器只不过提供了一个中心磁盘设施,作为个人计算机用户局部存储器的扩充,这样的系统有时叫磁盘服务器 8-2-3 文件高速缓冲存储器的一致性问题 问题的产生 因为使用文件高速缓冲存储器保留最近存取的文件记录,减少对远程服务器必须进行的存取次数,致使有时产生文件

5、高速缓冲存储器的一致性问题,8-2 网络服务器,解决办法 最简单方法是对文件采用加锁技术,以防止多个客户机同时存取个文件 更有效的方法是允许任意多的进程同时打开一个文件读并创建各自的客户机高速缓存。但当有一个对服务器的请求是打开文件的写请求,而其它进程打开文件是读存取对,文件服务器采取两个活动。首先,它通知写进程,它可以保持一个高速缓存,但当它修改完时应立即将所有修改块写回到服务器。至多允许有个这样的客户机。其次,服务器通知所有读进程正在打开的文件不再允许高速缓存,8-2 网络服务器,8-2-4 打印机服务器 打印机服务器可以处理许多用户工作站的打印请求。这不仅可以节省打印费用,而且使得打印更

6、加容易和打印速度更快 8-2-5 调制解调器服务器 当用户向服务器请求存取调制解调器并提供一个电话号码后,服务器启动调制解调器,拨号、并报告结果。如果呼叫成功,向用户提供一个连接。一旦连接成功,用户通过这个连接就可以发送或接收数据,就好像用户正在直接使用调制解调器一样,8-2 网络服务器,8-3-1 分布式进程的状态及其转换 在分布式环境下,进程的状态有 运行态 等待态 挂起态 就绪态 分布式进程的状态转换也是在原语的控制下实现的,操作原语是调度程序的重要组成部分。应强调的是:分布式系统是以任务级并行为特征的。,8-3 分布式进程管理,8-3-2 处理机管理 处理机的状态及其转换 空闲态 等待

7、态 运行态,8-3 分布式进程管理,图8-8 处理机状态,处理机通信 一般有“点点”方式和“广播”方式两种 处理机的分配与调度 处理机的分配和调度一般是通过处理机间的通信来实现的。,进程迁移 定义 进程迁移是指,为了使进程在另一个机器上执行,源机器向目标机传送足够数量的进程的状态信息 在分布式系统中,希望进程迁移的理由 负载均衡、通信性能的改善、可用性、利用专用的能力 8-4-1 进程迁移机制 启动迁移 由谁启动迁移将依赖于迁移设施要实现的目标 如果目标是负载平衡,启动迁移的是操作系统中监督系统负载的某个模块 如果目标是获得某个特定的资源,那么,当进程需要时,就可以迁移,8-4 进程迁移,需要

8、迁移哪些信息 当一个进程被迁移时,需要撤消源系统上的进程,并在目标系统上创建它。这是一个进程的移动,而不是进程映像的复制 迁移的两种策略:迁移进程的整个地址空间;仅迁移进程在主存的那部分地址空间 对尚未完成的信息和信号的考虑 通过提供个机制,临时存储尚未完成的信息和信号,待进程迁移到目标机后再将它们转移到目标机去,以保证这些信息相信号的最终完成 8-4-2 迁移处理 在有些情况下,进程迁移由一个实体进行决策,8-4 进程迁移,8-5-1 信息传送机制 分布式信息传送的最普通的模型:客户机/服务器模型 采用这种最简单的形式时,信息传送仅需要两个功能:发送和接收 8-5-2 远程过程调用 概念 远

9、程过程调用是对信息传送基本模型的修改,允许不同机器上的程序使用简单的过程调用和返回方式进行交互对话 远程过程调用的一般结构 命令格式 :CALL P(x,y) P是过程名字,x为传送的变量,y是返回值参数,8-5 分布式进程通信,远程过程调用中涉及的几个设计问题 参数传递问题 参数表示 客户机与服务器的结合 8-5-3 确定分布式系统的全局状态 全局状态和分布式瞬态 在紧藕合系统中所有的并发问题,如互斥、死锁和饿死等,在分布式系统中也会遇到 由于网络传输的延迟,分布式系统的性质带来的时间滞后使得所有与并发有关的问题复杂化,8-5 分布式进程通信,所谓全局状态是一致的,是指如果接收信息的进程已记

10、录它接收到了信息的状态,那么,在发送信息的进程状态中应记录它发送了那个信息 所谓分布式瞬态是指每个进程有一组状态的收集 分布式瞬态算法 所谓分布式瞬态算法是指记录一致性全局状态在分布式系统中采用的方法。该算法假定,信息应按照其发送的顺序传送,并且在传输过程中没有被丢失 。算法用了一个专用的控制信息marker,8-5 分布式进程通信,进程p接收到Q的marker后,执行:1,进程P记录下它的局部状态SP 2,记录从Q到P进入(incoming)通道的状态 3,进程P沿着所有向外发出的通道传播这个marker给它的所有邻接进程 在记录它的状态之后的任何时间,若P接收了另一个进入通道(如来自进程R

11、)的marker时,它执行如下: 进程P记录从R到P的通道状态。这个状态是作为P记录它的局部状态SP,开始到它接收到来自R的marker时信息序列而记录的。 一旦沿着每个进入通道都已收到了marker,这个算法就在进程P终止,8-5 分布式进程通信,进程同步主要是指彼此合作的进程在共享资源上协调其操作顺序。进程互斥则主要是指彼此竞争的进程严格按照次序(排它性的)使用资源。 8-6-1 事件定序法 同步和互斥的分布式算法的基本操作是事件的时间定序。由于缺乏一个公共的时钟或同步局部时钟的方法,可以用下面的方法进行表达。 当说系统i中的事件a出现在系统j中的事件b之前(或之后)时,希望网络中所有系统

12、都能得出这个一致性的结论。但不幸的是,这种陈述是不精确的。,8-6 分布式进程同步与互斥,首先一个事件的实际出现与某个其他系统观察到它的时间之间可能有一个延迟;其次由于缺少同步设施,可能在不同系统上读出的时钟值不同。 为了克服上述两个问题造成的影响,Lamport建议采用时标方法为分布式系统中的事件定序。这个技术被广泛地用在解决同步和互斥的分布式算法中。 时标模式用来为传输的信息组成的事件定序。,8-6 分布式进程同步与互斥,图8-15 时标算法的 执行情况,8-6-2 分布式互斥 实施互斥的算法可以是集中式的,也可以是分布式的 集中式算法 算法:一个节点作为控制节点,控制对所有共享目标的存取

13、。只有控制节点才能对资源分配进行决策;控制节点中集中了所有必要信息,包括所有资源的标识和位置,以及每个资源的分配状态 优缺点:集中式互斥算法比较简单,容易实现,但如果控制节点失败了,互斥机制就无法实现;每个资源的分配和回收要求与控制节点交换信息,因此,控制节点可能变为瓶须,8-6 分布式进程同步与互斥,分布式算法 特征: 平均来讲,所有节点有着等量的信息 每个节点只有整个系统的一部分描述,且必须基于这个信息进行决策 所有节点对于系统的最后决策有着完全相等的作用 一个节点失败了,一般不会导致整个系统崩溃 不存在系统范围的公共时钟来协调与时间有关的事件,8-6 分布式进程同步与互斥,8-6-3 分

14、布式算法 Lamport分布式算法 数据结构:qj=(Release,0,j) j=1,n 使用的三类信息: (Request,Ti,i)表示进程Pi访问资源的请求信息。 (Reply,Tj,j)表示在Pj的控制下允许访问资源的信息。 (Release,Tk,k)表示进程Pk释放先前分配给它的资源,8-6 分布式进程同步与互斥,算法描述: 当Pi请求访问一个资源时,它泄放一个请求信息(Request,Ti,i),时标Ti是本地时钟的当前值,它把这个信息放在它自己的数组项qi中,并将这个信息发送给其它所有进程 当Pj接收到信息(Request,Ti,i),时,它把这个信息放在它自己的数组qj中,

15、并发送信息(Reply,Tj,j)给其它所有进程,8-6 分布式进程同步与互斥,当下面两个条件成立时,Pi可以访问一个资源: 在数组q中,Pi自己的请求信息是数组中最早请求的信息。由于信息在所有节点的顺序是一致的,这个规则允许一个而且只有一个进程在任何时刻访问所请求的资源 在本地数组中的所有其它信息比qi中的信息都晚一些。这保证Pi已了解了它的当前请求在所有请求之前 进程Pi释放资源时,它泄放信息(Release,Ti,i),把它放在自己的数组中,并传送给其它所有进程 当Pi接收到信息(Release,Tj,j)时,它用这个信息置换qj的当前内容 当Pi接收到(Reply,Tj,j)信息时,它

16、用这个信息置换qj的当前内容,8-6 分布式进程同步与互斥,令牌传递法 令牌:令牌(token)是进程在任何时间持有的一个实体,持有令牌的进程不必请求许可权就可以进入它的临界区。当进程离开它的临界区时,再将令牌传递给另一个进程 数据结构:这个算法需要两个数据结构。一个是被传递的令牌,另一个是请求数组 算法描述,8-6 分布式进程同步与互斥,8-7-1 资源分配中的死锁 在分布式系统中 ,必须依据各节点的局部信息进行决策 死锁的预防 破坏环路等待条件 破坏请求和保持条件 死锁的检测 系统是集中式的控制:由于中心进程有一个完整的图形描述,它负责死锁的检测。这个方法需要很多的通信信息,而且,一旦中心节点故障,算法将不起作用。另外。可能检测到假死锁,8-7 分布式进程死锁问题,分层控制:所有节点组成一个树型结构,除叶节点外,所有节点都要收集所有相关节点的有关资源分配的信息许在比根节点低的各级上进行死锁检测 分布式控制:系统中的所有进程合作实现死锁的检测。为此,相互之间必须交换相当多的时标信息。因此,系统开销很大 8

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号