随机存取存储器

随机访问存储器英語:缩写:)是与中央处理器直接交换数据的内部存储器。[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]

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

相關條目

注释

  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 (PDF). [2011-12-14]. (原始内容存档 (PDF)于2012-04-06)..
  4. (PDF). March 2, 2005. (原始内容存档 (PDF)于April 27, 2011).

外部連結

维基共享资源上的相關多媒體資源:随机存取存储器

This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.