一种内存故障自动定位方法及装置制造方法及图纸

技术编号:8907046 阅读:211 留言:0更新日期:2013-07-11 04:43
本发明专利技术提出一种内存故障自动定位方法,包括以下步骤:读取机器检查架构MCA寄存器的值,并对其进行解析以获取故障内存的物理地址;据此获取内存在套接字socket之间的交错状态,并根据该交错状态获取故障内存所在的socket值;根据内存故障物理地址和内存在套接字socket之间的交错状态获取故障内存所在的通道值和通道内偏移;根据该通道内偏移获取故障内存的槽位信息;根据故障内存所在的socket值、通道值和槽位信息对故障内存进行定位。本发明专利技术的实施例能够精确的定位出故障内存槽位,并配合其他方法对内存进行修复,提高了内存故障监控率,也减轻了数据中心运维成本。本发明专利技术还提出了一种内存故障自动定位装置。

【技术实现步骤摘要】

本专利技术涉及信息存储
,特别涉及一种内存故障自动定位方法及装置
技术介绍
在Intel CPU 中提供了一种 MCA(Machine Check Architecture,机器检查架构),Nehalm平台的MCA会在寄存器中记录故障内存的槽位信息,应用程序通过读取寄存器中的值就可以定位到故障内存。但是一旦Sandybridge平台MCA架构发生了变化,寄存器中不再直接记录故障内存的槽位信息,因此采用以往的检测方法不能确定故障内存的槽位。
技术实现思路
本专利技术旨在至少解决上述技术问题之一。为此,本专利技术的一个目的在于提出一种能够精确的定位出故障内存槽位,并对其进行维修,从而提高内存故障监控率,也减轻数据中心运维成本的内存故障自动定位方法。本专利技术的另一目的在于提出一种内存故障自动定位装置。为了实现上述目的,本专利技术第一方面的实施例提出了一种内存故障自动定位方法,包括如下步骤:读取机器检查架构MCA寄存器的值,并对所述寄存器的值进行解析以获取故障内存的物理地址;根据所述故障内存的物理地址获取所述内存在套接字socket之间的交错状态,并根据所述内存在套接字socket之间的交错状态获取所述故障内存所在的socket值;根据所述内存故障物理地址和所述内存在套接字socket之间的交错状态获取所述故障内存所在的通道值和通道内偏移;根据所述故障内存所在的通道内偏移获取所述故障内存的槽位信息;以及根据所述故障内存所在的socket值、所述通道值和所述槽位信息对所述故障内存进行定位。根据本专利技术实施例的内存故障自动定位方法,在Sandybridge平台下,通过MCA寄存器中故障内存的物理地址,能够精确的定位出故障内存槽位,并配合其他方法对故障内存进行修复,从而提高了内存故障监控率,同时也减轻了数据中心的运维成本。另外,根据本专利技术上述实施例的内存故障自动定位方法还可以具有如下附加的技术特征:在本专利技术的实施例中,所述故障内存的物理地址包括:64个字节对齐、第一套接字socket交错、通道交错、行列交错、第二套接字socket交错。在本专利技术的实施例中,所述根据所述故障内存所在的通道内偏移获取所述故障内存的槽位信息,包括如下步骤:利用所述故障内存所在的通道内偏移获取所述故障内存所对应的socket内的行值;根据所述行值以及所述内存的行与槽位的对应关系,获得所述故障内存的槽位信息。在本专利技术的实施例中,所述通道内偏移为所述故障内存所在的通道对应所在socket的通道O的偏移地址。本专利技术第二方面的实施例还提出了一种内存故障自动定位装置,包括:读取模块,用于读取机器检查构架MCA寄存器的值,并对所述寄存器的值进行解析以获取故障内存的物理地址pocket值获取模块,所述socket值获取模块与所述读取模块相连,用于根据所述故障内存的物理地址获取所述内存在套接字socket之间的交错状态,并根据所述内存在套接字socket之间的交错状态获取所述故障内存所在的socket值;通道信息获取模块,所述通道信息获取模块与所述读取模块和所述socket值获取模块相连,用于根据所述内存故障物理地址和所述内存在套接字socket之间的交错状态获取所述故障内存所在的通道值和通道内偏移;槽位信息获取模块,所述槽位信息获取模块与所述通道信息获取模块相连,用于根据所述故障内存所在的通道内偏移获取所述故障内存的槽位信息;以及定位模块,所述定位模块与所述socket值获取模块、所述通道信息获取模块和所述槽位信息获取模块相连,用于根据所述故障内存所在的socket值、所述通道值和所述槽位信息对所述故障内存进行定位。根据本专利技术实施例的内存故障自动定位装置,在Sandybridge平台下,通过MCA寄存器中故障内存的物理地址,能够精确的定位出故障内存槽位,并配合其他方法对故障内存进行修复,从而提高了内存故障监控率,同时也减轻了数据中心的运维成本。另外,根据本专利技术上述实施例的内存故障自动定位装置还可以具有如下附加的技术特征:在本专利技术的实施例中,所述故障内存的物理地址包括:64个字节对齐、第一套接字socket交错、通道交错、行列交错、第二套接字socket交错。在本专利技术的实施例中,所述槽位信息获取模块利用所述故障内存所在的通道内偏移获取所述故障内存所对应的socket内的行值,并根据所述行值以及所述内存的行与槽位的对应关系,获得所述故障内存的槽位信息。在本专利技术的实施例中,所述通道内偏移为所述故障内存所在的通道对应所在socket的通道0的偏移地址。本专利技术的附加方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本专利技术的实践了解到。附图说明本专利技术的上述和/或附加的方面和优点从结合下面附图对实施例的描述中将变得明显和容易理解,其中:图1为根据本专利技术一个实施例的内存故障自动定位方法的流程图;图2为根据本专利技术一个实施例的内存故障自动定位方法的内存的拓扑结构图;图3为根据本专利技术一个实施例的内存故障自动定位方法的socket不交错,channel、slot间交错的内存分布示意图;图4为根据本专利技术另一个实施例的内存故障自动定位方法的流程图;和图5为根据本专利技术一个实施例的内存故障自动定位装置的结构图。具体实施例方式下面详细描述本专利技术的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本专利技术,而不能理解为对本专利技术的限制。在本专利技术的描述中,需要理解的是,术语“中心”、“纵向”、“横向”、“上”、“下”、“前”、“后”、“左”、“右”、“竖直”、“水平”、“顶”、“底”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本专利技术和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本专利技术的限制。此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性。在本专利技术的描述中,需要说明的是,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本专利技术中的具体含义。以下结合附图1-4详细描述根据本专利技术实施例的基于raid卡日志的硬盘的故障定位方法。如图1所示,根据本专利技术一个实施例的内存故障自动定位方法,包括以下步骤:步骤S101,读取机器检 查架构MCA寄存器的值,并对寄存器的值进行解析以获取故障内存的物理地址。具体而言,在Sandybridge平台下,MCA会在寄存器中反映故障内存的物理地址值,通过解析该值获取故障内存的物理地址。其中,故障内存的物理地址包括:64个字节对齐、第一套接字socket交错、通道交错、行列交错、第二套接字socket交错。即如下表所示:权利要求1.一种内存故障自动定位方法,其特征在于,包括如下步骤: 读取机器检查架构MCA寄存器的值,并对所述寄存器的值进行解析以获取故障内存的物理地址; 根据所述故本文档来自技高网...

【技术保护点】
一种内存故障自动定位方法,其特征在于,包括如下步骤:读取机器检查架构MCA寄存器的值,并对所述寄存器的值进行解析以获取故障内存的物理地址;根据所述故障内存的物理地址获取所述内存在套接字socket之间的交错状态,并根据所述内存在套接字socket之间的交错状态获取所述故障内存所在的socket值;根据所述内存故障物理地址和所述内存在套接字socket之间的交错状态获取所述故障内存所在的通道值和通道内偏移;根据所述故障内存所在的通道内偏移获取所述故障内存的槽位信息;以及根据所述故障内存所在的socket值、所述通道值和所述槽位信息对所述故障内存进行定位。

【技术特征摘要】

【专利技术属性】
技术研发人员:黎世勇王雁鹏王晓静魏伟
申请(专利权)人:北京百度网讯科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1