天天看點

深入了解計算機系統學後感,深入了解計算機系統讀後感-第一章

計算機系統是由硬體和軟體構成的,它們共同工作來運作應用程式。雖然系統的實作方式随着時間不斷變化,但是系統内在的概念卻沒有改變。所有計算機系統都具有相似的硬體和軟體元件,它們又執行着相似的功能。

典型系統的硬體組成主要有以下幾個方面:

總線

貫穿整個系統的是一組半導體,又稱總線。它攜帶資訊位元組并在各個部件之間傳遞。通常總線被設計成傳送定長的位元組塊,也就是字。字中的位元組數是一個基本的系統參數,各個系統中都不盡相同。現在大多數機器的字長要麼是4個位元組,要麼是8個位元組。對于 64位系統來說,字長是8個位元組。

I/O裝置

I/O裝置是系統與外部世界的聯系通道。常見的例如滑鼠,鍵盤,顯示器,列印機,磁盤。每個IO裝置都通過控制器或者擴充卡與IO總線相連。

主存

主存是一個臨時儲存設備,在處理器執行時,用來存放程式和程式處理的資料。從實體上來說,主存是由一組動态随機存儲晶片(DRAM)組成,從邏輯上來說,主存是一個線性的位元組數組,每個位元組都有一個唯一的位址(數組索引)。這些位址是從零開始的。

CPU

中央處理單元,簡稱處理器。是解釋儲存在主存中 指令的引擎。處理器的核心是一個大小為一個字的儲存設備(寄存器),成為程式計數器(PC)。在任何時刻,PC都指向主存中的某條機器語言指令。從系統通電開始,直到系統斷電,處理器一直在不斷的執行程式計數器指向的指令,再更新程式計數器,使其指向下一條指令,而這條指令并不一定和在記憶體中剛剛執行的相鄰。                                                                       這樣的簡單操作并不多,他們圍繞着主存,寄存器檔案,和算術、邏輯單元進行。這些硬體組合在一起,構成了計算機系統的硬體

深入了解計算機系統學後感,深入了解計算機系統讀後感-第一章

高速緩存

系統花費了大量的時間把資訊從一個地方挪到另一個地方。當程式加載時,它們被複制到主存,當處理器運作程式時,指令又從主存複制到存儲器。這些複制就是開銷,系統設計者的一個主要目标就是使這些複制操作盡快的完成。                                                                                      根據機械原理,較大的儲存設備要比較小的儲存設備運作得慢。而快速裝置的造價遠高于同類的低速裝置。比如說,一個典型裝置上的磁盤驅動器可能比主存大1000倍,但是對處理器而言,從磁盤驅動器讀一個位元組的時間開銷要比主存中讀取的開銷大1000倍。一個典型的寄存器存儲隻存儲幾百位元組的資訊,而主存裡可存放幾十億位元組。然而,處理器從寄存器檔案中讀資料比從主存中讀取幾乎要快1000倍。針對這種處理器和主存中間的差異,系統設計者采用了更小更快的裝置,稱為告訴緩存存儲器,cache memory,簡稱為cache。作為暫時的存儲區域,儲存處理器近期可能需要的資訊。主流的CPU現在都有L1和L2 cache,L1 cache位于處理器晶片上,通路速度和寄存器一樣快,容量達數萬位元組。L2容量通常為數十萬到數百萬位元組,通過一條特殊的總線連接配接到CPU,CPU通路L2高速緩存的時間要比通路L1慢5倍,但是仍然比通路主存的時間快5-10倍。比較新,處理能力更強大的CPU甚至有三級緩存。L1,L2,L3可以讓CPU獲得一個很大的存儲器,同時速度也很快。原因是利用了高速緩存的局部性原理,即程式具有通路局部區域的程式和代碼的趨勢。通過讓高速緩存裡存放可能經常通路的資料,大部分的記憶體操作都能在快速的高速緩存中完成。

儲存設備層次結構

每個計算機系統的儲存設備都被組織成了一個層級結構:

深入了解計算機系統學後感,深入了解計算機系統讀後感-第一章

在這個存儲的層級結構裡,從上至下,裝置的通路速度越來越慢,容量越來越大,并且每位元組的造價也越來越便宜。寄存器在層級結構裡位于最頂部。

層次結構的主要思想是上一層的存儲器作為下一層存儲器的高速緩存。是以,寄存器就是L1的高速緩存,L1就是L2的高速緩存,L2是L3的高速緩存,L3是主存的高速緩存,而主存又是磁盤的高速緩存。

聲明:本人尊重原著版權,文章僅記錄學習心得,不得進行轉載或用于商業用途。