服务器内存为什么比普通内存贵,有什么区别

服务器内存和普通PC内存都是内存(RAM),在外观和结构上没有什么明显的区别,但是其价格要高于普通内存。

服务器内存也是内存,它与我们平常在电脑城所见的普通PC机内存在外观和结构上没有什么明显实质性的区别,它主要是在内存上引入了一些新的技术,普通PC机上的内存在服务器上一般是不可用的服务器认不到的,这就是说服务器内存不能随便为了贪便宜用普通PC机的内存来替代的原因了。有些人把具有某种技术的内存就称之为“服务器内存”,其实是不全面的,服务器的这些内存技术之所以在目前看来是服务器在专用,但不能保证永远只能是服务器专用。这些新技术之所以先在服务器上得以应用是因为服务器价格较贵,有条件得以应用,这些新技术由于价格的原因暂时在普通PC机上无法实现应用,但是会随着配件价格的下降逐步走向普通PC机,就行原来的奇偶校正内存一样原先也是最先应用在服务器上,现在不是很普遍了吗?所以服务器内存并不是一种特指,它是内存新技术在不同时间段上的应用。

服务器内存主要有SDRAM、 DDR和DDR2三种类型,目前用得较多服务器内存是DDR和DDR2。服务器内存与普通内存相比主要区别就是服务器采用了一些新的技术,例如ECC(错误检查和纠正)、Chipkill、Register(寄存器)、热插拔技术、以及FB-DIMM(全缓冲内存模组)等,目前用的较多的服务器内存主要是采用ECC和REG ECC技术的。从外观来说, ECC内存因为要满足效验纠错的需要,加入了一颗ECC效验颗粒,由于采用的是TOSP封装,使得内存看上去每面有9颗内存颗粒。REG ECC内存上面的芯片一般比普通主板多出2-3个,主要是PLL (Phase Locked Loop)和Register IC。ECC与ECC REG内存是从最初发展到现在已经历了两代,频率主要有133、266、333、400、533、667阶段。 
(一)揭开服务器内存技术的神秘面纱

(1)ECC 
    ECC是一种广泛应用于各种领域的计算机中的指令纠错技术,ECC的英文全称是“Error Checking and Correcting”,对应的中文名称就叫做“错误检查和纠正”,从该名称我们就可以看出它的主要功能就是“发现并纠正错误”,它比奇偶校正技术更先进的方面主要在于它不仅能发现错误,而且能纠正这些错误,这些错误纠正之后计算机才能正确执行下面的任务,确保服务器的正常运行。很多时候听到一些奸商说我们的服务器内存是ECC内存,其实ECC并不是一种型号,而是将ECC技术应用到内存中。ECC内存主要是从SD内存开始得到广泛应用,目前主流的ECC内存主要是SD内存。      (2)Chipkill 
Chipkill技术是IBM公司为了解决目前服务器内存中ECC技术的不足而开发的,是一种新的ECC内存保护标准。ECC内存只能同时检测和纠正单一比特错误,但如果同时检测出两个以上比特的数据有错误,则一般无能为力。由于目前使用的服务器其系统速度都很高,同时出现多比特错误的现象很少发生,因此ECC技术得到了充分地认可和应用,使得ECC内存技术成为几乎所有服务器上的内存标准。 
随着基于Intel处理器架构的服务器的CPU性能在以几何级的倍数提高,而硬盘驱动器的性能跟不上CPU性能,因此服务器需要大量的内存来临时保存CPU上需要读取的数据,这样大的数据访问量就导致单一内存芯片上每次访问时通常要提供4(32位)或8(64位)比特以上的数据,一次性读取这么多数据,出现多位数据错误的可能性会大大地提高,而ECC又不能纠正双比特以上的错误,这样就很可能造成全部比特数据的丢失,系统就很快崩溃了。IBM的Chipkill技术是利用内存的子结构方法来解决这一难题。即单一芯片,无论数据宽度是多少,只对于一个给定的ECC识别码,它的影响最多为一比特。因此,即使整个内存芯片出了故障,每个ECC识别码也将最多出现一比特坏数据,而这种情况完全可以通过ECC逻辑修复,从而保证内存子系统的容错性,保证了服务器在出现故障时,有强大的自我恢复能力。采用这种内存技术的内存可以同时检查并修复4个错误数据位,服务器的可靠性和稳定得到了更加充分的保障。 (3)Register 
   Register即寄存器或目录寄存器,在内存上的作用如同书的目录,当内存接到读写指令时,会先检索此目录,然后再进行读写操作,这将大大提高服务器内存工作效率。带有Register的内存一定带Buffer(缓冲),并且目前能见到的

