对分布式系统的认识

摘要:分布式计算机系统是一种计算机硬件的配置方式和相应的功能配置方式。它是一种多处理器的计算机系统,各处理器通过互连网络构成统一的系统,把原来系统内中央处理器处理的任务分散给相应的处理器,就加快了系统的处理速度,简化了主机的逻辑结构。本文除了介绍分布式系统的一般特征,还介绍了一种特殊的分布式系统——计算机支持的系统工作系统(CSCW)。

关键词:分布式系统,CSCW

  1. 定义

随着经济的迅速发展,越来越多的工作变得十分复杂,凭借一个人或一台计算机的力量不能完成,对信息处理能力的广泛和深入的需求,分布式系统正日益被人们普遍重视和广为使用。所谓分布式计算机系统,是指由多台分散的计算机,经互连网络的联接而形成的系统,系统的处理和控制功能分布在各个计算机上,充分利用各个计算机的资源,共同完成一项任务。一个分布式系统是一些独立的计算机的集合,但是对这个系统的用户来说,系统就像一台计算机一样。分布式计算机系统又简称为分布式系统。

  1. 特点

  1. 无主从区分;

  2. 计算机之间交换信息;

  3. 资源共享;

  4. 相互协作完成一个共同任务。

  1. 作用

分布式操作系统除了需要包括单机操作系统的主要功能外,还应该包括分布式进程通信、分布式文件系统、分布式进程迁移、分布式进程同步和分布式进程死锁等功能。

  1. 分布式进程通信

分布式系统的进程通信是由分布式操作系统所提供的一些通信原语来实现的。但由于分布式系统中没有共享内存,这些原语需要按照通信协议的约定和规则来实现。与分布式进程通信有关的主要概念包括:通信协议,分布式环境中的客户/服务器工作模式,进程通信的消息传递方法和远程过程调用方法。

  1. 分布式文件系统

分布式文件系统是允许通过网络来互连的,使不同机器上的用户共享文件的系统。它能让运行它的所有主机共享,并可以管理操作系统内核和文件系统之间的通信。

  1. 分布式进程迁移

分布式进程迁移是指由进程原来运行的机器(称为原机器)向目标机器(准备迁往的机器)传送足够数量的有关进程状态的信息,使进程能在另一机器上运行。

  1. 分布式进程同步

在分布式系统中,各处理机没有共享内存和统一的时钟,因此分布式进程同步必须对不同处理机中所发生的事件进行排序,还应该配有性能较好的分布式同步算法,以保证为实现进程同步所付出的开销较小。

  1. 分布式进程死锁

在分布式系统中,也可能会因进程竞争资源而引起死锁。对单处理机系统中讨论过的死锁对策只要稍加修改,就可用于多处理机系统。例如,只要在系统事件之间简单地定义一个全序,有序资源分配死锁预防技术就可用于分布式系统。

  1. 计算机支持的协同工作系统

现在介绍一种分布式系统,即计算机支持的协同工作系统(CSCW)。

  1. 定义

计算机支持的协同工作CSCW ( Computer Supported Cooperative Work)是一种将人类合作行为模式与计算机支持技术融合为一体的技术,即在计算机技术支持的环境下(CS),一个群体协同工作完成一项共同的任务(CW),并通过建立协同工作的环境,改善人们进行通信的方式,消除或减少人们在时间和空间上相互分隔的障碍,节省工作人员的时间和精力,以提高群体工作的质量和效率。它的基本内涵是计算机支持的通信、合作和协调。如共享文件系统提供的资源共享能力,电子邮件和多媒体会议系统提供的人与人之间的通信支持功能,工作流和决策支持系统的组织管理功能等。CSCW 充分体现了信息时代人们工作的群体性和协作性的特点,成为信息科学发展的重点之一。

  1. CSCW系统分类

