版权归原作者所有,如有侵权,请联系我们

[科普中国]-运行内存

科学百科
原创
科学百科为用户提供权威科普内容,打造知识科普阵地
收藏

运行内存,也称作主存,是指程序运行时需要的内存,只能临时存储数据用于与CPU交换高速缓存数据,一般多指随机存取存储器(Random Access Memory,RAM)。运行内存的大小直接决定了系统能运行多少程序,运行内存越大,系统运行程序越快。内存的发展与处理器工艺与系统优化程度是密切相关的。 如果处理器性能本身跟不上,或是系统优化效果不佳,就算是配备了更大的内存也是一种资源浪费。

随机存取存储器存储阵列中任意位置的存储单元都能以随机次序迅速地写入和读出数据的存储器。是计算机保 存操作系统、应用程序和用户数据的地方,与硬盘或其他存储设备不同,它可以使处理器更为迅速获得数据,但是关机后在RAM中存储的数据将全部丢失。用户再次开机时,计算机将自动将操作系统和其他文件(通常由硬盘)再次装载入RAM。RAM类似于人的短期记忆,硬盘类似于人的长期记忆。短期记忆针对当前的工作,可以同时存储许多数据。长期记忆可被短期记需要刷新。具有以下特点:

随机存取

所谓“随机存取”,指的是当存储器中的消息被读取或写入时,所需要的时间与这段信息所在的位置无关。相对地,有串行访问存储器包括顺序访问存储器(如:磁带)和直接访问存储器(如:磁盘)。

易失性

当电源关闭时RAM不能保留数据。如果需要保存数据,就必须把它们写入一个长期的存储设备中(例如硬盘)。RAM和ROM相比,两者的最大区别是RAM在断电以后保存在上面的数据会自动消失,而ROM则不会。

较高的访问速度

现代的随机存取存储器几乎是所有访问设备中写入和读取速度最快的,访问延迟也和其他涉及机械运作的存储设备(如硬盘、光盘驱动器)相比,也显得微不足道。但速度仍然不如作为CPU缓存用的SRAM。

现代的随机存取存储器依赖电容器存储数据。电容器充满电后代表1(二进制),未充电的代表0。由于电容器或多或少有漏电的情形,若不作特别处理,电荷会渐渐随时间流失而使数据发生错误。刷新是指重新为电容器充电,弥补流失了的电荷。DRAM的读取即有刷新的功效,但一般的定时刷新并不需要作完整的读取,只需作该芯片的一个列(Row)选择,整列的数据即可获得刷新,而同一时间内,所有相关记忆芯片均可同时作同一列选择,因此,在一段期间内逐一做完所有列的刷新,即可完成所有存储器的刷新。需要刷新正好解释了随机存取存储器的易失性。

对静电敏感

正如其他精细的集成电路,随机存取存储器对环境的静电荷非常敏感。静电会干扰存储器内电容器的电荷,引致数据流失,甚至烧坏电路。故此触碰随机存取存储器前,应先用手触摸金属接地。

RAM可被分为两大类:主存,它用于保存各种处理器需要使 用的数据,可以加快计算机的运算速度;显存,它用于保存将要显示在显示器上的图形信息,可以使显示速度大大加快。主存又可以被分为SRAM和DRAM两种。SRAM 是一种价格比较贵的存储器,而且占用的物理空间比较大,难于集成,但是因为它不用刷新,所以访问速度快。SRAM通常用于一级 缓存和二级缓存。DRAM因为使用电容,所以必须间隔一定时间对其内容进行刷新,否则内部的数据就会丢失。对DRAM来说,在每次读取实际上是一次放电,都必须对电容进行充电,保证其内容的有效性,即使不对它进行读取,每15毫秒也需要对它进行一次刷新,它的价格是RAM中最便宜的。

使用情况计算机运行时,计算机的主内存按照被使用情况可分类为:

可利用(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。task manager中的Memory Usage对应的是working set, VM Size对应的是private bytes。

核心进程使用的物理内存

分页的核心进程使用的物理内存:可以交换到分页文件中,从而可被回收的物理内存

未分页(Non paged)的核心进程使用的物理内存:不能交换到分页文件的内存,总是要保留在物理内存中

硬件保留(hardware reserved)的物理内存:被CPU中的GPU核心或者其他外设硬件占用的,不由操作系统使用的内存。

手机运行内存一般对于Android手机而言,大内存手机的优势会更大,因为手机的程序都是在RAM内存中进行读写的,而读写速度与手机的性能也有一定的关系。 更大的 RAM 内存可以给手机带来更充足的缓冲空间, 随着系统本身以及应用本身的膨胀,RAM 内存的作用更明显。然而这并不意味着只要是大内存就一定更合适。

(1)羊毛出在羊身上,更大的内存最终也需要消费者去买单, 势必会增加用户选择手机的成本以及潜在的耗电量。

(2)大内存可能是手机厂商的一种营销手段 ,通过参数引诱消费者选择大内存的手机。

(3)不能盲目地相信内存总数 。 根据手机系统定制化的不同,实际可用的运行内存也会有相应的浮动。 比如一款机型是 4GB 内存, 但实际上可用内存空间只有2GB 左右。

(4) 市面上的内存有DDR4,DDR4 相比之前的 DDR3 在速度和功耗控制上有大幅增强,

所以如果同等 RAM 容量的手机, 一定也要看清楚是 DDR4 还是DDR3。

(5)RAM 内存的大小会在一定程度上影响手机速度,但并不是决定性因素,毕竟手机运行速度是由 CPU、GPU、RAM、ROM、系统优化共同来决定的1。

本词条内容贡献者为:

刘宝成 - 副教授 - 内蒙古民族大学