请输入您要查询的字词:

 

单词 分布式计算机系统
释义

【分布式计算机系统】
 

分布式计算机系统有几个基本公认的特点,即:资源分散性、结构模块性、工作并行性、协作自治性、系统透明性和高可用性。分布式计算机系统将被广泛使用,因为它具有如下优点和特点:高可靠性和高可用性;高速度,基于物理并行而取得;提供专用功能;应用的固有分布,分布式计算机系统内物理资源和逻辑资源的物理分布可以和应用的固有分布相适应;分享,通过负载分享可以更好地利用可用的处理能力,通过资源分享可以降低系统造价,通过数据分享可使逻辑结构更为简单,灵活性更高。分布式计算机系统和计算机网之间的相互关系容易使人模糊不清。两者间虽有类似之处但却有本质的不同:(1)在计算机网中,每个计算机均有它自己的操作系统,资源归局部所有并被局部控制,网内进程调度是通过迁移进程和数据而实现的;在分布式计算机系统中,在每个结点计算机上运行的是全局的、系统范围内的操作系统的一部分,执行的任务可以是独立的,可以是一任务的一部分,也可以是和其它计算机相重复的、各机相互协调平衡系统内的负载。(2)在计算机网中,每个用户用它自己的机器;在分布式计算机系统中,进程则在系统内各计算机之间动态调度。(3)在计算机网中,用户知道自己的文件在哪里;在分布式计算机系统中,文件放置则由操作系统管理。(4)在计算机网中,系统几乎没容错能力;在分布式计算机系统中则有适度降级功能。在资源分享等方面,二者间是类似的。计算机网的宗旨是资源分享,分布式计算机系统则是从体系结构的角度发展而来的。可以说计算机网是分布式计算机系统的物质基础,分布式计算机系统则是其高级发展阶段,不过分布式计算机系统正在朝着一体化的方向发展。分布式计算机系统是并行处理的一种常见形式和特例。

分布式操作系统是分布式计算机系统的关键技术,经过近10年的努力已基本突破。研究、开发和使用分布式操作系统的目的为使网络性的操作最佳化;实现进程管理、通信管理、设备管理、存储管理和文件管理;提高系统的安全性、可靠性、简单性、灵活性和能力。

在逻辑上,分布式操作系统是一个自然的操作系统;在物理上它是存在于所有结点上的一个重要的核心操作系统,通过在各结点间进行一致协商和折衷实现对整个系统资源的全局管理和控制,对用户透明。因此可以阐明分布式操作系统和网络操作系统间的本质区别。在分布式操作系统中,资源是全局管理,全局使用,通过全局机制实现其访问,系统的控制和管理是基于一种单一的系统策略,并考虑全局的利益。在网络操作系统中,资源是局部管理,局部使用,通过局部机制实现其访问,没有任何单一的系统策略,只有局部考虑。分布式操作系统和集中式操作系统的主要宗旨都是控制和管理系统消费者对系统资源的使用,但两者间存在着质的差别。集中式操作系统是根据整个时间及可用环境的各个方面来作出其管理决定,但分布式操作系统作其管理决定无须考虑对环境各个方面之总认识的不断更新和一致性,而是基于总状态的最好猜测或基于总状态或某些组合的某些过去概念的最好猜测。多年来操作系统的设计一直是按面向(或基于)进程的模型进行,近年来对象概念被引入操作系统之后,形成了面向(或基于)对象的分布式操作系统设计模型,它和面向进程的分布式操作系统设计模型的区别在于:(1)在面向进程的系统中,操作系统是进程的集合;而面向对象的系统中,操作系统是对象的集合。(2)在面向进程的系统中,用户进程和系统状态的同步及控制乃通过消息传送实现;而在面向对象的系统中,这种同步及控制则是通过能力的管理和分配完成的。对象的概念把数据和处理数据的过程结合为一个整体,是一个由信息以及有关对它进行处理的描述所组成的包。对象既可以象数据一样被处理,又可以象过程一样去描述处理的过程,由于其显著的优点,基于对象的分布式操作系统设计模型将成为今后分布式操作系统的发展方向。智能化动态任务调度也是分布式操作系统的核心技术,是分布式操作系统中任务调度的发展方向。由于在单个结点中实行分时操作将会使问题变得如此复杂,以至不现实,同时将会毁掉分布式计算的并行性;全局分时操作对用户作业有更多的控制,但由于转接中的状态保存以及调度和存储限制等将使问题变得没有必要或没有根据和复杂。因此在分布式操作系统的设计中完全取消了分时的概念。一旦一任务被分配给某一计算机之后,则让其执行完毕。换句话说,在分布式操作系统的设计中,任务的调度单位是任务,实现智能化动态任务调度可以有多种算法。目前用得较多的是启发式算法。未来的智能化动态任务调度算法将会朝着更广更深的方向发展。

