如何快速处理内存出错故障问题

   启动系统或运行应用程序时,系统报:“error:unable to control A20 line”、“memory write/read failure”或报:“memory allocation error”等,这些问题都属内存出错故障,它与内存减少、内存不足及奇偶检验错误不同。

  系统报“内存出错”有三种情况,分别由不同原因造成。一是开机自检时报“内存出错”,引起该故障的原因主要是内存条或内存控制器的硬件故障;二是在CMOS中设置了启动系统时不自检1M以上内存,而在运行应用程序时系统报“内存出错”,引起该故障的原因可能是内存条或内存控制器的硬件故障,也可能是软件故障;三是开机自检通过,进入DOS或Windows平台,在运行应用程序时报“内存出错”,引起该故障的原因主要是软件故障。

  对于由软件故障造成的内存出错,可按下列步骤检查和处理:

  1.如果是在DOS环境下运行应用程序时报“内存出错”,则怀疑是否是内存分配出错,检查DOS与运行的应用程序是否冲突,并作出相应的处理。一般可通过重新启动系统或重新编写系统配置文件来解决,对应用程序的问题则可通过相应的修改来解决。

  2.如果是在Windows环境下运行应用程序时报“内存出错”,则怀疑是否是由应用程序非法访问存储器造成的,一般可通过清除内存驻留程序,减少活动窗口,调整配置程序或重新安装系统和应用程序来解决。

  3.假如问题只是在运行一特殊的应用程序才出现,可能是由该软件造成的。

  4.用KILL或KV300+检测系统是否带有病毒,有则杀毒。

  硬件故障造成的内存出错比较常见,CMOS设置错误、内存条接触不良、内存条安装组合错误、内存条硬件损坏、内存控制器出错等均会造成内存出错,一般可按下列步骤检查和处理:

  1.由于开机自检即显示“内存出错”,首先进入CMOS设置,检查CMOS中关于内存条的参数设置是否正确,是否与内存条的配置情况相符;比如,如果设置的内存读写周期或内存读写等待时间小于内存条实际值,则应增大内存读写周期或者增加内存读写等待时间。

  2.假如故障仍存在,检查内存条与内存插座槽之间接触是否良好,并作出相应的处理。

  3.假如故障仍未排除,检查内存条的安装组合是否正确。 一般主板的存储器安装插座分为几个体(Bank),每个体中有二至四个存储器安装插座,可安装二至四个存储器条。由于72线的内存条一次可以提供32位有效数据(30线内存条已淘汰,在此不予讨论),对于Pentium类CPU,其数据线为64位,要一次能存取64位数据,就必须同时安装两个72线内存条,所以586级微机的主机板,一般必须按偶数安装72线内存条,即一次应安装2条或4条72线SIMM存储器条。如果主板上的内存条插座是168线的,由于168线的内存条一次就可以提供64位有效数据,所以只安装一条也能正常工作。安装内存条时应注意以下几点:

  ·对大多数PC机来说,不能在同一个Bank内将容量不同的SIMM条混插在一起。很多PC机都可安装不同容量的SIMM条,但装在同一组Bank中的所有SIMM条必须具有相同的容量。

  ·对于很多PC机来说,若把不同速度的SIMM条混插在一起,即使它们的容量相同,也会带来麻烦。例如,计算机中已有运行速度为60ns(纳秒)的16MB内存,如果在主板的空闲内存槽中再插入速度为70ns的SIMM条,系统就有可能会拒绝引导或在启动后不久就陷于崩溃。对于某些微机来说,若把速度低的SIMM条放至第一组,则可解决速度混合问题,计算机会按最低速度存取。

  ·对于大多数PC机来说,必须将一组中的所有插槽都插满,或者将一组全部置空(当然第一组不行),在一组插槽中不能只插一部分内存条。

  ·PC机可接受的内存大小有一个上限(最大值可从PC机说明书中找到。若没有说明书,唯一的方法就是从实践中找到最大值了)。

  ·SDRAM是新一代的动态存储器,又称为同步动态存储器或同步DRAM。虽然有不少主板支持SDRAM与EDO内存混合安装,但是最好还是不要混用。原因是SDRAM只能在3.3V电压下工作,而EDO内存则多数在5V电压下工作。虽然主机板上对DIMM和SIMM分别供电,但它们的数据线总是要连在一起的,如果SIMM(72线内存)与DIMM(168线SDRAM)混用,尽管开始系统可以正常工作,但在使用一段时间后,可能会造成SDRAM的数据输入端被损坏。当然,假如你的SDRAM是适合宽电压(3V~5V)工作的产品,就不会出现这种损坏情况。

  4.假如故障还未解决,则用替换法检查内存条是否已损坏,并作出相应的处理。

  5.假如以上措施均不能奏效,则怀疑主板或控制芯片有问题,可送专业人员检修。

时间: 2024-07-28 13:43:24

如何快速处理内存出错故障问题的相关文章