计算机支持的协同工作可按时间和空间来进行分类。按照时间的概念划分,可以分成同步和异步方式;按照空间的概念划分,可以分成本地和异地。由此可将计算机支持的协同工作分成四类:

  1. 同步模式:在同一时间、同一地点进行同一任务的合作方式,如共同决策、共同编辑、CAD、室内会议等。

  2. 分布式同步模式:在同一时间、不同地点进行同一任务的合作方式,如联合设计、联合编辑、群体决策、视频会议等。

  3. 异步模式:在同一地点、不同时间进行同一任务的合作方式,如轮流作业。

  4. 分布式异步模式:在不同时间、不同地点进行同一任务的合作方式,如电子邮件、工作流、大规模开发项目的支持等。其中,分布式同步模式是CSCW系统的主要研究和实现对象。

  1. CSCW系统与传统分布式系统的异同

CSCW系统必然是一个分布式系统,它与分布式系统之间具有如下天然的联系。第一,完全自治的分布系统,支持人之间异步或同步的信息传输工作,能够部分完成对于人之间合作的支持。第二,资源共享系统,允许不同计算机的用户共享同样的系统资源,这也是CSCW系统中的必备技术。

因此,分布式处理技术是CSCW系统的基础支持技术。CSCW系统与分布式系统之间也有明显的不同之处。第一,分布式系统追求透明性,即让用户在使用系统时感觉为独占系统;而CSCW系统追求不透明性,即系统应让所有用户相互感知到其他合作者对共享对象的操作。第二,分布式系统主要研究如何使系统中各部分充分发挥各自的性能,

从而获得整个系统的高效;而CSCW系统除了要追求高性能外,更注重如何支持协作者之间的高效协同。

  1. CSCW系统结构

  1. CSCW系统的组织结构

CSCW的系统结构首先应该具有很大的灵活性,易于扩充。其次,整个CSCW系统应该有很高的运行效率,应尽可能发挥分布式并行处理的能力。目前,CSCW系统结构的实现方式主要有:集中式、分散式、混合式。

  1. 集中式结构

集中式结构实际上是一种客户/服务器(Client/Server)结构。服务器集中负责整个系统的管理、控制和调度,以及所有与具体应用相关的程序逻辑、数据等,客户端只有应用工具和用户界面等模块。用户要执行的所有任务,都要向服务器发出请求,由服务器完成。这种结构的优点是实现简单,共享信息集中存储,共享操作统一处理,一致性容易维护,可以很方便地实现用户的动态加入和离开等。但这种结构较难实现视图级和对象级的共享,协作接口的自治性很小,用户无法直接控制接口的实现。此外,该结构是星型的协同网络,服务器是整个系统的核心,系统对服务器有单点依赖,使其很容易成为整个系统的瓶颈。

  1. 分散式结构

分散式结构也可以称作重复式结构,在该结构中每个节点均处于同等地位,没有主从之分,也称为对等实体模式。由于没有服务器,与系统相关的控制和管理模块就分散在各客户端。客户端自己管理自己,自己决定在什么时间、什么条件下被激活,以及被激活后执行何种动作,没有一个客户端能直接激活和操纵另一个客户端,而只能通过修改数据或广播信号等方式通知其他的客户端程序。由于在每个节点上都有一个完全相同的协作接口处理程序,因此接口的自治性很容易实现,并可方便地实现视图级和对象级共享的接口耦合;而且该方法鲁棒性、灵活性、开放性和通用性都比较好,可以很容易地将异构的机器和软件连接在一起。但是,由于数据的分布存储和操作的各自处理,所以全局的一致性较难维护,节点间的实时性同步以及用户的动态注册也较难实现。

  1. 混合式结构

混合式结构结合了前两种结构的优点,由服务器实现数据信息的一致性维护、用户管理和信息的转发与分发等功能,由客户端实现与用户的交互,实现与具体应用领域相关的程序逻辑以及其他一些可以在客户端完成的工作,如权限检查等。这种结构充分利用了客户端的计算机资源,极大地减轻了服务器的工作压力,减轻了服务器的瓶颈效应,既能使系统具有较好的灵活性、鲁棒性和较短的响应时间,又保证了系统信息的一致性。

  1. CSCW系统的体系结构

