什么是分布式计算机系统?

2024-05-19 14:33

1. 什么是分布式计算机系统?

分布式计算机系统是一种计算机硬件的配置方式和相应的功能配置方式。它是一种多处理器的计算机系统,各处理器通过互连网络构成统一的系统。系统采用分布式计算结构,即把原来系统内中央处理器处理的任务分散给相应的处理器,实现不同功能的各个处理器相互协调,共享系统的外设与软件。这样就加快了系统的处理速度,简化了主机的逻辑结构,特别适合于工业生产线自动控制和企事业单位的管理,成本低,易于维护,成为计算机在应用领域发展的一个重要方向。

什么是分布式计算机系统?

2. 什么是分布式计算机系统?

为了更好地满足信息服务的需求,在信息高速公路的各个部分还必须建立一种基于计算机互联网络的计算机系统。这种系统便是分布式计算机系统,它是由多个分散的计算机经互联网络连接而成的一种系统。这种系统强调系统中的软件与硬件资源和各项任务由全系统共享或承担,同时也保留了各个用户使用自身资源的高度自主权。

3. 什么是分布式计算机网络

在这种网络中,不存在一个处理和控制中心,网络中任一结点都至少和另外两个结点相连接,信息从一个结点到达另一结点时,可能有多条路径。同时,网络中各个结点均以平等地位相互协调工作和交换信息,并可共同完成一个大型任务。分组交换网、网状形网属于分布式网络。这种网具有信息处理的分布性、可靠性、可扩充性及灵活性等一系列优点。因此,它是网络发展的方向。
分布式系统的平台已经成为一个链接某个组织的各个工作组、部门、分支机构和各个分部的企业网络。数据不是在一台服务器上,而是在许多台服务器上;这些服务器可能位于多个不同的地理区域,并用WAN链路相连接。
图D-26说明了从昂贵的集中式系统向可大批量安装的低成本的分布式系统发展的趋势。在20世纪80年代末、90年代初,分布式系统由数量庞大的桌面计算机组成,而如今,因特网和Web技术已经大大扩展了分布式系统的概念。根据3Com论文的说法,Web是一个“大规模分布的系统集合”,它由数不胜数的节点组成,这些节点范围从服务器到便携式计算机和无线PDA,更不用说那些无需人工干预基本上就能够彼此对话的嵌入式系统了。
TCP/IP提供了一个网络无关的传输层。
Web客户机和服务器消除了对平台和操作系统的依赖性。
组件软件(Java、ActiveX)消除了与购买和安装软件相关的争论。
XML使数据独立于软件。
用Web技术构建的网络(如内联网和因特网)是真正的高级分布式计算网络。Web技术为分布式计算添加了一个新的维度。Web服务器为具有Web浏览器的任何一台客户机提供了通用的访问方法。计算平台和操作系统的类型变得无关紧要,而无限制的通信和信息交换却占据了主导地位。
最近的分布式计算项目已经被用于使用世界各地成千上万位志愿者的计算机的闲置计算能力,通过因特网,您可以分析来自外太空的电讯号,寻找隐蔽的黑洞,并探索可能存在的外星智慧生命;您可以寻找超过1000万位数字的梅森质数;您也可以寻找并发现对抗艾滋病病毒的更为有效的药物。这些项目都很庞大,需要惊人的计算量,仅仅由单个的电脑或是个人在一个能让人接受的时间内计算完成是决不可能的。
分布式环境具有一些很有趣的特征。它利用了客户机/服务器计算技术和多层体系结构。它可将处理工作分布在多个不很昂贵的系统上,从而减轻了服务器处理许多任务的工作量。数据可以通过有线或无线网络从许多不同的站点上进行访问。可以将数据复制到其他系统以提供容错功能,并使其更接近于用户。对数据进行分布可以使数据免遭本地灾害的破坏。
分布式环境需要下列组件:
支持多供应商产品和通信协议的网络平台。TCP/IP成为实际使用的标准协议。
用于在客户机和服务器之间交换信息的应用程序接口,如RPC(远程过程调用)、消息传递系统或Web协议。
用来跟踪资源和信息及其所处位置的目录命名服务。
可支持分区和复制以便对数据进行分布并确保数据的可用性、可靠性和保护的文件系统和数据库。
用于使信息更接近于用户并使通过远距离链路传输信息所需时间最小化的高速缓存方案。
安全功能(如身份验证和授权)以及不同位置的系统之间的信任关系。
如前所述,Web是最基本的分布式计算机系统。您可以访问全世界的Web服务器,这些服务器提供了近乎无限的丰富内容。您可以利用目录服务来查找站点。搜索引擎对整个Web上的信息进行分类,并使您可以对其进行查询。高速缓存技术和“内容分布”正在使信息与用户的距离越来越近。
大规模分布系统
3Com有一篇论文,名为“Massively Distributed Systems”,是由Dan Nessett撰写的。该论文谈到了从高成本的集中式系统向低成本分布式的高单元容量的产品发展的趋势,向大规模分布的系统发展的趋势,这些大规模分布系统无处不在并且其运行常常超出人们的正常的知识范围。对于那些想了解分布式计算发展趋势的人们,建议最好阅读一下这篇论文。
Nessett探讨了两种分布式处理方法。一种方法是将数据移到边缘处理器,正如Web和基于Web的文件系统那样。另一种方法是先有处理过程再接收数据,正如活动联网和Java应用小程序那样(如对象在分布式系统中移动,同时携带代码和数据)。如果对象主要包含数据,则它会更接近于再进行处理。如果对象主要包含代码,则它更接近于先有处理过程再接收数据。然而,另一种方法是利用瘦客户机,这种方法是用户在与服务器连接的图形终端进行工作,这些服务器执行所有处理工作并存储用户的数据。
万维网是由欧洲粒子物理实验室(CERN)研制的基于Internet的信息服务系统。WWW以超文本技术为基础,用面向文件的阅览方式替代通常的菜单的列表方式,提供具有一定格式的文本、图形、声音、动画等。它是一个充满着对象的大规模分布的系统,其中各个Web站点所包含的文档都同时包含有对象和对其他对象的索引。
Nessett谈到了要使大规模分布的对象呈现给缺乏技术的用户为何需要新的接口。一个例子是在用户可浏览的虚拟空间中表示这些对象,就好像在三维世界中漫游一样。
分布式和并行处理
分布式计算技术的一个方面是能够在多台计算机上并行运行若干个程序。以分布式计算技术为基础,基于构件的系统体系结构将逐渐取代模块化的系统体系结构。现在主要有两种分布式计算技术的标准,一个是以OMG组织为核心的CORBA标准,另一个是以微软为代表的基于DCOM的ActiveX标准。近年来,OMG组织在CORBA 标准的制定和推广方面付出了巨大的努力,同时许多CORBA标准的产品也在逐渐成熟和发展;同时由于微软在操作系统方面的绝对统治地位,ActiveX标准在Windows系列平台上显得更加实用,相应的工具也更加成熟。
分布式并行处理技术是最适合于在通过LAN或因特网连接的计算机之间发生的多道处理技术;而专用并行处理则是最适合于在本地通过高速接口挂接的系统上发生的多道处理技术。
多个计算机系统间的分布式并行处理需要有一个权威性的调度程序,用来决定何时何地运行程序的一些部分。任务分布可以实时进行,也可以按比较缓和的任务安排来进行。例如,分布式处理已经在破译加密消息上得以使用。Distributed.net项目就是雇用数千名用户和他们的计算机来破译密码的。用户收到一个小程序,该程序可与Distributed.net的主系统进行通信,该系统向用户分布要解决的部分问题。当用户的计算机空闲时该程序即会运行。然后在完成后将其结果返回给主计算机。最后,主计算机对所有计算机提交的全部结果进行编译。Distributed.net宣称,它的用户网拥有“世界上最快的计算机”。
HTC(高吞吐量计算)环境是由许多工作站组成的大集合环境,通常称之为“网格环境”。Globus项目就是一个HTC项目,它可以帮助科研人员利用工作站和超级计算机池中的空闲周期。