几种常见的内存BIOS故障现象及解决方案

  内存是电脑运行时的工作"仓库",内存故障在电脑故障中占有相当大的比例.而且内存故障有时比较隐蔽,判断比较麻烦.本位就为大家介绍一些常见的内存BIOS故障现象及如何解决的方法.希望能给大家带来一点帮助. 1.Memory Test Fail 电脑开机后,自检提示信息是"Memory Test Fail",这句话的含义是内存测试失败.通常这种情形一般都是因为内存不兼容或故障所导致,所以每次开机先以一条内存测试,找出故障的内存,把它拿掉或送修即可. 2.内存检测时间长

内存异常故障排除法

当启动电脑.运行操纵系统或应用软件的时候.经常会由于内存出现异常而导致操纵失败.在这里总结了一些内存出现异常的原因,并给出以下几种处理方法,希望可以给大家一些帮助. 故障一:内存条与主板插槽接触不良.内存控制器出现故障表现为:打开主机电源后屏幕显示"Error :Unable to ControlA20 Line "出错信息后死机. 解决方法:仔细检查内存条是否与插槽保持良好接触或更换内存条. 故障二:自检通过.在DOS 状态下运行应用程序因占用的内存地址冲突,而导致内存分配错误,屏幕

巧妙解决删除文件或文件夹出错故障

半年前,朋友的一台电脑突然发生"删除文件或文件夹出错"故障,报错信息为:"无法删除xxx文档/文件夹:找不到指定的路径.请确定指定的路径是否正确".(如图一)当时在网上搜索了一下看是否有网友遇到类似的问题.搜索结果发现,多数这类错误是由于文件或者磁盘设成了只读.文件已经被删除图标还没有更新.或者文件被破坏甚至感染病毒造成的,这些问题均可以通过去掉文件只读属性.修复文件.DOS下删除文件或者用杀毒软件清除或者粉碎文件来解决. 图一 然而这台电脑所遇到的故障却让上述任何

内存常见故障的解决方法

  内存常见故障的解决方法: 常见故障一:开机无显示 内存条原因出现此类故障一般是因为内存条与主板内存插槽接触不良造成,只要用橡皮擦来回擦试其金手指部位即可解决问题(不要用酒精等清洗),还有就是内存损坏或主板内存槽有问题也会造成此类故障. 由于内存条原因造成开机无显示故障,主机扬声器一般都会长时间蜂鸣(针对AwardBios而言). 常见故障二:Windows注册表经常无故损坏,提示要求用户恢复 此类故障一般都是因为内存条质量不佳引起,很难予以修复,唯有更换一途. 常见故障三:Windows经常

控件-delphi dll rave 内存出错

问题描述 delphi dll rave 内存出错 dll文件中含有rave报表控件.现场少数电脑打开该dll会报内存错误.[read of address 00000000]

sql内存占用-设置使用AWE分配内容,设置最大内存出错,该如何处理??

问题描述 设置使用AWE分配内容,设置最大内存出错,该如何处理?? sql2005, 设置使用AWE分配内存,报错 请教该如何处理?? 解决方案 http://bbs.csdn.net/topics/391904998 解决方案二: 错误提示很清楚,权限不够 1.在"开始"菜单上,单击"运行".在"打开"框中,键入 gpedit.msc. 将打开"组策略"对话框. 2.在"组策略"控制台上,展开"

用MFC的对话框载入摄像头并处理,运行接近10分钟后提示内存出错,指针都释放掉了。这是什么原因呀?

问题描述 用MFC的对话框载入摄像头并处理,运行接近10分钟后提示内存出错,指针都释放掉了.这是什么原因呀? 相关的代码: void CMFC_VedioDlg::OnBnClickedButton1() { // TODO: 在此添加控件通知处理程序代码 if(!pCapture) { pCapture = cvCaptureFromCAM(0); pFrame = cvQueryFrame(pCapture); drawToDC(pFrame, IDC_Open); } SetTimer(I

c++-桶排序时,释放内存出错?

问题描述 桶排序时,释放内存出错? #include #include int MaxValue(std::vectorb); void BarrelSort(int c[], std::vectorb) { int max = MaxValue(b); int* a=new int [max+1]; for (int i = 0; i < max+1; i++) { a[i] = 0; } for (std::vector<int>::iterator i = b.begin(); i

让.NET程序快速释放内存的办法

原文:让.NET程序快速释放内存的办法 公司里的一个程序,经过了N个人的手后发现上了生产内存会一直涨,直到物理内存几乎被占用完毕后突然就下降下来(估计是GC给释放了),然后再一直涨.这个程序主要是对字符串进行处理,困扰了我好几天,本机测试内存也有增长的趋势,但是不大明显,上生产是2.3分钟内存就上G,没找到究竟哪里的问题.从网上搜了些资料,看到可以让.NET立即释放内存,本地简单测试了一下,真的管用,但是没敢用,不知道对于多线程的程序,当一个线程显示释放内存时会不会影响到其他线程,而且我是做金融