關鍵詞:
汇编语言
上一章LZ給各位展示了一下hello程序的簡單執行過程,可以看出在這一過程當中,系統在數據的傳輸上花費了大量的時間。硬件開發商為了減少這種數據傳輸的時間成本,采用一種高速緩存的技術去減少這種時間成本。
高速緩存被置放于處理器當中,與處理器中的寄存器文件直接進行數據交換,這樣大大減少了數據傳輸的時間成本,使得程序的運行速度可以得到數倍的提升。而作為一個程序猿,如果可以適當的利用高速緩存去存放一些程序運行過程中可能會經常使用的數據,可以將程序的運行速度提高數倍甚至數個數量級。
由此就可見高速緩存的重要性,下圖展示了硬件分布中,高速緩存的位置。
存儲設備的金字塔
當今的計算機系統當中,基本上全部都置入了各種各樣的存儲設備,這些存儲設備呈明顯的層次結構,它們的特點是容量越大,速度越慢。因此如果按照容量和速度將它們以圖示的方式呈現的話,則看起來就像是一個金字塔,如下所示。(非常感謝群里的猿友【夕惕若厲無咎】提供的英文電子版,這下LZ可以省去很多畫圖的功夫了)
不過這個圖是英文版的,LZ稍微解釋下,有些特別明顯的LZ就不解釋了,如果有哪位猿友實在不明白,可以到LZ的群里提問。
左邊的意思是更小更快更貴的存儲設備,包括寄存器以及L1-L3的高速緩存,以及更大更慢更便宜的存儲設備,包括主存、本地磁盤以及遠程存儲設備。通常意義下,我們將上一層的存儲設備作為當前存儲設備的高速緩存,比如L1的高速緩存是寄存器,L2的高速緩存是L1,以此類推。


本站內容除特別聲明的原創文章之外,轉載內容只為傳遞更多信息,并不代表本網站贊同其觀點。轉載的所有的文章、圖片、音/視頻文件等資料的版權歸版權所有權人所有。本站采用的非本站原創文章及圖片等內容無法一一聯系確認版權者。如涉及作品內容、版權和其它問題,請及時通過電子郵件或電話通知我們,以便迅速采取適當措施,避免給雙方造成不必要的經濟損失。聯系電話:010-82306118;郵箱:aet@chinaaet.com。
