分享

内存的作用

 zshx 2010-05-12
             内存的作用
        一般计算机使用者在发现自己的电脑的性能越来越慢时,总会想到先升级CPU,好让计算机跑的更快,因为 CPU 速度越快,处理速度越快,计算机自然就快了起来,而这一大笔钱花下去,到最后发现预算快不够时,就随便买条内存,反正只要容量够的话,便宜就好!其实,这样的作法正是购买计算机时最忌讳的事!!
其实除了升级 CPU ,你还有更好的方法!影响计算机整体性能的因素很多,例如 CPU 、主板、显示卡、硬盘、内存、甚至操作系统的选择等等,都会影响到计算机整体的运作性能,所以光是提升 CPU 以取得更好性能的作法,不见得是明智的选择,因为更新 CPU 来提升系统性能的作法,虽然能有立竿见影的效果,计算机用起来确实能明显感受到快了不少,但是升级上的费用却相当庞大,假如所升级的处理器又是不同架构的话,这可是连主板也得跟着一起换才行,当然!这一换下来没有个千把块是打发不了的,所以预算有限的消费者,可以选择另一种提升方法,那就是增加内存容量。
       “容量越多越好!”这是仁者见仁,智者见智的说法,不过一般来讲,当使用者进入操作系统后,所占用的内存其实不算少,以 Windows XP 为例,在开完机且未开启任何应用程序的情况下,光是看到桌面主题这个动作,就已吃掉将近8、90 MB 的内存(视系统启动程序而定),不信的话读者可以自行在进入桌面后,叫出 “Windows 任务管理器”看看(按 Ctrl+Alt+Del ),右边那一排即是系统“已经”占用的内存资源,加一加没有个一百 MB ,也有个半百 MB ,所以使用者只要再多开几个程序,内存被占用光的情况是可以预期的,而这时候,你会发现系统怎么越用越慢,光是开个网页就要等好久,更别说进游戏了,而会造成这个原因,是 Windows XP 正在执行 Swapping 这个动作所致。

按下 Ctrl+Alt+Del 键,可以启动任务管理器,这时可以得知系统所耗用的内存有多少
何谓 Swapping ?
在安装完 Windows XP 时,操作系统会把“硬盘”的储存空间,分割一部份作虚拟内存用,这部份的空间是不能储存文件的,而是提供给 Windows XP, 当发现内存不够用时,以这部份的空间当内存来使用,以解决内存被占光的问题,而当使用“磁盘空间”替代“内存空间”的这个动作,就是 Swapping ,这正是造成系统变慢的主要原因,不过读者别以为只有 Windows XP 会以 Swapping 来解决内存不足的问题,其实各种操作系统都会,例如 Linux ,在一开始安装操作系统时,即会要你指定 Swap 的空间大小,他就是让使用者设定要提供多少“磁盘空间”供 Swapping 用,只不过 Windows XP 是全自动自己设定的。

页面文件即是Swapping内存,也就是磁盘空间所虚拟的内存
经过测试,计算机从内存存取时间大约需要 200ns( 纳秒 ), 但从硬盘存取则需要 12,000,000ns ,这二者之间相差 600,000 倍,这也正是使用者会觉得计算机越来越慢的因素,因为本来 CPU 在处理数据时,都是从内存上面来读取,速度相当的快,可是当 Windows XP 使用了 Swapping 后,就变成从硬盘上面来读取,整个系统性能自然就慢了下来,这时使用者会发现,怎么硬盘灯一直闪,一直在跑!正是这个原因,而现在大多数的 3D游戏,如魔兽争霸 III ( Warcraft III )等等,都是相当吃内存的游戏,所以玩久了,一定会发现越跑越慢,因为内存已经不负使用,而改用虚拟内存,这会儿硬盘可是操的很凶呢!
所以,使用者只要增加系统内存,让 Windows XP 不去执行 Swapping 这个过程,整个计算机性能自然会很快,记住!这与提升 CPU 所达到的加快处理速度不同,而是减少让操作系统去使用到虚拟内存的机会,这不仅让计算机在高速运作下的时间变长,换句话说,也间接提升了硬盘使用寿命,所以聪明的使用者,在升级计算机的同时,应该先考虑系统内存的多寡才是最聪明的,因为不管你的 CPU 处理速度有多快,如果遇上是从硬盘读取数据来处理的话,基于硬盘的机械结构问题,是怎么快也快不上来!
那么,读者一定有个疑问,到底要多少的内存容量,系统才会足够呢?以 Windows XP 为例,官方所建议的最佳化内存容量为 128MB ,但笔者觉得这根本不够,至少要 256MB ,才够让一般使用者感受到他的快速,而如果使用者有玩大量场景的 3D 游戏的话,至少要 512MB 以上才够看!所以如果你的内存容量仍旧在 128MB 的话,赶快升级一下吧!那么,要升级内存的话,必须先了解内存,以市场上的主流内存DDR SDRAM为例,接下来笔者就教教大家,怎么认识内存!!
SIMM内存
最早出现的内存模块,说实话已不可考,因为各家的规格并不一样,谁是最早出现的,很难查证,但真正被业界大量采用的,是以SIMM ( Single In-Line Memory Module )模块为基础的内存,他是一种正反两面线路都连在一起的内存,以8位(8bit)为一个单位做传输, Pin脚数为 30 ,后来当 CPU 进演到 32 位处理时, SIMM 规格的内存也演进到能够传输 32 位( 32bit ), Pin 脚数也提升到 72Pin ,而这二个类型的内存在 Pin 脚数上不仅不同,连长度也不一样,直到 586 时期, 72Pin 的内存仍旧被大量采用。