英特尔大书房 开启一站式检索时代大数据(Big Data)
云计算(Cloud)
移动性(Mobility)
其他(Others) 
 wk_ad_begin({pid : 21});wk_ad_after(21, function(){$('.ad-hidden').hide();}, function(){$('.ad-hidden').show();});    
  
Register内存也都具有ECC功能,其主要应用在中高端服务器及图形工作站上,如IBM Netfinity 5000。 (4)FB-DIMM 
全缓冲内存模组FB-DIMM(Fully Buffered-DIMM)是Intel在DDR2、DDR3的基础上发展出来的一种新型内存模组与互联架构,既可以搭配现在的DDR2内存芯片,也可以搭配未来的DDR3内存芯片。FB-DIMM可以极大地提升系统内存带宽并且极大地增加内存最大容量。与DDR2内存相比FB-DIMM在内存频率相同的情况下目前能提供四倍于普通内存的带宽,并且能支持的最大内存容量也达到了普通内存的24倍,系统最大能支持192GB内存。与普通的DIMM模块技术相比,FB-DIMM与内存控制器之间的数据与命令传输不再是传统设计的并行线路,而采用了类似于PCI-Express的串行接口多路并联的设计,以串行的方式进行数据传输。在这种新型架构中,每个DIMM上的缓冲区是互相串联的,之间是点对点的连接方式,数据会在经过第一个缓冲区后传向下一个缓冲区,这样,第一个缓冲区和内存控制器之间的连接阻抗就能始终保持稳定,从而有助于容量与频率的提升。

时间: 2024-12-31 20:06:44

服务器内存为什么比普通内存贵,有什么区别的相关文章

RAMCloud:内存云存储的内存分配机制

现在全闪存阵列已经见怪不怪了,EMC的XtremIO,还有VNX- F(Rockies),IBM FlashSystem.全闪存真正为效率而生,重新定义存储速度.凭借极致性能,高可用性,为您极大提高企业级应用效率.提到闪存的优势,那么毋庸置疑的就是速度!而在速度优势背后,SSD则面临着价格.容量以及寿命等方面的限制. 当然随着技术的发展,成本的下降,SSD有可能会取代机械硬盘,成为下一代企业存储的主要介质.机械硬盘可能转变为磁带的角色. 但是,闪存速度的确就是现在存储系统的极限吗?现在有需要基于

centos中修改tomcat中JVM非堆内存默认配置解决内存溢出

系统CentOS6.4下yum安装了tomcat6和jdk1.6,安装配置过程如下: http://www.111cn.net/sys/CentOS/72007.htm tomcat中部署两个项目A.B,同时部署时报内存溢出错误,系统CPU负载飙升,而单独部署A.B 和 只部署多个A或者只部署多个B项目系统运行正常. 查看日志报错:OutOfMemoryError: PermGen space-.   查询资料得知:是非堆溢出(永久保存区域溢出) 这种错误常见在web服务器对JSP进行pre c

Windows任务管理器原理+内存管理机密+揭穿内存优化工具的骗局

我们在浏览网页时,也许会经常看到一些弹出广告,例如"整理内存碎片.提升系统性能".或者"大大减少系统和程序崩溃的可能性,回收垃圾内存"等等.如果点击这些弹出广告链接,则会看到某些所谓的优化软件,声称只需花费9.95.14.95或者29.95美元,就可以轻松实现所有的功能.看上去,这些工具软件确实不错,但是实际上最好的情况,这些所谓的内存优化工具没有任何效用:而最差的情况,则可能会严重降低系统性能. 盆盆评注 在国内,广告语更加精彩,"让您的系统运行如飞&q

