据微软撰写的一份保密的白皮书说,桌面和笔记本计算机可能需要采用错误校正代码(error-correcting code,ECC)存储器,以解决单个比特存储器错误这样的日益增加的系统崩溃问题。这家软件巨头在视窗硬件工程研讨会(Windows Hardware Engineering Conference, WinHEC)的小组讨论会上提出了这个问题,尽管它承认在系统故障上的数据依然是不确定的。
大约4年以来,微软公司一直通过其在线崩溃分析(Online Crash Analysis,OCA)工具收集数据,这些数据向微软的网站报告了系统所出现的崩溃现象。大约18个月以前,微软开始跟系统和芯片制造商分享OCA数据和该白皮书。有消息称,报告表示在DRAM中的单比特错误率是造成系统故障的10大原因之一。
微软承认,该数据依然是不足以定论,因为OCA并没有提供足够的关于出现崩溃故障的系统的类型和这些系统所采用的存储器的类型。因为它试图完善该工具,微软正要求OEM协助提供更多的数据,并考虑在台式机和笔记本电脑中采用ECC存储器。
目前,ECC存储器广泛被用于个人电脑服务器,但是,迄今为止,台式机、笔记本电脑和许多芯片制造商都在抵制ECC存储器,因为它会在模块上增加额外DRAM芯片,从而增加成本,并且要升级芯片组中的存储器控制器。
在WinHEC上,听众当中的一些系统制造商表示支持采用ECC存储器的行动,但是,DRAM制造商在小组讨论会上依然表示怀疑。
“我认为问题是严重的,”HP公司x86服务器组的工程师Jeff Galloway说道。微软已经向他演示了在HP电脑上系统崩溃的数据,看来这些就是源于单比特DRAM错误,并且是在不运行视窗服务器操作系统的所有系统上,他补充道。
Galloway还表示,“整个行业要对此有所作为。微软通过要求它具备Windows Server标志,从而把ECC存储器应用到服务器之中,并且,我认为对于台式机和笔记本电脑现在也要做同样的事情”。
“这种论坛是我们让OEM参与我们将来要做的工作的方式之一,”领导小组讨论的微软公司Windows Server组的程序经理Son VoBa强调,“ECC可能是解决问题的途径”。
单比特错误的原因通常可以追溯到中子辐射的影响,宇宙射线轰击DRAM中的每一个电容,从而改变它们的电荷状态。DRAM制造商表示,那种影响实际上已经随着时间的推移而逐渐减小,并且错误可能来自包括芯片组在内的各种各样干扰源。
“在过去的几代工艺技术中,我们已经看到了软错误率(soft error rates)的下降,”Micron公司的市场开发副总裁Dean Klein认为。
包括三星和奇梦达在内的DRAM制造商还指出SDRAM和DDR1存储器提供笔记本和台式电脑不用的ECC性能,因此,当针对当今的DDR2存储器来设定标准时,工程师不必采用ECC存储器,从而节省了与不用的功能相关的成本。
一家存储器制造商建议,较好的方式可能是在现已工作的DDR4接口标准中创建一种重试设备。一位三星公司的发言人透露,DDR4工作组已经初步讨论了一种监测存储器I/O接口的功能。
来自Envisioneering的分析师Peter Glaskowsky表示,微软早在上世纪90年代中期就推进OEM采用ECC来克服软错误,但是,被拒绝了。OEM拒绝为采用这种转移而承担成本,从而造成由Windows故障造成的系统崩溃比由DRAM软故障造成的系统崩溃的要多。
他补充说,目前Windows操作系统越来越稳定,现在该公司重提该问题是有意义的。然而,这次还不清楚软错误是否已经变得足够重要,从而让OEM信服以作出改变。