30Pin 的 SIMM 内存

72Pin 的 SIMM 内存

早期的 SIMM 插槽
DDR内存
由于 SIMM 内存是以正反两面都连在一起的线路所设计,到了后期无法符合内存颗粒渐增的问题(因为内存颗粒密度加大,容量变多),于是发展出 DIMM ( Dual In-Line Memory Modules )为基础线路设计的内存,他的设计类似于 SIMM 技术,不过正反两面的线路设计是分开的,各自拥有其独立的线路,数据传输也提升到 64 位( 64bit ),针脚数也增加到 168Pin ,所以在长度上比72针的SIMM 内存更长。
Synchronized DRAM (SDRAM)
在 1996 年时期, SDRAM 技术出现在业界上,他是让内存“首次”以频率为标准的设计,目的是让内存工作频率与中央处理器计时同步化,这使得内存控制器能够掌握准备所要求的数据所需的准确频率周期,因此中央处理器从此不需要延后下一次的数据存取。而 SDRAM 的规格不止一种,有最先推出的 PC66 SDRAM ,即是以 66MHz 为工作频率, PC100 SDRAM ,即是以 100MHz 为工作频率,以及后来的 SDRAM 等,而 SDRAM 是以 DIMM 为架构所设计的内存。

Synchronized DRAM
Double Data Rate Synchronized DRAM (DDR SDRAM)
2000年底,由Intel主导的 Rambus 内存,与 VIA 和 AMD 主导的 DDR SDRAM 内存规格之战,一直是 DIY 玩家茶余饭后的话题,而这场内存战争最后由 DDR SDRAM 阵营获胜。 DDR SDRAM ,全名为( Double Date Rate Synchronized DRAM ),是新一代的 SDRAM 技术,与传统的 SDRAM 技术差别在于,他可以在一次的频率周期中的波峰及波谷(也就是上升与下降)传送数据,达到二倍的数据量,举例来讲,以 133 MHz 的内存总线设计的 DDR SDRAM ,即可达到 266MHz 的实际数据传输率,这不仅让内存厂商不需更换大量硬设备即可量产,在成本上也容易控制,使得目前的内存架构主流变成 DDR SDRAM 。