Win8.1系统安装4GB内存却只有2GB内存怎么办?

Win8.1系统安装4GB内存却只有2GB内存怎么办?   解决方法: 1.首先得确定你的主板型号,从而知道BIOS的厂商.主板的BIOS厂商决定设置的不同. 设置方法: 1.开机按F2或Del键进入BIOS; 2.找到Northbridge/Chipset Features/Advanced Chipset Features/Peripheral Settings这一类的名称的主项,进入; 3.找到Intergrated Graphics/Built-in Graphics/这一项,千万注意不

系统提示“内存不能为read 内存读写错误"的解决办法

及时释放系统内存 我们知道,在运行一些容量较大的程序或者游戏时,需要消耗相当的系统内存资源,要是此时内存空间不够时,那么系统内存读写错误的故障提示很有可能就会发生.为了有效避免这种错误提示,我们最好在运行容量较大的程序或者游戏之前,应该先将计算机系统重新启动一下,这样能够将系统内存空间充分释放出来;如果计算机内存空间本身就比较小的话,那么我们建议各位最好及时升级内存,以便拓展内存的有效使用空间,以防止由于系统内存不足而造成系统内存读写错误的发生. 当然,在系统自身内存空间不足的情况下,我们应该先

SQL SERVER 内存分配及常见内存问题(1)——简介

原文:SQL SERVER 内存分配及常见内存问题(1)--简介 一.问题: 1.SQL Server 所占用内存数量从启动以后就不断地增加:       首先,作为成熟的产品,内存溢出的机会微乎其微.对此要了解SQL SERVER与windows是如何协调.共享内存.并且SQL SERVER的内部对内存的管理机制. 2.在Windows 2003以上版本运行的SQL Server,内存使用量突然急剧下降:      内存是Sqlserver的生命线.在errorlog中,出现一下情况:   

Android 优化二 Java内存分配机制及内存泄漏

Java内存分配机制及内存泄漏目录介绍 1.JVM内存管理 1.1 JVM内存管理图 1.2 Java采用GC进行内存管理. 2.JVM内存分配的几种策略 2.1 静态的 2.2 栈式的 2.3 堆式的 2.4 堆和栈的区别 2.5 得出结论 2.6 举个例子 2.7 调用 System.gc();进行内存回收 3.GC简单介绍 3.1 内存垃圾回收机制 3.2 关于GC介绍 3.3 如何监听GC过程 3.4 GC过程与对象的引用类型关系 4.内存泄漏简单介绍 4.1 内存泄漏的定义 4.2 内

《Oracle高性能自动化运维》一一1.4 Linux内存体系与Oracle内存空间

1.4 Linux内存体系与Oracle内存空间1.4.1 Linux用户空间与内核空间 一般来说,Linux操作系统把虚拟地址空间划分为用户空间和内核空间.例如x86架构下的32位Linux虚拟地址空间是4GB(0x0000 0000-0xffff ffff),其中大致将前3GB(0x0000 0000-0xbfff ffff)划分为用户空间,后1GB(0xc000 0000-0xffff ffff)划分为内核空间. 用户程序只能在用户模式(用户空间)下执行,而不能访问特权模式(内核空间)的数

Linux中进程内存RSS与cgroup内存的RSS统计 - 差异

转载一篇关于进程内存计算和CGROUP内存计算差异的文章http://hustcat.github.io/memory-usage-in-process-and-cgroup/ 在Linux内核,对于进程的内存使用与Cgroup的内存使用统计有一些相同和不同的地方.进程的内存统计一般来说,业务进程使用的内存主要有以下几种情况:(1)用户空间的匿名映射页(Anonymous pages in User Mode address spaces),比如调用malloc分配的内存,以及使用MAP_ANO