什么是分布式计算机网络

4. 什么是分布式计算机网络

在这种网络中,不存在一个处理和控制中心,网络中任一结点都至少和另外两个结点相连接,信息从一个结点到达另一结点时,可能有多条路径。同时,网络中各个结点均以平等地位相互协调工作和交换信息,并可共同完成一个大型任务。分组交换网、网状形网属于分布式网络。这种网具有信息处理的分布性、可靠性、可扩充性及灵活性等一系列优点。因此,它是网络发展的方向。
分布式系统的平台已经成为一个链接某个组织的各个工作组、部门、分支机构和各个分部的企业网络。数据不是在一台服务器上,而是在许多台服务器上;这些服务器可能位于多个不同的地理区域,并用WAN链路相连接。
图D-26说明了从昂贵的集中式系统向可大批量安装的低成本的分布式系统发展的趋势。在20世纪80年代末、90年代初,分布式系统由数量庞大的桌面计算机组成,而如今,因特网和Web技术已经大大扩展了分布式系统的概念。根据3Com论文的说法,Web是一个“大规模分布的系统集合”,它由数不胜数的节点组成,这些节点范围从服务器到便携式计算机和无线PDA,更不用说那些无需人工干预基本上就能够彼此对话的嵌入式系统了。
TCP/IP提供了一个网络无关的传输层。
Web客户机和服务器消除了对平台和操作系统的依赖性。
组件软件(Java、ActiveX)消除了与购买和安装软件相关的争论。
XML使数据独立于软件。
用Web技术构建的网络(如内联网和因特网)是真正的高级分布式计算网络。Web技术为分布式计算添加了一个新的维度。Web服务器为具有Web浏览器的任何一台客户机提供了通用的访问方法。计算平台和操作系统的类型变得无关紧要,而无限制的通信和信息交换却占据了主导地位。
最近的分布式计算项目已经被用于使用世界各地成千上万位志愿者的计算机的闲置计算能力,通过因特网,您可以分析来自外太空的电讯号,寻找隐蔽的黑洞,并探索可能存在的外星智慧生命;您可以寻找超过1000万位数字的梅森质数;您也可以寻找并发现对抗艾滋病病毒的更为有效的药物。这些项目都很庞大,需要惊人的计算量,仅仅由单个的电脑或是个人在一个能让人接受的时间内计算完成是决不可能的。
分布式环境具有一些很有趣的特征。它利用了客户机/服务器计算技术和多层体系结构。它可将处理工作分布在多个不很昂贵的系统上,从而减轻了服务器处理许多任务的工作量。数据可以通过有线或无线网络从许多不同的站点上进行访问。可以将数据复制到其他系统以提供容错功能,并使其更接近于用户。对数据进行分布可以使数据免遭本地灾害的破坏。
分布式环境需要下列组件:
支持多供应商产品和通信协议的网络平台。TCP/IP成为实际使用的标准协议。
用于在客户机和服务器之间交换信息的应用程序接口,如RPC(远程过程调用)、消息传递系统或Web协议。
用来跟踪资源和信息及其所处位置的目录命名服务。
可支持分区和复制以便对数据进行分布并确保数据的可用性、可靠性和保护的文件系统和数据库。
用于使信息更接近于用户并使通过远距离链路传输信息所需时间最小化的高速缓存方案。
安全功能(如身份验证和授权)以及不同位置的系统之间的信任关系。
如前所述,Web是最基本的分布式计算机系统。您可以访问全世界的Web服务器,这些服务器提供了近乎无限的丰富内容。您可以利用目录服务来查找站点。搜索引擎对整个Web上的信息进行分类,并使您可以对其进行查询。高速缓存技术和“内容分布”正在使信息与用户的距离越来越近。
大规模分布系统
3Com有一篇论文,名为“Massively Distributed Systems”,是由Dan Nessett撰写的。该论文谈到了从高成本的集中式系统向低成本分布式的高单元容量的产品发展的趋势,向大规模分布的系统发展的趋势,这些大规模分布系统无处不在并且其运行常常超出人们的正常的知识范围。对于那些想了解分布式计算发展趋势的人们,建议最好阅读一下这篇论文。
Nessett探讨了两种分布式处理方法。一种方法是将数据移到边缘处理器,正如Web和基于Web的文件系统那样。另一种方法是先有处理过程再接收数据,正如活动联网和Java应用小程序那样(如对象在分布式系统中移动,同时携带代码和数据)。如果对象主要包含数据,则它会更接近于再进行处理。如果对象主要包含代码,则它更接近于先有处理过程再接收数据。然而,另一种方法是利用瘦客户机,这种方法是用户在与服务器连接的图形终端进行工作,这些服务器执行所有处理工作并存储用户的数据。
万维网是由欧洲粒子物理实验室(CERN)研制的基于Internet的信息服务系统。WWW以超文本技术为基础,用面向文件的阅览方式替代通常的菜单的列表方式,提供具有一定格式的文本、图形、声音、动画等。它是一个充满着对象的大规模分布的系统,其中各个Web站点所包含的文档都同时包含有对象和对其他对象的索引。
Nessett谈到了要使大规模分布的对象呈现给缺乏技术的用户为何需要新的接口。一个例子是在用户可浏览的虚拟空间中表示这些对象,就好像在三维世界中漫游一样。
分布式和并行处理
分布式计算技术的一个方面是能够在多台计算机上并行运行若干个程序。以分布式计算技术为基础,基于构件的系统体系结构将逐渐取代模块化的系统体系结构。现在主要有两种分布式计算技术的标准,一个是以OMG组织为核心的CORBA标准,另一个是以微软为代表的基于DCOM的ActiveX标准。近年来,OMG组织在CORBA 标准的制定和推广方面付出了巨大的努力,同时许多CORBA标准的产品也在逐渐成熟和发展;同时由于微软在操作系统方面的绝对统治地位,ActiveX标准在Windows系列平台上显得更加实用,相应的工具也更加成熟。
分布式并行处理技术是最适合于在通过LAN或因特网连接的计算机之间发生的多道处理技术;而专用并行处理则是最适合于在本地通过高速接口挂接的系统上发生的多道处理技术。
多个计算机系统间的分布式并行处理需要有一个权威性的调度程序,用来决定何时何地运行程序的一些部分。任务分布可以实时进行,也可以按比较缓和的任务安排来进行。例如,分布式处理已经在破译加密消息上得以使用。Distributed.net项目就是雇用数千名用户和他们的计算机来破译密码的。用户收到一个小程序,该程序可与Distributed.net的主系统进行通信,该系统向用户分布要解决的部分问题。当用户的计算机空闲时该程序即会运行。然后在完成后将其结果返回给主计算机。最后,主计算机对所有计算机提交的全部结果进行编译。Distributed.net宣称,它的用户网拥有“世界上最快的计算机”。
HTC(高吞吐量计算)环境是由许多工作站组成的大集合环境,通常称之为“网格环境”。Globus项目就是一个HTC项目,它可以帮助科研人员利用工作站和超级计算机池中的空闲周期。

