"": 200,
"": "",
"": "體係結構包括一組部件以及部件之間的聯係。
1.數據流係統,包括順序批處理、管道和過濾器;2.調用-返回係統,包括主程序和子程序、麵向對象係統、層次結構;3.獨立部件,包括通信進程、事件隱式調用;4.虛擬機,包括解釋器、規則基係統;5.以數據為中心的係統(庫),包括數據庫、超文本係統、黑板係統;6.特殊領域風格;例如過程控製、模擬器;7.特殊結構的風格,例如分布式處理、狀態轉移係統;8.不同風格合成建立的異構結構;9.最初始、最基本的主程序\/子程序。
自1964年G.Amdahl首次提出體係結構這個概念,人們對計算機係統開始有了統一而清晰的認識,為從此以後計算機係統的設計與開發奠定了良好的基礎。近四十年來,體係結構學科得到了長足的發展,其內涵和外延得到了極大的豐富。特別是網絡計算技術的發展,使得網絡計算體係結構成為當今一種主要的計算模式結構。微電子技術的飛速發展使芯片級體係結構研究成為一個挑戰性課題。體係結構與係統軟件,應用軟件,程序設計語言的緊密結合與相互作用也使今天的計算機與以往有很大的不同,並觸發了大量的前沿技術、相關產品開發與基礎研究課題。
出現原由
在傳統的程序設計領域中,人們使用流程圖來表達係統的基本功能和實現的具體邏輯,但是,流程圖實際上僅僅是源程序的圖形化表示,無法給係統的分析和開發者提供更多的信息,所以沒有在實際的係統開發過程中得到廣泛的應用。隨著軟件係統的規模和複雜性的增加,對軟件係統的整體結構(數據和控製的邏輯)進行分析和描述成為大型係統開發的一個不可缺少的重要部分,顯然,使用流程圖是無法達到這個目標的,我們必須使用新的方法和概念來對係統的整體結構進行把握。
係統分析
係統分析實際上包括兩個階段的工作,首先是需求的分析,也就是說,劃分出係統和環境之間的界麵,將所研究(或者是將要開發)的係統和周圍的環境分離,這就是從使用者的觀點,將整個係統作為一個整體來考察。其次是係統的設計,根據係統的整體功能和數據,參考實際的物理係統或者類似的係統,設計實際運行的軟件係統,這一步驟實際上就是體係結構的分析和確定。從係統工程的觀點看來,任何複雜的係統都是由相對簡單的,在當前所分析的係統層次是原始的基本元素(雖然在更進一步的分析中,這些元素可能具有非常複雜的內部結構)組成的,這些基本元素之間存在複雜的相互作用。所以,軟件係統的分析和設計的基本任務是:確立係統中的基本元素(完成係統的功能所必不可少的成分);確定這些元素之間相互作用的方式(這就是係統的體係結構)。
基本的體係結構範式
管道和過濾器
每個組件具有輸入和輸出的集合,從流中讀出數據作為輸入,產生輸出數據的流。整個係統可以看成多個過濾器複合形成的數據處理組件。
過濾器A
過濾器B
過濾器C
過濾器A
過濾器D
管道
特點:
l過濾器之間是相互獨立的(不能共享狀態),其中一個過濾器的操作和行為不能影響另外過濾器的操作和行為,流的傳送沒有副作用。
讓您第一時間享受最新章節,請訪問𝗼𝗼𝗽.𝘁𝘄
l過濾器對所輸入流的來源和輸出流的去向不關心,不需要知道流的來源和流的去向,來源和去向對於過濾器的數據處理沒有任何影響。
l過濾和流的傳送可以是並發的,可以同時有多個流的傳送存在於係統之中。
實例:
一個最著名的實例是unix的shell編程,多個對數據進行處理的程序(組件)通過管道聯結起來,產生總和的效果;還有傳統的編譯器,源代碼經過詞法分析、語法分析、中間代碼生成、目標代碼生成等步驟生成輸出的目標代碼。
優點:
l整個係統的功能是多個過濾器作用的總和,這樣可以簡化係統的分析和設計,可以經過需求的分析之後將整個係統作為一個過濾器處理,然後再逐步的細化成為多個相互連接的過濾器。
l支持組件的重用,同一個過濾器可以多次出現在係統的不同位置。
l易於維護和增強,過濾器可以被替換,可以增加新的過濾器到係統中而不改變原有的過濾器,不改變原來係統的基本功能。
l本質上的並發性支持,這種體係結構由於本質上是與各個獨立的過濾器的狀態無關的,與並行的流的通過次序也是無關的,所以並發是一個基本的體係結構自然具有的特性。
缺點:
l由於過濾器之間本質上是獨立的,所以設計者必須獨立考慮每一個過濾器的輸入、處理和輸出的過程,對於過濾器邏輯上的共同點和相互關係無法在設計中加以體現。
l由於這種體係的批處理特性,所以不適合開發和用戶交互的應用程序。
l係統的多個處理流之間的共同特性無法提取、多個過濾器之間的共同特性也無法提取,所以增加了設計的複雜性。
數據抽象和麵向對象的體係
在這種體係中,數據和數據上的操作被封裝成抽象數據類型或者對象。係統由大量的對象組成,在物理上,對象之間通過函數或者過程調用相互作用;在邏輯上,對象之間通過集成、複合等方式實現設計的複用。
對象D
對象B
對象A
對象E
對象C
用調象對
用調象對
用調象對
A類
B類
C類
G類
A象對
E象對
F類
合複
承繼
構結輯邏構結理物
:點特
。了明說細詳再不就裡這,多太經已料資的計設和析分統係象對向麵
:點優
;量質的碼代高提,節細的現實了藏隱,性充擴和性活靈了現實,裝封於由
。性用重可的件軟了高提、態多和承繼用使
:點缺
象對個一哪道知須必,候時的能功定特個一現實要需象對個一當以所,的行進用調數函象對的確明過通是互交的間之象對於由,是點缺的要主最