在計算機系統中存儲層次可分爲高速緩衝存儲器(Cache)、主存儲器(主存)、輔助存儲器(外存)三級。高速緩衝存儲器用來改善主存儲器與中央處理器的速度匹配問題。輔助存儲器用於擴大存儲空間。算法
1.按照存儲器所處位置分類緩存
(1)內存:也稱主存,位於主機內或主機板上,用來存放當前運行所須要的程序和數據,以便向CPU提供信息。其特色:容量小,速度快。安全
(2)外存:也稱輔存,如磁盤,光盤等,用來存放當前不參加運行的大量數據信息,須要時調入內存。服務器
2.按存儲器的構成材料分類工具
(1)磁存儲器:磁性介質作成,如磁帶,磁盤等。性能
(2)半導體存儲器:根據所用元件又分爲雙極性和MOS型,根據數據是否須要刷新又分爲靜態和動態。spa
(3)光存儲器:利用光學方法讀寫數據的存儲器,如光盤。操作系統
3.按存儲器工做方式分類設計
(1)讀/寫存儲器(RAM):可以讀/寫的存儲器。orm
(2)只讀存儲器(ROM):僅能讀取的存儲器。
4.按訪問方式分類
(1)按地址訪問的存儲器。
(2)按內容訪問的存儲器。
5.按尋址方式分類
(1)隨機存儲器(RAM):可對任何存儲單元讀取數據,訪問任何一個存儲單元的時間是相同的。
(2)順序存儲器(SAM):訪問數據所需的時間與數據所在的存儲位置有關,例如磁帶。
(3)直接存儲器(DAM):介於隨機和順序存取之間的一種,例如磁盤,他對磁道是隨機的,但對於磁道內則是順序的。
Cache用來存放當前最活躍的程序和數據,其特色是:位於CPU和主存之間。容量在千字節到兆字節之間,速度是主存的5~10倍,由快速半導體存儲器構成。CPU的速度遠高於內存,當CPU直接從內存中存取數據時要等待必定時間週期,而Cache則能夠保存CPU剛用過或循環使用的一部分數據,若是CPU須要再次使用該部分數據時可從Cache中直接調用,這樣就避免了重複存取數據,減小了CPU的等待時間,於是提升了系統的效率。Cache又分爲L1Cache(一級緩存)和L2Cache(二級緩存),L1Cache主要是集成在CPU內部,而L2Cache集成在主板上或是CPU上。
Cache存儲器部分用來存放主存的部份拷貝(副本)信息。控制部分的功能是判斷CPU要訪問的信息是否在Cache存儲器中,若在,即爲命中,若不在則沒有命中。命中時直接對Cache存儲器尋址;未命中時,要按照替換原則(當Cache產生了一次訪問未命中以後,相應的數據應同時讀入CPU和Cache。可是當Cache已存滿數據後,新數據必須替換(淘汰)Cache中的某些舊數據。最經常使用的替換算法有隨機算法、先進先出算法(FIFO)和近期最少使用算法(LRU))決定主存的一塊信息放到Cache存儲器的哪一塊裏。
做用:爲了解決CPU和主存之間速度不匹配而採用的一項重要技術。
CPU與cache之間的數據交換是以字爲單位,而cache與主存之間的數據交換是以塊爲單位。一個塊由若干字組成,是定長的。
cache原理圖
高速緩存(Cache)中的地址映像方法
在CPU工做時,送出的是主存單元的地址,而應從Cache存儲器中讀寫信息。這就須要將主存地址轉換成Cache存儲器地址,這種地址的轉化稱爲地址映像。Cache的地址映像有3種方法。
(1)直接映像:主存的塊與Cache塊的對應關係是固定的,所以,只要主存地址中的主存區號與Cache中記錄的主存區號相同,則代表訪問Cache命中,一旦命中,由主存地址的區內塊號當即可獲得要訪問的Cache存儲器中的塊,而塊內地址就是主存地址中給出的低位地址。
(2)全相聯映像:主存的任意一塊能夠映象到Cache中的任意一塊。
(3)組相聯映像:
外存儲器用來存放暫時不用的程序和數據,而且以文件的形式存儲。CPU不能直接訪問外存,只有將其以文件爲單位調入主存才能夠訪問。外存主要分爲:磁表面存儲器,光盤存儲器,固態硬盤
(1)磁表面存儲器:在磁表面存儲器中,磁盤的存取速度較快,而且有較大的容量,是目前市場上普遍使用的外存儲器。磁表面存儲器由盤片,驅動器,控制器和接口組成。盤片用來存儲信息,控制器用來驅動磁頭沿盤面徑向運動以尋找目標磁道位置,驅動盤片以額定速率穩定旋轉,而且控制數據的讀寫。控制器接受主機發來的命令,將他轉換成磁盤驅動器的控制命令,並實現主機和驅動器之間數據格式的 轉換和數據傳送,以控制驅動器的讀寫。接口是主機和磁盤存儲器之間的鏈接邏輯。
(2)光盤存儲器:採用聚焦激光束在盤式介質上非接觸地記錄高密度信息的新型存儲裝置。光盤存儲器具備記錄密度高,存儲容量大,採用非接觸方式讀寫信息,信息可長期保存等優勢.其表面介質不易受潮溼和溫度影響,易於長期保存.CD-ROM光盤只能讀取數據,CD -R光盤能夠寫入一次數據.CD-RW光盤能夠擦寫屢次,單倍速光盤驅動器的速度是150Kb/s,目前最快速的光盤驅動器大約是50倍速,從理論上說它能達到的數據傳輸率是7.5Mb/s,這一速度也遠遠低於硬盤的傳輸速度
(3)固態硬盤:固態硬盤是用固態電子存儲芯片陣列而製成的硬盤,固態硬盤在接口的規範和定義、功能及使用方法上與普通硬盤的徹底相同,在產品外形和尺寸上也徹底與普通硬盤一致。固態硬盤的存儲介質分爲兩種,一種是採用閃存(FLASH芯片)做爲存儲介質,另一種是採用DRAM做爲存儲介質。如今大多使用的都是基於閃存的。
* 基於閃存類:基於閃存的固態硬盤(IDEFLASH DISK、Serial ATA Flash Disk):採用FLASH芯片做爲存儲介質,這也是一般所說的SSD。它的外觀能夠被製做成多種模樣,例如:筆記本硬盤、微硬盤、存儲卡、U盤等樣式。這種SSD固態硬盤最大的優勢就是能夠移動,並且數據保護不受電源控制,能適應於各類環境,適合於我的用戶使用。 通常它擦寫次數廣泛爲3000次左右,以經常使用的64G爲例,在SSD的平衡寫入機理下,可擦寫的總數據量爲64G X 3000 = 192000G,假如你是個變態視頻王天天喜歡下載視頻看完就刪天天下載100G的話,可用天數爲192000 / 100 = 1920,也就是 1920 / 366 = 5.25 年。若是你只是普通用戶天天寫入的數據遠低於10G,就拿10G來算,能夠不間斷用52.5年,再若是你用的是128G的SSD的話,能夠不間斷用104年!這什麼概念?它像普通硬盤HDD同樣,理論上能夠無限讀寫,
基於閃存的固態硬盤是固態硬盤的主要類別,其內部構造十分簡單,固態硬盤內主體其實就是一塊PCB板,而這塊PCB板上最基本的配件就是控制芯片,緩存芯片(部分低端硬盤無緩存芯片)和用於存儲數據的閃存芯片。