CPU、記憶體、硬碟、顯示卡、主機板、顯示器之間的關係

2020-07-16 10:04:19
它們之間的關係可以通過一個例子來說明。比如說開啟一部電影,以下說明這部電影是怎麼執行起來的。

電影是如何執行的

首先要雙擊這部電影,這個“雙擊”是作業系統提供的一個操作。電影本身是放在硬碟上的,當我們通過滑鼠對它進行雙擊之後,作業系統就會將硬碟上的這部電影拷貝到記憶體中。

為什麼要將它拷貝到記憶體中呢?因為CPU不能直接處理硬碟上的資料。所以要先將硬碟上的資料拷貝到記憶體中,然後再通過CPU處理記憶體裡面的這部電影。處理的結果就是將一些資料變成影象、另一些資料變成聲音。影象資料傳送給顯示卡,通過顯示器顯示出來;聲音資料傳送給音效卡,音效卡將它變成聲音放出來。這基本上就是一部電影的執行過程。

CPU為什麼不能直接操作硬碟卻能直接操作記憶體

原因很簡單,因為記憶體的速度比硬碟快很多。CPU 的執行速度很快,硬碟的速度無法跟上 CPU 的速度,所以它們兩個在執行的時候無法同步,因此 CPU 無法直接對硬碟進行操作。

狹義上的記憶體指的就是我們所說的記憶體條,但實際上 CPU 也不是直接操作記憶體的,因為記憶體的速度雖然比硬碟快很多,但仍然沒有 CPU 快。所以在記憶體和 CPU 之間還有“快取”,比如一級快取、二級快取。快取的速度比記憶體更快,更加接近 CPU 的速度,所以 CPU 讀取資料時操作的都是快取。

但廣義上說,快取也屬於記憶體,所以我們就說 CPU 可以直接操作記憶體。

記憶體的速度為什麼比硬碟的速度快

記憶體的速度之所以比硬碟的速度快(不是快一點,而是快很多),是因為它們的儲存原理和讀取方式不一樣。
  • 硬碟是機械結構,通過磁頭的轉動讀取資料。一般情況下桌上型電腦的硬碟為每分鐘 7200 轉,而筆電的硬碟為每分鐘 5400 轉。
  • 而記憶體是沒有機械結構的,記憶體是通過電存取資料的。

電的速度當然要比磁頭的運動快得多。所以,有機械結構的磁頭的讀取速度是不能同無機械結構的電的速度相比的。

那麼記憶體的本質是什麼呢?我們應該都聽說過 RAM 記憶體,它是一種半導體記憶體件。RAM 是英文單詞 Random 的縮寫,即“隨機”的意思。所以 RAM 記憶體也稱為“隨機記憶體”。

那麼 RAM 記憶體和記憶體有什麼關係呢?記憶體就是許多 RAM 記憶體的集合,就是將許多 RAM 記憶體整合在一起的電路板。RAM 記憶體的優點是存取速度快、讀寫方便,所以記憶體的速度當然也就快了。

記憶體通過電存取資料,本質上就是因為 RAM 記憶體是通過電儲存資料的。但也正因為它們是通過電儲存資料的,所以一旦斷電資料就都丟失了。因此記憶體只是供資料暫時逗留的空間,而硬碟是永久的,斷電後資料也不會消失。

為什麼不將記憶體造得跟硬碟一樣大

計算機的記憶體一般是 4GB,而硬碟的容量卻是幾百 GB,甚至 2TB。為什麼記憶體的容量那麼小?既然記憶體速度那麼快為什麼不造得大點?為什麼不造得與硬碟一樣大?

原因主要有三個:
  1. 記憶體的速度之所以比硬碟快,是因為它們的構造不一樣。對於同樣的容量,記憶體的價格太貴。
  2. 記憶體只是暫時儲存資料的,斷電後資料就丟失了,而且它的速度很快,所以不需要那麼大的容量。
  3. 第三個原因與地址匯流排的數量有關,這個後面介紹指標的時候再講。

CPU是如何操作記憶體的

那麼 CPU 是如何操作記憶體的?一般是先將記憶體裡面的資料讀入 CPU 中,然後 CPU 對資料進行處理,處理完了再將結果寫回記憶體,最後記憶體再將資料寫入硬碟。

CPU 對記憶體進行操作通過三根匯流排:控制匯流排、地址匯流排和資料匯流排。
  • 控制匯流排是傳輸控制信號的,比如時鐘、復位、中斷、讀、寫等。CPU是從記憶體中讀資料還是向記憶體中寫資料就是通過控制匯流排控制的。記憶體中有很多儲存單元,資料都儲存在這些單元中,每個單元都有一個地址。所以要想得到這些單元中的資料就必須先知道每個單元的地址。
  • 地址匯流排就是傳輸地址資訊的。
  • 資料匯流排顧名思義就是傳輸單元中的資料的。

主機板的作用

主機板在計算機中起著重要作用。它作為計算機的核心配件之一,是計算機最重要的平台。那這個平台是幹什麼用的呢?

桌上型電腦上所有的裝置都是連在主機上的,而主機上有很多介面,這些介面全部都是連在主機板上的。滑鼠、鍵盤、耳機、顯示屏等外部裝置都是通過這些介面連到主機板上的。在主機內部,電源、風扇、硬碟、光碟機也都是連在主機板上的。而CPU、記憶體條、顯示卡、音效卡、網絡卡這些硬體則全部都是直接插在主機板上的。

所以計算機中所有的硬體要麼是連在主機板上的,要麼是直接插在主機板上的,但不管怎麼樣都是與主機板相連的。而且主機板上有很多線路,所有硬體之間的信號傳輸也都是通過主機板進行的,所有硬體通過主機板被有效組織起來。

此外,主機板還能接收電源提供的電能並加以分配,從而給各硬體供電。而且還能接收電源開關和作業系統發來的開機信號,從而實現開機、關機、待機、重新啟動和休眠等操作。