分布式计算机系统有着广阔的应用领域。用这种系统来处理某些领域的任务需要进行相应的程序设计,完成这种程序设计需要相应的支持,提供这种支持的便是分布式程序设计语言。

分布式计算机系统的应用大体分为四类:并行高性能应用,主要用于需要高速处理之场合;容错应用,主要用于可靠性要求(极)高的场合;使用特定功能,基于分布式计算机系统中借助远程功能调用等实现的资源分享,使得系统中的某些特定功能不必在每个结点都分别提供给用户,可以降低系统造价;固有分布的应用,在某些领域,应用本身在地理上就是分布的,通常由局部解决问题,必要时则由系统范围内的所有结点或部分结点合作解决问题。

面向分布式计算机系统进行程序设计的语言支持主要包括3个方面:(1)并行性。分布式程序设计不同于时序程序设计的主要区别之一是系统使用多处理机(多计算机),这就要求使用相应的语言支持这种物理并行性,首先是能够表示并行性,第二是能将并行计算映射到物理处理机上,第三是能按需要汇集结果。(2)进程间通信和同步。分布式计算机系统中各结点机间的合作关系,通过两种交互作用类型即通信和同步实现。这就要求语言能够提供这种功能,其途径包括消息传送、数据分享以及表示和控制非决定性等,(3)对付局部故障。在分布式计算机系统中允许局部的结点或通信链路发生故障,检测局部故障、重构系统、重新调度处理和从局部故障恢复等都无需人的干预。语言要提供这种支持,其手段可以是由程序设计者进行程序设计,由语言通过原子事务处理或由操作系统的透明容错功能实现。

用于分布式计算机构系统的程序设计语言可分为两类:(1)分布式地址空间型:在物理上无分享主存,使用分布式地址空间,相应的语言类型有基于同步消息传送、基于异步消息传送、基于会合、基于远程过程调用、基于多原语、基于对象和基于原子事务处理等,它们分别包括若干种语言或语言模型。(2)分享地址空间型:主要有3种语言类型,即函数语言、逻辑语言和分布式数据结构语言,其例子分别是ParAm、PROLOG和Linda语言等。

现有分布式数据库主要有两种模式:

1.集成模式。在集成模式中,每个局部模式需借助全局数据模型表示,有3种结构类型;(7)7层结构:包括虚模型、统一全局概念模型、统一全局内部模型、统一局部概念模型、统一局部内部模型、局部逻辑模型和局部物理数据库。(2)分布式数据库结构:在这里,全局内部模式由3部分组成,即片模式、分配模式和映射模式。片模式规定全局模式和它的片之间的映射关系。分配模式规定每片在分布式数据库系统中的位置。映射模式将全局模式的片映射到数据模型。局部概念模式是用局部数据库。局部数据库等同于7层结构中的局部物理数据库。(3)全局观结构:7层和分布式数据库结构都有一个集成全局概念模式,但在全局观结构中则代之以让每个用户都有他自己的整个系统数据和各部分的数据视图。全局内部模式提供数据视图和基础数据库之间的映射信息。

2.多数据库结构。用户事务处理显式指向仅仅一个基础数据库是多数据库结构的本质特征。局部概念模式用局部数据模型的数据描述语言表示,内部模式为局部概念模式和多数据库概念模式之间的映射信息,每个多数据库概念模式都对应有一个基础数据库。局部概念模式和多数据库概念模式分享同样的数据模型,局部模式仅仅提供一一对应关系。在集成模式和多数据库结构中,集成模式占统治地位,多数据库结构仅存在于欧洲。集成模式中的3种结构则平分秋色。开发一个集成模式的分布式数据库系统,主要的分析和设计任务包括:局部模式转换,将每个局部模式用全局数据模型表示,需要研究相应算法;集成为一全局模式,将各单独的模式集成为单一的全局模式,研究得不多;翻译数据管理语言(DMI)命令,将全局(局部)DML命令转换为局部(全局)DML命令,以便对指定的模式内容应用希望的操作,对这种翻译工作研究得很少。

