一种故障内存检测方法和装置的制造方法

文档序号:9452969阅读:329来源:国知局
一种故障内存检测方法和装置的制造方法
【技术领域】
[0001]本发明涉及计算机应用领域,特别是涉及一种故障内存检测方法和装置。
【背景技术】
[0002]随着计算机技术以及集成电路技术的飞速发展,不论从软件还是硬件,计算机都得到了飞速提升。由于计算机硬件的增加,同时也提高了计算机硬件的故障率,尤其是在内存方面,现在的应用程序为了提高性能,对内存的需求越来越大,计算机内插入的内存条的数目也随之增加,这就使得内存的故障概率大大提升。假如一组内存条中的某一个内存条发生故障,而服务程序可能使用到故障的内存条,从而使服务变得不稳定,甚至出现数据混乱,造成巨大损失。目前,当内存出现故障时,通过人工的方式从数据库中获取内存信息,然后对获取的内存信息进行分析,最后查找得到故障的内存,由于人工工作速率和反映速率有限,并且存在较高的出错率,因此,通过人工的方式从数据库中获取得到内存信息,并分析得到故障内存,不能保证分析得到的故障内存的准确性,得到故障内存的效率也较低,使得不能及时有效地处理内存故障,对应用服务造成危害,严重影响了系统的稳定及可靠性。

【发明内容】

[0003]有鉴于此,本发明实施例提供一种故障内存检测方法和装置,以解决现有技术中当内存出现故障时,通过人工的方式从数据库中获取内存信息,然后对获取的内存信息进行分析,最后查找得到故障的内存,不能保证分析得到的故障内存的准确性,得到故障内存的效率也较低,使得不能及时有效地处理内存故障,对应用服务造成危害,严重影响了系统的稳定及可靠性的问题。
[0004]为实现上述目的,本发明实施例提供如下技术方案:
[0005]—种故障内存检测方法,包括:
[0006]实时监测内存运行状态,当检测到内存发生故障时,生成包括故障内存物理地址的故障信息,获取所述故障信息,根据所述故障信息得到故障内存的物理地址;
[0007]通过系统内核获取所有遵从PCI标准、PC1-X或PC1-E标准的插槽,解析获取所有置于所述插槽上内存的运行信息,得到所有置于所述插槽上内存的物理地址变化范围;
[0008]根据所述故障内存的物理地址和所有置于所述插槽上内存的物理地址变化范围,定位得到故障内存。
[0009]其中,所述定位得到故障内存后还包括:
[0010]对所述故障内存进行逻辑离线操作,将所述故障内存内数据迀移至其他正常运行内存中。
[0011]其中,当所述故障内存检测方法用于Linux系统时,通过所述Linux系统内mcelog程序实时监测内存运行状态,当检测到内存发生故障时,由所述mcelog程序生成包括故障内存物理地址的故障信息。
[0012]其中,所述生成包括故障内存物理地址的故障信息后包括:将所述故障信息保存在寄存器中。
[0013]其中,所述获取所述故障信息包括:
[0014]判断所述寄存器中存储有故障信息;
[0015]若存储有,则获取所述存储在所述寄存器中的故障信息。
[0016]其中,所述通过系统内核获取所有遵从PCI标准、PC1-X或PC1-E标准的插槽后还包括:
[0017]获取所有所述插槽的运行信息,确定所有所述插槽中当前正在使用的正在运行插槽;
[0018]解析获取所有置于所述正在运行插槽上内存的运行信息,得到所有置于所述正在运行插槽上内存的物理地址变化范围。
[0019]其中,所述定位得到故障内存后还包括:
[0020]发出警报,并生成日志文件,其中,所述警报为声音警报和/或闪光灯警报。
[0021]—种故障内存检测装置,包括:监测获取模块、插槽获取单元和定位单元;其中,
[0022]所述监测获取单元,用于实时监测内存运行状态,当检测到内存发生故障时,生成包括故障内存物理地址的故障信息,获取所述故障信息,根据所述故障信息得到故障内存的物理地址;
[0023]所述插槽获取单元,用于通过系统内核获取所有遵从PCI标准、PC1-X或PC1-E标准的插槽,解析获取所有置于所述插槽上内存的运行信息,得到所有置于所述插槽上内存的物理地址变化范围;
[0024]所述定位单元,用于根据所述故障内存的物理地址和所有置于所述插槽上内存的物理地址变化范围,定位得到故障内存。
[0025]其中,所述故障内存检测装置,还包括:迀移模块,用于对所述故障内存进行逻辑离线操作,将所述故障内存内数据迀移至其他正常运行内存中。
[0026]其中,所述故障内存检测装置,还包括:存储模块,用于生成包括故障内存物理地址的故障信息后,将所述故障信息保存在寄存器中。
[0027]基于上述技术方案,本发明实施例提供的故障内存检测方法和装置,实时监测内存运行状态,当检测到内存发生故障时,生成包括故障内存物理地址的故障信息,通过获取内存故障时生成的故障信息,根据该故障信息得到故障内存的物理地址,然后通过系统内核获取所有遵从PCI标准、PC1-X或PC1-E标准的插槽,解析获取所有置于所述插槽上内存的运行信息,得到所有置于所述插槽上内存的物理地址变化范围,根据得到的故障内存的物理地址和所有置于所述插槽上内存的物理地址变化范围,定位得到故障内存。实时监测内存运行状态,当检测到内存出现故障时,生成包括故障内存物理地址的故障信息,通过该生成的故障信息内物理地址和所有置于插槽上内存的物理地址变化范围来定位得到故障内存,较之以人工的方式从数据库中获取内存信息,然后对获取的内存信息进行分析,最后查找得到故障的内存,能非常精准的获取故障内存的物理位置,保证了查找结果正确性,同时,具有更高的工作效率,使能及时发现并有效地处理内存故障,减少因内存故障对应用服务造成危害,提高了系统的稳定及可靠性。
【附图说明】
[0028]为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
[0029]图1为本发明实施例提供的故障内存检测方法的流程图;
[0030]图2为本发明实施例提供的故障内存检测方法的另一流程图;
[0031]图3为本发明实施例提供的故障内存检测方法中得到获取故障信息的方法流程图;
[0032]图4示出了本发明实施例提供的故障内存检测方法中得到置于插槽上内存的物理地址变化范围的方法流程图;
[0033]图5为本发明实施例提供的故障内存检测装置的系统框图;
[0034]图6示出了本发明实施例提供的故障内存检测装置的另一系统框图;
[0035]图7示出了本发明实施例提供的故障内存检测装置的另一系统框图。
【具体实施方式】
[0036]下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0037]图1为本发明实施例提供的故障内存检测方法的流程图,实时监测内存运行状态,当检测到内存出现故障时,生成包括故障内存物理地址的故障信息,通过该生成的故障信息内物理地址和所有置于插槽上内存的物理地址变化范围来定位得到故障内存,能非常精准的获取故障内存的物理位置,保证了查找结果正确性,同时,具有更高的工作效率,使能及时发现并有效地处理内存故障,减少因内存故障对应用服务造成危害,提高了系统的稳定及可靠性;参照图1,该故障内存检测方法可以包括:
[0038]步骤S100:实时监测内
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1