儲存器簡介

2021-10-03 20:29:20 字數 1402 閱讀 3574

靜態儲存器(sram)

靜態儲存器不需要重新整理,主要用於cache和tlb設計。特點是與cpu的介面簡單且速度快,但**高,耗電量也大。因此一般用於cache和tlb設計,但有一些高效能計算機也拿它當主存用。

動態儲存器(dram)

動態儲存器需要使用乙個小容量的電容來儲存資訊,用電容中有無電荷來表示1和0。由於電容會漏電,所以dram需要定期重新整理。

唯讀儲存器(rom)

與ram不同,rom儲存器的內容即使斷了電也不會丟失。計算機系統中都有rom,用於存放作業系統的初始引導程式。

相連儲存器(cam)

一種特殊的儲存器,content addressable memory可以理解為「可按內容定址的儲存器」。傳統的儲存器是給乙個位址就給出乙個資料,而相連儲存器則相反,給乙個資料就給出資料的位址。相連儲存器可以用於各種有按位匹配要求的場合,比如虛擬儲存器管理、資料壓縮、cache、tcp/ip中的ip位址匹配等。

計算機儲存層次:

出處:《計算機原理與設計》,李亞民著

暫存器堆是速度最快的儲存部件,它在cpu晶元內部。cpu內部使用指令中的暫存器號直接訪問它。第一級cache和第二級cache通常也在cpu片內,而且第一級cache有分開的指令cache和資料cache。第**cache在片外,使用sram。cache對使用者程式來講是透明的,使用者無法用程式對其進行控制和訪問。在有些計算機的體系結構中,cache對作業系統也是透明的;而有些體系結構則提供了特權指令對cache直接進行維護。主存存放指令和資料。硬碟主要用來存放檔案,但它的另乙個功能也很重要,即與主存一起為使用者提供乙個相對大的虛擬儲存器空間。

cache映像機制

直接映像

全相聯映像

組相聯映像

cache塊的替換演算法

lru替換演算法,即淘汰掉最近最少被使用的。

隨機替換演算法

fifo,即先進先出演算法

cache寫策略

寫透寫儲存器並且cache命中時候可以採用寫透策略。在寫cache的同時也寫主存。優點是能夠保持主存與cache的一致性;缺點是增加資料傳輸量,並且寫儲存器要花費更長的時間,或者可以先把資料放在快速的寫緩衝區內,然後再由硬體滿滿寫入。

寫回寫儲存器並且cache命中時除了寫透策略,還可以採用寫回策略。只寫cache而不寫主存,只有當資料塊要被替換時,才將它寫回主存。可以使用乙個標記位,標記資料塊是否被寫過,如果沒有被寫過,則不必寫回主存中。

寫前讀入

寫儲存器但cache不命中時可以採用寫前讀入策略,先把資料塊從主存讀入cache,然後再寫。

寫不讀入

寫儲存器但cache不命中時還可以採用寫不讀入策略,即要開cache,直接寫主存。

虛擬儲存器簡介

把虛擬位址轉換成實際位址這項工作有儲存器管理部件 memory management unit,mmu 完成。管理方法有分段管理 segmentation 和分頁管理 paging 兩種。分段管理 分段管理是把儲存器分為若干段,為乙個程式指定乙個或幾個 段暫存器 這些暫存器指定當前段所在的主存的起始...

儲存過程簡介

儲存過程是sql語句和可選控制流語句的預編譯集合,以乙個名稱儲存並作為乙個單元處理。一 使用儲存過程的優勢 1 模組化程式設計 只需建立過程一次並將其儲存在資料庫中,以後即可在程式中呼叫該過程任意次。2 執行效率的優化 大批量資料操作或重複執行時,儲存過程的優勢將得到很好的體現。只需在首次執行時對其...

儲存過程簡介

sql語句需要先編譯然後執行,而儲存過程 stored procedure 是一組為了完成特定功能的sql語句集,經編譯後儲存在資料庫中,使用者通過指定儲存過程的名字並給定引數 如果該儲存過程帶有引數 來呼叫執行它。儲存過程是可程式設計的函式,在資料庫中建立並儲存,可以由sql語句和控制結構組成。當...