历代主流内存
PC2700 ? PC3200 ?这是什么?
常常在电脑商场的广告 DM 上,或是一般的计算机类书报杂志,会看到这类名词“PC3200 、 256MB DDR RAM ”,或是“DDR400 、 256MB DDR SDRAM”,到底这个 PC3200 、 DDR400 是什么意思呢?先前提到过,以 133MHz 所设计的 DDR SDRAM ,可以达到 266MHz 的实际传输频率,所以这组跑 266MHz 的 DDR SDRAM 内存,又可称为 DDR266 SDRAM 内存,同理, DDR400 SDRAM 即是指他可以跑 400MHz 的实际传输率。
那 PC 3200 又是什么?他即是指内存的数据传输量,以 DDR400MHz 为例,他的频率为 200MHz ,但是他支持 Double Data Rate 技术,所以实际频率要乘以 2 ,也就是 200x2=400MHz ,而 DDR SDRAM 是以 DIMM 为基础架构,一次可以传送 64 位(也就是 64bit ),如果换算成字节( Byte ),就要除以 8 ,也就是 64 / 8 = 8Byte ,所以 DDR400 的实际传输量如下:
200(MHz)×2×8(Byte)=3200 MB/s (单位为Byte)
所以读者了解了吗? PC 3200 等同于DDR 400的内存,只是PC 3200所代表的意思是内存的传输量,而 DDR400 所代表的是内存的频率,换言之, PC2700 即是 DDR333 、 PC2100 即是 DDR266 。
内存判断方式
要看一条 DDR 内存的好坏,最简单的方式即是选择“厂商”,选择较有名的厂商,比较有保障,一来品质较稳定,二来厂商也不会因为丢了自己的信誉,而夸大内存频率,不过这里笔者还是教一下,怎么看一条 DDR 内存,要看一条 DDR 内存的好坏,可以从规格以及内存颗粒二方面所着手,规格指的是内存工作频率,以及 CL 时间(稍后再述),内存颗粒指的是内存上所采用的内存颗粒为何,一般只要是大厂,所搭配的内存颗粒都不会太差,且品质相当稳定,不过如果遇到杂牌的内存,读者可要多费心了,要看一下内存颗粒上所标示的工作频率是否符合包装盒上的标示,才不会被骗,那要怎么判断内存颗粒的工作频率为何呢?一般来讲,在内存颗粒的上面,都会有一组型号,在型号的最后面,都会有一个数字,有可能是 6 ,有可能是 5 ,或是 4 ,当然命名方式各家都不相同,以 KINGMAX 的 DDR433 内存为例,上头的内存颗粒采用 KINGMAX KDL388P4EA-46 ns ,也就是 4.6 纳秒,这时读者可以以 1000 去除以 4.6 ,会得 217.39 ,而这个数字也就是这款内存颗粒的工作频率,由于他是 DDR SDRAM ,所以 217 要再乘以 2 得 434 ,才是真正的工作频率,符合包装盒上所标示的 DDR433 规格,所以这个方法,读者也可以用来判断你家里的内存颗粒,看看是不是符合包装盒上所标示的规格哦!

KINGMAX DDR433 内存采用 KDL388P4EA-46 ns 颗粒
计算出来的频率,符合内存上所标示的规格
内存的运作方式
那么,内存是如何运作的呢?在讲这个之前,先来了解一下跟内存速度有相当大关系的三个名词,分别是 CAS Latency (行地址控制器延迟 / CL )、 RAS-to-CAS Delay (列地址控制器至行地址控制器延迟)、以及 Row Active Time (列动态时间),当然读者看到这些专有名词时,一定会跟笔者一样,看的一头雾水,什么行?什么列,看不太懂,没关系,笔者把他解释的白话一点,应该就看的懂了。
内存的数据单元是以矩阵( Matrix )方式做排列,由行与列的所交错而成,而每一个交叉点即代表一个内存位,数据便是储存在这个内存位上,换句说话,读者可以把整个内存看成一个窗体,数据是储存在窗体中的表格内,循序储存,而它的运作方式是,首先内存控制器先送出单元的列地址,作为模块逻辑寻址用,在经过一段时间,列地址会被送去暂存区,接着控制器会再送出行地址控制,以传送行地址讯号,一直到选择单元的内容送至内存芯片的输出寄存器( Output Register )上,再进行下一次动作,所以 RAS-to-CAS Delay 指的是列地址暂存后,到行地址执行的这段时间,而 CAS Latency 指的是行地址送出信号的时间,所以二者的时间越短,内存的执行效率就越快,而如果储存数据刚好相临的话,只需变成行地址讯号即可,因为内存控制器已经知道列地址,不需再重新寻址一次,所以行地址控制器延迟( CAS Latency ,又称 CL )在内存的处理性能中就扮演着相当重要的角色,也是一般内存上最常标示的项目,那读者会问,列与列更换时是什么?就是 Row Active Time (列动态时间)。
Bank 区块寻址
支持 DDR 内存的芯片组,会把内存储存区再细分成四个块( Banks )或是更多,每个分离的部份即代表了一个内存区 Bank ,换句说话,内存控制器可以分别对这四个部份做同步寻址,因此而增加了数据的传输率,因为当数据被一个内存 Bank 读取时,另外一个 Bank 可以寻址新的资料区,所以一般在主板的说明手册上,常看到主板支持内存几个 Bank ,如何搭配,即是指这个意思,如 Intel 845G 支援 4 个 Bank , Intel 865PE 支持 8 个 Bank ,即指是可以对 4 或是 8 个 Bank 做同步寻址。
双面不代表就是双 Bank
有些内存在设计上为了增加性能,会以 2 个 Bank 做设计,而不是以 1 个,不过一般人常会把二个 Bank 与二面内存搞混,其实这是错的,内存的双面设计,与是否采用 2 Banks 设计是不同的,双面设计是以实体线路的方面做区分,把内存颗粒分别设计在正反两面, 2 Banks 是以电气方面做区分,把内存数据单元分成二部份,二者不能混为一谈,因为一条双面的 DDR 内存,有可能只采用 1 Bank 设计,而不是 2 Banks 。

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多