主存储器(main memory)、简称主存,又称内存储器、简称内存[1][2],是用来存放计算机运行时随时需要使用的程序和数据的存储器[3],供中央处理器(CPU)随机存取[1],并与其一起构成主机[2]。一切数据要被CPU操作都必须先装入主存[1]。主存的工作速度较快,存储容量较小,主要采用半导体存储器[3]。目前大部分计算机系统的主存储器主体为动态随机存储器(DRAM)[4],“主存储器”乃至“存储器”一词有时特指DRAM[5];另外,静态随机存储器(SRAM)与只读存储器(ROM)等也可作主存储器的一部分[2][4]。如果需要,可以将主存的内容传输到外部存储器;一种常见的方法是通过称为虚拟内存的内存管理技术来实现这一点。
大多数半导体存储器被组织成存储单元,每个存储单元存储一个比特(0或1)。存储器单元被分组为固定字长的字(word),例如1、2、4、8、16、32、64或128位。每个字可以由N位的二进制地址访问,从而可以在存储器中存储2N个字。
主存储器类型
易失性存储器是需要电力来维持存储信息的计算机存储器。大多数现代半导体易失性存储器是静态RAM(SRAM)或动态RAM(DRAM)。 DRAM在台式机系统内存中占主导地位。SRAM用于CPU缓存。SRAM也存在于需要很少内存的小型嵌入式系统中。
只要连接电源,SRAM就会保留其内容,并且可以使用更简单的接口,但通常每比特使用六个晶体管。动态RAM在接口和控制方面更为复杂,需要定期刷新周期以防止丢失内容,但每比特只使用一个晶体管和一个电容器,使其能够达到更高的密度和更低的每比特成本。[6][7][8]
非易失性存储器即使在没有通电的情况下也可以保留所存储的信息。只读存储器可以作为非易失性主存储器。正在开发的非易失性存储器技术包括铁电随机存储器、可编程金属化单元、自旋转移矩存储器等。
第三类内存是半易失性的。该术语用于描述在断电后具有一些有限的非易失性持续时间,但随后数据最终丢失的存储器。当使用半易失性存储器时,一个典型的目标是提供与易失性存储相关联的高性能和耐久性,同时提供非易失性内存的一些优点。
管理
正确管理内存对于计算机系统正常运行至关重要。现代操作系统有复杂的系统来正确管理内存。不这样做可能会导致错误或性能降低。
内存管理不当是导致错误和安全漏洞的常见原因,包括以下类型:
- 当程序向操作系统请求内存,但在处理完内存后再也不会返回内存时,就会发生内存泄漏。出现此错误的程序将逐渐需要越来越多的内存,直到操作系统内存耗尽。
- 当程序试图访问它无权访问的内存时,就会出现段错误。通常,这样做的程序将被操作系统终止。
虚拟内存(英语:Virtual memory)是计算机系统内存管理的一种技术。它使得应用程序认为它拥有连续可用的内存(一个连续完整的地址空间),而实际上物理内存通常被分隔成多个内存碎片,还有部分暂时存储在外部磁盘存储器上,在需要时进行数据交换。与没有使用虚拟内存技术的系统相比,使用这种技术使得大型程序的编写变得更容易,对真正的物理内存(例如RAM)的使用也更有效率。此外,虚拟内存技术可以使多个进程共享同一个运行库,并通过分割不同进程的内存空间来提高系统的安全性。
存储器保护(英语:Memory protection)是操作系统对电脑上的存储器进行访问权限管理的一个机制。存储器保护的主要目的是防止某个进程去访问不是操作系统配置给它的寻址空间。这个机制可以防止某个进程,因为某些程序错误或问题,而有意或无意地影响到其他进程或是操作系统本身的运行状态和数据。
参见
参考资料
Wikiwand in your browser!
Seamless Wikipedia browsing. On steroids.
Every time you click a link to Wikipedia, Wiktionary or Wikiquote in your browser's search results, it will show the modern Wikiwand interface.
Wikiwand extension is a five stars, simple, with minimum permission required to keep your browsing private, safe and transparent.