專欄講到如今,若是我再問你,計算機五大組成部分是什麼,應該沒有人不知道了吧?咱們這一節要講的內
容,依然要圍繞這五大部分,控制器、運算器、存儲器、輸入設備和輸出設備。前端
CPU所表明的控制器和運算器,要和存儲器,也就是咱們的主內存,以及輸入和輸出設備進行通訊。那問題來了,CPU從咱們的鍵盤、鼠標接收輸入信號,向顯示器輸出信號,
這之間到底是怎麼通訊的呢?換句話說,計算機是用什麼樣的方式來完成,CPU和內存、以及外部輸入輸出設備的通訊呢?
這個問題就是咱們今天要講的主題,也就是 總線。以前不少同窗留言問,我何時會講一講總線。那這一講,你就要聽仔細了。
設計模式
好了,你如今明白計算機裏的總線、各類不一樣的總線究竟是什麼意思了吧?但願這一講可以幫你釐清計算機總線的知識點。如今咱們一塊兒來總結梳理一下這節的內容。
這一講,我爲你講解了計算機裏各個不一樣的組件之間用來通訊的渠道,也就是總線。總線的設計思路,核心是爲了減小多個模塊之間交互的複雜性和耦合度。
實際上,總線這個設計思路在咱們的軟件開發過程當中也常常會被用到。事件總線就是咱們常見的一個設計模式,一般事件總線也會和訂閱者發佈者模式結合起來,
成爲大型系統的各個鬆耦合的模塊之間交互的一種主要模式。緩存
在實際的硬件層面,總線其實就是一組鏈接電路的線路。由於不一樣設備之間的速度有差別,因此一臺計算機裏面每每會有多個總線。
常見的就有在CPU內部和高速緩存通訊的本地總線,以及和外部I/O設備以及內存通訊的前端總線。
前端總線一般也被叫做系統總線。它能夠經過一個I/O橋接器,拆分紅兩個總線,分別來和I/O設備以及內存通訊。天然,這樣拆開的兩個總線,就叫做I/O總線和內存總線
。總線自己的電路功能,又能夠拆分紅用來傳輸數據的數據線、用來傳輸地址的地址線,以及用來傳輸控制信號的控制線。
架構
總線是一個各個接入的設備公用的線路,因此天然會在各個設備之間爭奪總線全部權的狀況。因而,咱們須要一個機制來決定讓誰來使用總線,這個決策機制就是總線裁決。
spa