[拼音]:fenbu jisuanji xitong
[外文]:distributed computer system
由多个分散的计算机经互连网络构成的统一计算机系统。其中各个物理的和逻辑的资源元件既相互配合又高度自治,能在全系统范围内实现资源管理,动态地实现任务分配或功能分配,且能并行地运行分布式程序。分布计算机系统是多计算机系统的一种新型式。它强调资源、任务、功能和控制的全面分布。就资源分布而言,既包括处理机、辅助存储器、输入- 输出系统、通信接口等设备资源,也包括进程、文卷、目录表、数据库等逻辑资源,它们分布于各个物理上分散的计算机结点中。各结点经互连网络(包括总线)相互通信,构成统一的计算机系统。这种系统的工作方式也是分布的。结点之间可以根据两种原则进行分工:一种是把一个计算题目分成多个并行任务,分配给各处理机共同完成,称为任务分布;另一种是把系统总功能分成多种子功能,分配给各计算机结点分别承担,称为功能分布。不论是任务分布还是功能分布,分配方案都可依处理内容来动态地确定。在功能分布中,与处理功能分布同时进行的控制功能分布具有更加重要的意义。这就是说,各个计算机结点应能平等地分担控制功能,独立自主地发挥各自的控制作用,但又相互合作,在通信协调的基础上实现系统的全局管理。
一般特点
分布计算机系统有三个特性。
(1)模块性:分布计算机系统的资源元件形成相对独立的模块,经互连网络的相互联系构成单一系统。模块在一定范围内的增减替换不致于影响系统的整体性。
(2)并行性:分散的资源元件可以合作解决一个共同问题,在分布操作系统的控制下,实现资源重复(按任务)或时间重叠(按功能)等不同形式的并行性。
(3)自治性:系统资源的操作是高度自治的,既不存在全系统的主从控制关系,又能利用处理局部化的原则以减少各结点间的数据通信量。
分布计算机系统的产生和发展受多种因素的推动。首先是技术方面的因素:大规模集成电路和微处理器为分布计算机系统提供了廉价的硬件;数字通信技术和计算机网技术的发展,使数量很大的计算机结点相互连接和高速通信成为可能。此外更为重要的是用户因素。集中式分时计算机系统虽能连接大量远程和近程终端来满足地理上分散的多用户使用的需要,但处理功能的过度集中将产生通信开销大、响应时间长,系统复杂昂贵等问题,因而用户逐渐转向分布计算机系统,以谋求更高的技术经济效益。
分布计算机系统成为计算机研究领域中发展迅速的一个新方向,还由于它本身的全面分布特性使它具有一系列潜在优点。
(1)可靠性和坚固性:资源冗余和自治控制使系统具备动态重构,甚至经受局部破坏也能继续工作。系统的模块性有利于维修和使用。
(2)增量扩展性:以廉价的模块作为系统扩展或资源更新的增量,不必象集中系统那样必须替换整个系统。
(3)灵活性:系统的配置容易改变,以适应不同应用对象的各种需要。
(4)快速响应能力:计算机资源更加靠近用户,特别是使分散的小用户能获得计算机的快速响应和直接服务,从而把大型机的计算能力与微型机的使用方便二者结合起来。
(5)资源共享:在对用户透明的基础上实现软件、硬件资源的共享,使单个用户的可用资源成倍增加。
(6)增强计算能力:按任务分布的并行处理能力受系统规模的限制较少;而按功能分布的专用处理部件同样能增强系统的有效处理能力。
(7)经济性:有利于发挥微型计算机的性能价格比优势。
(8)适应各种应用环境:分布计算机系统每一个结点上的资源配置能与当地用户的需求很好匹配,因而特别适用于经济管理、事务管理、过程控制等这样一些具有分散用户又要求相互协调的应用场合。
分布式系统结构
分布计算机系统的结构特点主要反映在它的互连网络上,可用机间耦合度作为主要标志来加以描述。耦合度是系统模块间互连的紧密程度。它是数据传输率、响应时间、并行处理能力等性能指标的综合反映。它主要取决于选取的互连拓扑和通信链路的类型。
远程计算机网采用串行数据传输,且受复杂的通信协议制约,故其耦合度处于最低端,属于松散耦合系统。多处理机追求尽可能高的并行处理速度,故其耦合度处于最高端。分布计算机系统是二者发展的产物,既考虑地理上分散环境的限制,又满足一定并行性的要求,故其耦合度居于二者之间,一般属于中等耦合系统。
分类
按照地理条件决定耦合度, 分布计算机系统可以分为机柜内系统、建筑物内系统、建筑物间系统、不同范围的区域系统等,它们的耦合度依次由高到低。
按照应用领域的性质决定耦合度,可以区分为三种不同类型。一种是面向计算任务的分布并行计算机系统和分布多用户计算机系统,它们要求尽可能高的耦合度,以便发展成为能分担大型计算机和分时计算机系统所完成的工作。第二种是面向管理信息的分布数据处理系统,耦合度可以适当降低。第三种是面向过程控制的分布计算机控制系统,耦合度要求适中,对于某些实时应用,耦合度的要求也可能很高。
分布操作系统
分布计算机系统具有的模块性、并行性和自治性在它的操作系统上反映得也很明显,使分布操作系统成为操作系统的重要研究方向。
特点
分布操作系统有四个特点。
(1)进程通信不能借助公用存储器,因而进程同步机构应提供一个面向信件的异构型通信环境。
(2)系统资源分布于多个结点,因而进程调度、资源分配、系统管理等必须满足分布处理的要求。
(3)根据自治性对资源管理的要求,各个处理机既能自主地管理分布于本结点的资源,又能接受和处理其他结点使用该资源的申请。由于一个功能模块往往有多个副本分布于不同的处理机上,而又不能采用全系统的集中控制,所以必须采用能保证一致性的分散管理方式。
(4)自治性的要求使错误检测和恢复变得更为复杂。
进程通信机构
在单处理机和具有共享存储器的多处理机系统中,利用基于公共变量的进程同步机构实现进程互斥和同步。但是,在以通信链路实现机间互连的分布计算机系统中,运行于不同处理机上的进程需要相互通信,没有公共存储器和公共变量可以利用,就必须采用另一种通信机构,即信件传递。基于信件传递的进程同步机构是经过信件队列依靠通信协议来实现的。通信协议由三部分组成:
(1)基本数据元的描述,包括位、字符、信息包、报文、文卷和作业等;
(2)数据元传送的约定,包括代码规定、信件格式、路径速度和控制顺序等;
(3)通信装置之间的虚路径(逻辑信道)的建立,包括地址构成、优先级、序号、错误检测恢复、流控制、自举操作等。通信协议(见网络软件)是划分层次的,保证低层协议对于高层协议的透明性。
资源管理
分布计算机系统有多种资源,每种资源有多个设备(包括逻辑设备,如文卷的多个拷贝),每个设备又有多种活动。设备分布于多台处理机中,因此为了适应模块性、自治性和坚固性的要求,系统设置多个控制机构管理。这样就形成了多个资源与多个控制机构之间错综复杂的关系。
对于资源管理的分类有两种观点。一种是从单个资源与多个管理机构相互关系的角度进行分析,称为单个资源控制。另一种是从多个资源与多个管理机构相互关系的角度进行分析,称为集体资源控制。前者是后者的基础,后者是前者的提高。这是因为全系统资源是由单个资源组成的,但只有从全系统的总体要求和限制因素来考虑资源管理,才能获得最佳的系统性能和结构。
单个资源控制有分散程度不同的四种管理方式,前两种是集中方式,后两种是分散方式。
(1)全集中管理方式:一个资源只由一个管理机构统一管理。
(2)分割管理方式:一个资源虽由几个管理机构管理,但各分担一种管理职能。
(3)浮动管理方式:一个资源可由几个管理机构管理,但轮流执行管理职责。
(4)全分散管理方式:一个资源由多个管理机构在协商一致的原则下共同管理。
在分布计算机系统中,究竟使用哪种资源管理方式,须根据系统总体要求和资源性质来决定。例如,各个处理机的主存储器资源本来就是分布的,自然由本处理机的管理机构来管理。如果要申请他机的主存储器资源,必须利用信件传递向该机的管理机构提出申请,须采取集中管理方式。但是,对于多拷贝文卷的更新操作,则必须采取分散管理方式。这是一个各拷贝所在处理机之间的分布并发进程互斥问题。任何一个处理机的管理机构都不能对它拥有的文卷拷贝单独作出更新的决定,除非其他有关处理机一致同意不在此期间另外进行读或写文卷的操作。在设计这一类分布式同步算法时,除须考虑死锁问题外,还须防止资源申请者不能在有限的时间内获得某一个资源的“饿死”现象。
分布程序设计
分布计算机系统的有效使用还决定于是否有一个好的分布式程序设计语言。这种语言应能有效地描述分布程序,说明进程及其在各处理机上的分布、进程通信等。对分布程序的要求应该是:适应基于信件传递的同步机构考虑实际的并行进程,减少进程间的通信开销等(见分布式程序设计)。
- 参考书目
- D.W.Davies et al., Distributed Systems-Architecture and Implementation, An Advanced Course,SpringerVerlag,Berlin,1981.