分布式算法极为重要,其实为并行算法。在冯·诺依曼单机上,算法的好坏对性能高低的影响一般不超过几倍;在并行处理结构中,可达50~100倍;在大规模并行结构中,则可高达几个数量级。此外,根据不同的应用任务(问题)决定不同的软硬系统结构可进一步提高系统性能。分布式计算机系统所涉及到的算法很多,下面仅列出至今已经碰到的必须研究和解决的算法:在不可靠的网络上实现可靠通信的算法。重构算法,根据问题动态构成相应拓扑结构,即按需重构、根据故障重构、按程序设计重构,即通过过程序设计动态连接所有或部分可工作的结点计算机,以适应解决一个或多个问题;结点机和通信链路故障被修复后的恢复算法;路由算法,例如最佳或最短路由算法;对一给定问题进行分割以便实现并行处理的算法;并行度一定,尽量减少多个进程间通信量的算法;并行段到处理机的映射算法;负载平衡算法;通过文件重复、文件迁移和进程迁移实现性能改进的算法;同步、互斥算法;死锁检测和避免算法;动态程序设计算法;智能化算法;更新一致性算法。把分布式计算机系统用于实际,面向应用又有很多算法。例如线性方程组和矩阵反演算法,非线性问题的迭代算法,完全异步迭代算法,部分异步迭代算法等。在对分布式计算机系统的研究的不断深入和提高的过程中,还会有更多的算法需研究和解决,同时也会有面向应用的新算法需要研究和解决。

算法研究往往不是孤立的,例如并行段到处理机的映射算法就和实现密切相关;由用户和程序设计者作;在编译时作;在运行时由语言运行时间系统作。由用户和程序设计者作时,适应范围宽、灵活,但程序设计的负担很重,效率一般也不高。在编译时作的情况下,不灵活,但在编译时就可知道哪些并行段将在同一处理机上运行,从而可以使用分享变量。在运行时由语言运行时间系统完成时,操作系统和语言运行时间系统的设计较为复杂。不管哪一种实现都和操作系统密切相关。由此可见,算法是和操作系统、语言编译器、数据库、通信和应用等都密切相关,是一个带全局性的问题。事实上,为了设计一个高性能高可靠的分布式计算机系统,必须把算法、结构、语言、编译和操作系统紧紧地联系在一起综合考虑,还必须把数据、文字、语言、图象和人工智能紧紧地联系在一起综合考虑,这就是分布式计算机系统的一体化设计。

分布式计算机系统在未来的高性能范例中将占统治地位,这一观点正被逐渐接受,还有许多关键技术等待突破。未来的智能计算机、神经机算机和分子计算机必然是一个高度并行的多机系统,鉴于分布式计算机系统中各结点间的相互合作类似于人体各部分间的相互协调,故未来这些计算机系统的系统结构很可能就是分布式的。因此分布式系统结构是支持这些计算机系统研究和开发的一种重要技术,应针对这些计算机系统的研究来开展分布式系统结构的研究。这些系统对速度的要求相当高,以机器视觉为例,实验表明当车子以60km/h的速度行驶时,要求的处理速度就达1000GIPS。然而单机的速度已趋于极限,这就导致了人们对分布并行处理技术的极大兴趣和高度重视。另一方面,就近期而言,分布式计算机系统在实时过程控制、办公自动化或管理信息系统特别是对可靠性要求极高的实时系统等方面将有着广阔的应用前景。总之,分布式计算机系统将在未来的应用和发展中占据关键的位置,它将朝着以下几个方面发展。(1)四化:把分布式算法、分布式操作系统、分布式数据库、分布式语言、硬件、固件、软件、数据、信息、图像、声音、传真等融合在一起,以获得高性能的分布式计算机系统,即一体化;分布式计算机系统要易于引入人的知识,提供好的支撑环境,构成智能化的分布式计算机系统,即智能化;要大幅度提高分布式计算机系统性能/价格比,使分布式计算机系统获得普遍的使用,即实用化;分布式计算机系统的设计要一体化和智能化,要有高的性能/价格比和可用性。面对这种高要求,应当使用计算机来智能地设计分布式计算机系统,这就是CAD化。(2)若干关键技术还有待突破。(3)拓扑结构:现在超立方体计算机已成为松散耦合并行处理系统的主流,但碳向智能化计算机、神经计算机和分子计算机的研究还有待深入、提高和完善。(4)长远发展:如何从系统结构的角度出发,把分布式计算机系统、智能化计算机系统、神经计算机系统和分子计算机系统结合起来进行研究,这是一项紧迫而长远的目标和发展方向。(5)和超大规模集成工艺紧密结合。

(电子科技大学刘沁松、耿技、戴绍清撰)

随便看

 

科学参考收录了7804条科技类词条,基本涵盖了常见科技类参考文献及英语词汇的翻译,是科学学习和研究的有利工具。

 

Copyright © 2000-2023 Sciref.net All Rights Reserved
京ICP备2021023879号 更新时间:2024/12/23 5:59:18