園橋

[拼音]: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., DistributedSystems-Architecture andImplementation, AnAdvanced Course,SpringerVerlag,Berlin,1981.