CSCW系统的体系结构可以划分为三个层次:

  1. 基本分布功能层:主要包括网络操作系统的基本服务和通用的分布式系统技术,使多用户与分布性成为可能,提供具有基本分布功能的编程接口,完成数据传输、信息存取及其他访问系统资源的功能。

  2. CSCW支持平台:它以协作代理和分布式对象技术为核心,通过在基本服务功能层之上扩展分布服务来满足分布对象对CSCW支持的不足,并通过调用基本分布功能向上提供隐式的控制策略,支持面向多媒体的群组通信,管理用户群组的协作信息,协调用户间的协作,维护整个系统的状态并提供对协同应用的访问控制机制和面向用户协作的编程接口。它可细分为分布服务支持层、信息服务支持层和协作支持层三层。分布服务支持层是在基本分布功能层上利用和扩展分布式对象技术,以加强分布式系统对CSCW在分布、开放和组交互等方面的支持;信息服务支持层是利用组件技术建立可裁剪的组件群件,以提高CSCW应用系统的开发效率和质量;协作支持层是利用分布式Agent技术建立基于协作代理的协作策略,以满足CSCW系统对动态协同等方面的需求。

  3. 协同应用层:通过调用CSCW支持平台提供的服务,支持用户完成具体的协作任务,向用户提供显式的控制策略。利用CSCW 支持平台提供的编程接口,开发各种协同应用,每个协同应用处理一种协作任务,协同应用间的关系可根据用户的要求而定,并由支撑平台统一管理。为了支持各层次之间的服务访问操作,定义了RequestResponseIndicationResult四种类型的操作原语。Request,由上层的服务请求者向下层的服务提供者请求某个服务操作;Response,由服务提供者向服务请求者发出服务请求响应,可以是肯定回答,也可以是否定回答;Indication,服务请求者接收到服务提供者肯定的应答时,就向服务提供者进一步发出具体的服务指示;Result服务提供者接收到服务指示,执行服务操作,并把服务操作结果回送给服务请求者。

  1. CSCW应用

  1. 军事应用:各种类型的C3I系统各种级别的参谋会议系统等。它们可能是远程会议系统,也可以是本地会议系统或会议室系统。其规模可大可小。美国紧急战略办公室OEP开发的一个紧急事件管理信息系统EMISARI,就是一个计算机支持的远程会议系统。

  2. 远程教育:网络环境下的协作学习,可以使学生、教师和专家等从网上获取丰富的资源,同时,远程教育和协作学习是未来人们工作和学习的一种基本又非常重要的方式和环境。

  3. 办公自动化(OA )和管理信息系统(MIS )的新发展:传统的OAMIS一般只能管理和处理数据、文字信息。如果与多媒体技术结合,增加处理图形、图像、动画、视频和声音等信息,并且在通信网络环境支持下,进行协同工作和决策,就大大扩展了OAMIS系统的功能和应用领域。面向OAMISCS CW系统的研究和开发,将使“智能大楼”成为现实。

  4. 医疗应用:面向医疗的CSCW系统研究和开发,将使计算机化就诊,特别是远程专家会诊,具有更大吸引力:危重病人能及时得到抢救,边远地区的病人也能获得同城市一样的医疗条件。当然,没有国家的信息基础设施或信息高速公路的支持不可能真正实现远程医疗。但目前,至少在大城市的大医院之间开展远程专家会诊系统的研究和开发是可能的和现实的。



参考文献

[1] 史美林. CSCW :计算机支持的协同工作. 通信学报,19951月第16卷第1.

[2] 黄永灿,CSCW系统结构分析设计. 黄河科技大学学报,第11卷第5.

[3] 李人厚,郑庆华,鲍家元. C SCW 的概念、结构、理论和应用[J] . 计算机工程与应用,1999 ( 2) : 29- 33.

[4] 史美林,向勇,杨光信. 计算机支持的协同工作理论与应用[M]. 北京: 电子工业出版社,2000 : 12 .

[5] 李军怀,周明全,耿国华. 异构环境下的CSCW模型研究与实现[J] . 计算机科学,2002( 10) : 104- 106 .

[6] 孙艳春,刘积仁. CSCW系统体系结构模型的研究[J]. 小型微型计算机系统,2001( 2 ): 210- 213.

原文地址:https://www.cnblogs.com/leanfish/p/5452003.html