分散式程式設計
正文
可在分布計算機系統的幾台計算機上同時協調執行的程式設計方法。在分布計算機系統出現以後,為了發展和套用這種系統,在70年代後期提出了分散式程式設計,並開始研究分散式程式設計語言和分散式算法。到1983年底,已經提出了十多種分散式程式設計語言的建議,開展了解決若干邏輯問題的分散式算法的研究。
分散式程式設計的主要特徵是分布和通信。採用分散式程式設計方法設計程式時,一個程式由若干個可獨立執行的程式模組組成。這些程式模組分布於一個分散式計算機系統的幾台計算機上同時執行。分布在各台計算機上的程式模組是相互關聯的,它們在執行中需要交換數據,即通信。只有通過通信,各程式模組才能協調地完成一個共同的計算任務。
採用分散式程式設計方法解決計算問題時,必須提供用以進行分散式程式設計的語言和設計相應的分散式算法。分散式程式設計語言與常用的各種程式設計語言的主要區別,在於它具有程式分布和通信的功能。因此,分散式程式設計語言,往往可以由一種程式設計語言增加分布和通信的功能而構成。分散式算法和適用於多處理器系統的並行算法,都具有並行執行的特點,但它們是有區別的。設計分散式算法時,必須保證實現算法的各程式模組間不會有公共變數,它們只能通過通信來交換數據。此外,設計分散式算法時,往往需要考慮堅定性,即當系統中幾台計算機失效時,算法仍是有效的。
分散式程式設計語言的研究,將從方案建議轉入實用研製,可能出現多種具備分散式程式設計功能的語言。分散式算法的研究,將會從解決邏輯問題的算法發展到解決各種數據處理和數值計算的算法。