sram
sram的全稱是static rnadom access memory,翻譯過來即靜態隨機儲存器。這裡的靜態是指這種儲存器只需要保持通電,裡面的資料就可以永遠保持。但是當斷點之後,裡面的資料仍然會丟失。由於sram的成本很高,所以像諸如cpu的快取記憶體,才會採用sram。
dram
dram全稱是dynamic random access memory,翻譯過來即動態隨機訪問儲存器,最為常見的系統記憶體。dram 只能將資料保持很短的時間。為了保持資料,dram使用電容儲存,所以必須隔一段時間重新整理(refresh)一次,如果儲存單元沒有被重新整理,儲存的資訊就會丟失。
flash
flash記憶體即flash memory,全名叫flash eeprom memory,又名快閃儲存器,是一種長壽命的非易失性(在斷電情況下仍能保持所儲存的資料資訊)的儲存器,資料刪除不是以單個的位元組為單位而是以固定的區塊為單位,區塊大小一般為256kb到20mb。
快閃儲存器是電子可擦除唯讀儲存器(eeprom)的變種,eeprom與快閃儲存器不同的是,eeprom能在位元組水平上進行刪除和重寫而快閃儲存器是按區塊擦寫,這樣快閃儲存器就比eeprom的更新速度快,所以被稱為flash erase eeprom,或簡稱為flash memory。
由於其斷電時仍能儲存資料,快閃儲存器通常被用來儲存設定資訊,如在電腦的bios(基本輸入輸出程式)、pda(個人數字助理)、數位相機中儲存資料等。另一方面,快閃儲存器不像ram(隨機訪問儲存器)一樣以位元組為單位改寫資料,因此不能取代ram。
nor flash與nand flash
nor flash和nand flash是現在市場上兩種主要的非易失快閃儲存器技術。
intel於2023年首先開發出nor flash 技術,徹底改變了原先由eprom(erasable programmable read-only-memory電可程式設計序唯讀儲存器)和eeprom(電可擦唯讀儲存器electrically erasable programmable read - only memory)一統天下的局面。
緊接著2023年,東芝公司發表了nand flash 結構,強調降低每位元的成本,有更高的效能,並且像磁碟一樣可以通過介面輕鬆公升級。
nor flash 的特點是晶元內執行(xip ,execute in place),這樣應用程式可以直接在flash快閃儲存器內執行,不必再把**讀到系統ram中。nor 的傳輸效率很高,在1~4mb的小容量時具有很高的成本效益,但是很低的寫入和擦除速度大大影響到它的效能。
nand的結構能提供極高的單元密度,可以達到高儲存密度,並且寫入和擦除的速度也很快。應用nand的困難在於flash的管理和需要特殊的系統介面。通常讀取nor的速度比nand稍快一些,而nand的寫入速度比nor快很多,在設計中應該考慮這些情況。
ddr
ddr=double data rate雙倍速率同步動態隨機儲存器。嚴格的說ddr應該叫ddr sdram,人們習慣稱為ddr,其中,sdram 是synchronous dynamic random access memory的縮寫,即同步動態隨機訪問儲存器。而ddr sdram是double data rate sdram的縮寫,是雙倍速率同步動態隨機儲存器的意思。
sdram與dram相比多了乙個同步介面,這個同步介面可以讓sdram與計算機系統匯流排進行同步。
ddr記憶體是在sdram記憶體基礎上發展而來的,仍然沿用sdram生產體系,因此對於記憶體廠商而言,只需對製造普通sdram的裝置稍加改進,即可實現ddr記憶體的生產,可有效的降低成本。
目前ddr儲存器已經發展到了ddr4,智慧型手機以及電腦上都有使用。
HashMap, HashTable有什麼區別?
跟hashmap相比hashtable是執行緒安全的,適合在多執行緒的情況下使用,但是他在對資料操作的時候都會上synchronzied鎖,所以效率比較低下。hashtable 是不允許鍵或值為 null 的,hashmap 的鍵值則都可以為 null。這是因為hashtable使用的是安全失敗機制...
SAS scsi sata ide硬碟有什麼區別
sata是serial ata的縮寫,即序列ata。這是一種完全不同於並行ata的新型硬碟介面型別,由於採用序列方式傳輸資料而得名。sata匯流排使用嵌入式時鐘訊號,具備了更強的糾錯能力,與以往相比其最大的區別在於能對傳輸指令 不僅僅是資料 進行檢查,如果發現錯誤會自動矯正,這在很大程度上提高了資料...
atomic 和 nonatomic 有什麼區別
atomic 和 nonatomic 的區別在於,系統自動生成的 getter setter 方法不一樣。atomic 變數預設是有該有屬性的,這個屬性是為了保證在多執行緒的情況下,編譯器會自動生成一些互斥加鎖的 避免該變數的讀寫不同步的問題。nonatomic 如果該物件無需考慮多執行緒的情況,這...