5. 什么是分布式系统?

分布式系统(distributed system)是建立在网络之上的软件系统。正是因为软件的特性,所以分布式系统具有高度的内聚性和透明性。因此,网络和分布式系统之间的区别更多的在于高层软件(特别是操作系统),而不是硬件。内聚性是指每一个数据库分布节点高度自治,有本地的数据库管理系统。透明性是指每一个数据库分布节点对用户的应用来说都是透明的,看不出是本地还是远程。在分布式数据库系统中,用户感觉不到数据是分布的,即用户不须知道关系是否分割、有无复本、数据存于哪个站点以及事务在哪个站点上执行等。

故名思义,分布式系统就是将系统的应用层,数据层或其它部分构架成分布(物理和逻辑上的都可以)状(通常是网状)。分布式系统通常是为了增强系统的可扩展性、稳定性和执行效率。比如在线游戏通常就是分布系统,里面所谓的“区”就是分布系统里子例程。而分布式数据库其实也可以称作分布式系统,数据持久化层是分布的(数据存在不同的数据库中,可交互,有一套综管系统来维护数据的完整性和准确性)。
所以说分布式系统更准确地说是一种系统构架概念,不是一种技术。

什么是分布式系统?

6. 分布式计算机系统有什么特点?

分布式计算机系统是一种计算机硬件的配置方式和相应的功能配置方式。它是一种多处理器的计算机系统,各处理器通过互连网络构成统一的系统。系统采用分布式计算结构,即把原来系统内中央处理器处理的任务分散给相应的处理器,实现不同功能的各个处理器相互协调,共享系统的外设与软件。这样就加快了系统的处理速度,简化了主机的逻辑结构,特别适合于工业生产线自动控制和企事业单位的管理,成本低,易于维护,成为计算机在应用领域发展的一个重要方向。

