很抱歉,如果措辞不佳,但是我已经在一台计算机上进行了内存测试,并且某些内存地址有错误。这是我第一次搜索。如果您需要更多信息,那么我可以提供。
如果您查看/etc/default/grub
,则会找到一个GRUB_BADRAM=
参数,可以在其中识别存在哪些错误的内存位置。
# Uncomment to enable BadRAM filtering, modify to suit your needs
# This works with Linux (no patch required) and with any kernel that obtains
# the memory map information from GRUB (GNU Mach, kernel of FreeBSD ...)
#GRUB_BADRAM="0x01234567,0xfefefefe,0x89abcdef,0xefefefef"
设置地址后,运行sudo update-grub
以应用。
取自https://help.ubuntu.com/community/BadRAM#BADRAM_setting_in_Grub2 ...
Grub2中的BADRAM设置
Natty中的GRUB2配置文件中有一行用于配置内核坏RAM排除。因此,我将假定这是映射显示错误的内存部分的首选方法。我设定的线是
GRUB_BADRAM="0x7DDF0000,0xffffc000"
我可以在每个网站上找到的建议方法是将其设置为运行memtest86,并向其显示BadRAM设置。memtest86给了我一页我必须输入的内容。我可以看到所有地址都在一个16K块中,所以我只想将该16K块映射为无效。这是我生成正确条目的方式。
第一个参数很简单。那是坏内存的基址。以我为例,我可以看到所有错误地址都大于0x7DDF0000且小于0x7DDF4000。因此,我以16K块的开头作为我的起始地址。
第二个参数是掩码。将1放在您想要的地址范围共享相同值的位置,将0放在会变化的地址范围。这意味着您需要选择地址范围,以使仅低阶位发生变化。看我的地址,面具的第一部分很简单。您要以0xffff开头。对于下一个小节,我将用位图进行说明。我的范围是0000至0011。因此,badram的掩码为1100或十六进制c。最后3个半字节在掩码中必须全部为0,因为我们希望将整个范围都映射出来。因此,我们得到的总结果为0xffffc000。
在/ etc / default / grub中设置此行后,我运行sudo update-grub并重新启动,并且不再使用我的错误内存。使用此方法不需要内核补丁即可映射出错误的内存。
当然,最好的措施是更换有缺陷的RAM。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句