内存作为服务器中的又一个重要的组成部分,对于企业的应用起着十分重要的作用。如今,企业用户对于服务器的要求逐渐提升,使得在提高内存密度、增大内存容量的同时,保证系统内存的可靠性受到广泛的关注。特别是有自己内存技术的厂商推出自己的服务器内存技术来满足用户对于实效性的应用的需求。
厂商IBM依靠其品牌和技术优势给予服务器行业带来了各项技术,尽管内存技术作为服务器产品中的重要应用部分,但是并不是每个厂商都拥有自己的独特技术。为此服务器内存在普通内存的基础上,进行了一系列的革新,IBM的内存技术对整个服务器稳定性的保障起着至关重要的作用。
IBM的服务器三大内存技术包括:Chipkill内存、Memory ProteXion(内存保护)和Memory Mirroring(内存镜像)。
Chipkill内存技术
对于服务器的内存技术而言,ECC可以说是最为熟知的技术,各大厂商的服务器都支持ECC技术,ECC的英文全称是“ Error Checking and Correcting”(错误检查和纠正),它的主要功能就是“发现并纠正错误”。尽管这种技术可以检测和纠正错误,但是对于同时产生多个错误,该技术无能为力,IBM Chipkill内存技术就是为了ECC内存技术的不足而开发的,是一种新的ECC内存保护技术。
Chipkill内存技术支持下,每个ECC单元可单独用一个数据位来保存的,通过识别码分别保存在不同的内存空间中。即使整个内存芯片出了故障,每个ECC单元也将最多出现一比特坏数据,从而保证内存子系统的容错性,保证了服务器在出现故障时,有强大的自我恢复能力。
另外,Chipkill内存控制器具有类似存储阵列保护模式。即使出现错误,内存控制器能够从失效的芯片重新构造“失去”的数据,使得服务器可以继续正常工作。而这种Chipkill内存技术可以同时检查并修复4个错误数据位,提高服务器实用性。
Memory ProteXion(内存保护)
Memory ProteXion技术最初应用在IBM公司的z系列和i系列大型主机服务器中,相对Chipkill内存技术在保护能力上更加强。
支持内存保护技术的内存位分布
类似硬盘的热备份功能,能够自动利用备用的比特位自动找回数据,从而保证服务器的平稳运行。该技术可以纠正发生在每对DIMM内存中多达4个连续比特位的错误。即便永久性的硬件错误,也可利用热备份的比特位使得DIMM内存芯片继续工作,直到被替换为止。
同时,Memory ProteXion技术比ECC技术纠错更加有效,标准的ECC内存虽然可以检测出2位的数据错误,但它只能纠正一位错误。采用内存保护技术,就可以立即隔离这个失效的内存,重写数据在空余的数据位。而且无需添加另外的硬件、无需增加额外的费用,独立操作系统工作,也不会给系统增加任何额外负担。这种技术可以使减少停机时间,使服务器持续保持高效的计算平台。
Memory Mirroring(内存镜像)
IBM的另一种更高级内存技术就是内存镜像技术,在内存保护能力上更强,弥补了Chipkill修复技术和内存保护技校术都不能完全修复时,可以在系统中运行直到有故障内存被更换。
一般说,内存镜像技术和磁盘镜像技术相仿,都是将数据同时写入到两个独立的内存卡中,内存只从活动内存卡中进行数据读取,当一个内存中有足以引起系统报警的软故障,系统会自动提醒管理员这个内存条将要出故障;同时服务器就会自动地切换到使用镜像内存卡,直到这个有故障的内存被更换。
另外,镜像内存允许进行热交换(Hot swap)和在线添加(Hot-add)内存。因为镜像内存采用的的两套内存中实际只有一套在使用,另一套用于备份,所以对于软件系统来说也就只有整个内存的一半容量是可用的。