隨機存取記憶體

本頁使用了標題或全文手工轉換
維基百科,自由的百科全書
Random Access Memory」的各地常用譯名
中國大陸隨機訪問存儲器、隨機存取儲存器、
內部存儲器(內存)、運行內存
[註 1]
臺灣隨機存取記憶體、暫存記憶體
港澳隨機存取記憶體、隨機接達記憶體、
暫存記憶體

隨機訪問存儲器(英語:Random-access memory縮寫RAM)是與中央處理器直接交換數據的內部存儲器。[1]它可以隨時讀寫(重新整理時除外,見下文),而且速度很快,通常作為操作系統或其他正在運行中的程式的臨時資料存儲媒介。

主記憶體(Main memory)即電腦內部最主要的記憶體,用來載入各式各樣的程式與資料以供中央處理器直接執行與運用。由於 DRAM性價比很高,且擴展性也不錯,是現今一般電腦主記憶體的最主要部分。2011 年生產電腦所用的主記憶體主要是 DDR3 SDRAM,而 2016 年開始 DDR4 SDRAM 逐漸普及化,筆電廠商開始在筆電以 DDR4 記憶體取代 DDR3L。

分類

RAM 記憶體可以進一步分為靜態隨機存取記憶體(SRAM)和動態隨機存取記憶體(DRAM)兩大類。SRAM 具有快速存取的優點,但生產成本較為昂貴,一個典型的應用是緩存。而 DRAM 由於具有較低的單位容量價格,所以被大量的採用作為系統的主記憶體

動態隨機存取記憶體(DRAM)的特點

隨機存取

所謂「隨機存取」,指的是當存儲器中的訊息被讀取或寫入時,所需要的時間與這段信息所在的位置無關。相對地,有串行訪問存儲器包括順序存取存儲器(如:磁帶)和直接訪問存儲器(如:磁盤)。

揮發性

當電源關閉時 RAM 不能保留數據。如果需要保存數據,就必須把它們寫入一個長期的儲存設備中(例如硬盤)。RAM 和 ROM 相比,兩者的最大區別是 RAM 在斷電以後保存在上面的數據會自動消失,而 ROM 則不會。

較高的存取速度

現代的隨機訪問存儲器幾乎是所有存取裝置中寫入和讀取速度最快的,存取延遲也和其他涉及機械運作的儲存裝置(如硬盤光盤驅動器)相比,也顯得微不足道。但速度仍然不如作為 CPU 快取用的 SRAM

需要刷新

現代的隨機訪問存儲器依賴記憶體儲存資料。電容器充滿電後代表 1(二進制),未充電的代表 0。由於電容器或多或少有漏電的情形,若不作特別處理,電荷會漸漸隨時間流失而使資料發生錯誤。刷新是指重新為電容器充電,彌補流失了的電荷。DRAM 的讀取即有刷新的功效,但一般的定時刷新並不需要作完整的讀取,只需作該晶片的一個列(Row)選擇,整列的資料即可獲得刷新,而同一時間內,所有相關記憶晶片均可同時作同一列選擇,因此,在一段期間內逐一做完所有列的刷新,即可完成所有記憶體的刷新。需要刷新正好解釋了隨機訪問存儲器的易失性。

對靜電敏感

正如其他精細的集成電路,隨機訪問存儲器對環境的靜電荷非常敏感。靜電會干擾存儲器內電容器的電荷,引致資料流失,甚至燒壞電路。故此觸碰隨機訪問存儲器前,應先用手觸摸金屬接地

內存的使用

電腦運行時,電腦的主內存按照被使用情況可分類為:[2]

  • 可利用(Available)物理內存:可立即分配給程序使用的內存。包括:
    • 空閒(Free)物理內存:完全未被使用,內容為全 0
    • 緩存(Cached)物理內存
      • 備用(standby)物理內存:操作系統預先把可能要用到的硬盤數據加載所占用的內存,還沒被用戶進程所使用,因此可隨時丟棄從新初始化為 0
      • 已修改(modified)物理內存:已被修改過的 caching 用途的內存,可在任意時刻寫回硬盤文件(不是分頁文件)然後被重用。由於硬盤 I/O,已修改(modified)物理內存不能計入空閒(Free)物理內存
  • 被使用(used)物理內存:已經被進程使用的內存
    • 用戶進程使用的物理內存,即工作集(Working set)。Working Set 包含了可能被其他程序共享的內存,例如DLL。所以所有進程的Working Set加起來有可能大於實際的被使用(used)的物理內存。Private Bytes 是只被本進程提交(commit)的虛擬地址空間,不包括其他進程共享的內存。Virtual Byte 是整個進程占用的全部虛擬地址空間。32 位 Windows 用戶模式下,進程最大可以使用 2GiB,可以通過修改 Boot.ini 文件擴展為最大可以使用到 3GiB。任務管理器中的 Memory Usage 對應的是 working set,VM Size 對應的是 private bytes
    • 核心進程使用的物理內存
      • 分頁的核心進程使用的物理內存:可以交換到分頁文件中,從而可被回收的物理內存
      • 未分頁(Non paged)的核心進程使用的物理內存:不能交換到分頁文件的內存,總是要保留在物理內存中
  • 硬件保留(hardware reserved)的物理內存:被 CPU 中的 GPU 核心或者其他外設硬件占用的,不由操作系統使用的內存

記憶體牆

「記憶體牆」是指CPU與CPU晶片外的記憶體之間的速度差距越來越大,其中一個造成差距的重要原因是晶片邊界之外的通訊頻寬有限,又稱為頻寬牆。從1986年到2000年,CPU所提升速度的年變率達55%,記憶體速度卻只提高了10%。由此趨勢可預料記憶體延遲將成為電腦性能的巨大瓶頸[3]

CPU速度提升明顯放緩,一部分原因是由於重大的物理屏障,一部分原因則是目前的CPU設計已經在某種意義上撞上了記憶體牆。英特爾在一份2005年的文件中總結了這些原因。[4]

首先,隨著晶片幾何尺寸縮小及時脈頻率提高,電晶體漏電流會增加,導致超額的功耗和熱量...其次,因為記憶體的存取時間無法跟上時脈頻率的成長,導致更高的時脈速度所帶來的優勢被記憶體的延遲抵消。第三,對於某些應用,隨著處理器速度的提高(由於所謂的馮·諾依曼瓶頸),傳統的序列架構變得越來越低效,進一步削弱了頻率提高可帶來的收益。此外,部分原因是由於固態元件內產生電感的方法受到限制,訊號傳輸中的電阻-電容延遲英語RC_time_constant會隨著特徵尺寸的縮小而增加,這就額外帶來了頻率增加也無法解決的瓶頸。

相關條目

注釋

  1. ^ 運行內存與運存為錯誤用辭,僅在特指手機內存的非專業交流中流行

參考文獻

  1. ^ 張廣淵; 李晶皎; 王愛俠; 王彩雲; 崔立民; 馬驥. 存储子系统. 張廣淵 (編). 计算机组装与维护教程 (M). 新華書店. 2004年11月: 149. ISBN 978-7-81094-579-0 /TP·354. 
  2. ^ MSDN:The usable memory may be less than the installed memory on Windows 7-based computers
  3. ^ The term was coined in Archived copy (PDF). [2011-12-14]. (原始內容存檔 (PDF)於2012-04-06). .
  4. ^ Platform 2015: Intel® Processor and Platform Evolution for the Next Decade (PDF). March 2, 2005. (原始內容存檔 (PDF)於April 27, 2011). 

外部連結

維基共享資源上的相關多媒體資源:隨機存取存儲器