7. 分布式计算机系统的功能

1)通信结构:通信结构是指支持各个计算机联网,以提供分布式应用的软件。在分布式系统中,尽管每台计算机都有自己独立的操作系统,并且这些计算机和操作系统的种类又可以是不同的,但它们都应该支持同样的通信结构。2)网络操作系统:由网络操作系统提供网络服务功能:分布式系统的硬件环境是计算机网络,系统中的个人计算机可以是单用户工作站或服务器,因此它需要由网络操作系统进行管理并提供网络服务功能。3)分布式操作系统(透明性):有一个公共的分布式操作系统:在分布式系统中,各计算机共享一个公共的分布式操作系统。分布式操作系统由内核以及提供各种系统功能的模块和进程所组成。系统中的每一台计算机都必须保存分布式操作系统的内核,以实现对计算机系统的基本控制。

分布式计算机系统的功能

8. 分布式计算机系统的作用

分布式操作系统除了需要包括单机操作系统的主要功能外,还应该包括分布式进程通信、分布式文件系统、分布式进程迁移、分布式进程同步和分布式进程死锁等功能。(1)分布式进程通信分布式系统的进程通信是由分布式操作系统所提供的一些通信原语来实现的。但由于分布式系统中没 有共享内存,这些原语需要按照通信协议的约定和规则来实现。与分布式进程通信有关的主要概念包括:通信协议,分布式环境中的客户/服务器工作模式,进程通 信的消息传递方法和远程过程调用方法。(2)分布式文件系统分布式文件系统是允许通过网络来互连的,使不同机器上的用户共享文件的系统。它能让运行它的所有主机共享,并可以管理操作系统内核和文件系统之间的通信。(3)分布式进程迁移分布式进程迁移是指由进程原来运行的机器(称为原机器)向目标机器(准备迁往的机器)传送足够数量的有关进程状态的信息,使进程能在另一机器上运行。(4)分布式进程同步在分布式系统中,各处理机没有共享内存和统一的时钟,因此分布式进程同步必须对不同处理机中所发生的事件进行排序,还应该配有性能较好的分布式同步算法,以保证为实现进程同步所付出的开销较小。(5)分布式进程死锁在分布式系统中,也可能会因进程竞争资源而引起死锁。对单处理机系统中讨论过的死锁对策只要稍加修改,就可用于多处理机系统。例如,只要在系统事件之间简单地定义一个全序,有序资源分配死锁预防技术就可用于分布式系统。