CN115033409A - 一种内存可修复错误上报方法、装置、设备及介质 - Google Patents

一种内存可修复错误上报方法、装置、设备及介质 Download PDF

Info

Publication number
CN115033409A
CN115033409A CN202210555583.9A CN202210555583A CN115033409A CN 115033409 A CN115033409 A CN 115033409A CN 202210555583 A CN202210555583 A CN 202210555583A CN 115033409 A CN115033409 A CN 115033409A
Authority
CN
China
Prior art keywords
memory
repairable
error
reporting
errors
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202210555583.9A
Other languages
English (en)
Inventor
孙秀强
公维锋
贡维
黄家明
李岩
张炳会
宿培伟
许泗强
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Suzhou Inspur Intelligent Technology Co Ltd
Original Assignee
Suzhou Inspur Intelligent Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Suzhou Inspur Intelligent Technology Co Ltd filed Critical Suzhou Inspur Intelligent Technology Co Ltd
Priority to CN202210555583.9A priority Critical patent/CN115033409A/zh
Publication of CN115033409A publication Critical patent/CN115033409A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0766Error or fault reporting or storing
    • G06F11/0778Dumping, i.e. gathering error/state information after a fault for later diagnosis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/0721Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment within a central processing unit [CPU]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/073Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in a memory management context, e.g. virtual memory or cache management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0766Error or fault reporting or storing
    • G06F11/0781Error filtering or prioritizing based on a policy defined by the user or on a policy defined by a hardware/software module, e.g. according to a severity level
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

本发明公开了一种内存可修复错误上报方法、装置、设备及介质,属于数据处理技术领域,所述方法应用于ARM架构服务器,所述ARM架构服务器包括若干根内存条,所述方法包括:系统控制处理机通过I2C协议获取内存可修复错误寄存器的数值;判断所述数值是否为基本输入输出系统设置的内存可修复错误初始阈值的倍数;根据判断结果确认是否上报至操作系统。本发明在ARM架构服务器上实现了类似X86架构服务器的内存可修复错误的上报方案,完善了在ARM架构服务器内存出现可修复错误时的上报机制,方便维修人员在确认ARM架构服务器内存条产生错误时进行物理更换的动作,同时提高了ARM架构服务器的使用性能。

Description

一种内存可修复错误上报方法、装置、设备及介质
技术领域
本发明涉及数据处理技术领域,特别涉及一种内存可修复错误上报方法、装置、设备及介质。
背景技术
目前,大部分数据中心均以X86架构的英特尔和AMD芯片服务器为主,但随着互联网客户对能耗比及性价比的推崇,导致进阶精简指令集机器ARM(Advanced RISC Machine)的服务器也在数据中心占据了一席之地,因为ARM架构核心数量是传统的计算机语言指令集(X86架构)处理器的两倍有余,并且ARM架构支持客户的云业务,如云游戏、网页服务等业务需求。所以,ARM架构部署数量将会越来越多。
但所有的数据都是运行在任何架构服务器的内存上,如果内存出现了损坏,或者出现了不可修复错误、可修复错误时,如何进行处理或上报是一个需要重点考虑的问题;对于X86架构来讲上报机制已经很成熟,而对于新兴的ARM架构处理器来讲内存错误上报的机制还不是很完善。
发明内容
为了克服上述技术缺陷,本发明的目的在于提供一种内存可修复错误上报方法、装置、设备及介质,本发明所述方法应用于ARM架构服务器,所述ARM架构服务器包括若干根内存条,所述方法包括:系统控制处理机通过I2C协议获取内存可修复错误寄存器的数值;判断所述数值是否为基本输入输出系统设置的内存可修复错误初始阈值的倍数;根据判断结果确认是否上报至操作系统。本发明在ARM架构服务器上实现了类似X86架构服务器的内存可修复错误的上报方案,完善了在ARM架构服务器内存出现可修复错误时的上报机制,方便维修人员在确认ARM架构服务器内存条产生错误时进行物理更换的动作,同时提高了ARM架构服务器的使用性能。
本发明实施例提供的具体技术方案如下:
第一方面,提供了一种内存可修复错误上报方法,所述方法应用于ARM架构服务器,所述ARM架构服务器包括若干根内存条,所述方法包括:
系统控制处理机通过I2C协议获取内存可修复错误寄存器的数值;
判断所述数值是否为基本输入输出系统设置的内存可修复错误初始阈值的倍数;
根据判断结果确认是否上报至操作系统。
进一步地,所述获取内存可修复错误寄存器的数值之前,包括:
开启基本输入输出系统;
所述基本输入输出系统设置内存可修复错误初始阈值为第一阈值;
进入操作系统。
进一步地,所述根据判断结果确认是否上报至操作系统,包括:
当所述内存可修复错误寄存器的数值是所述第一阈值的倍数时,系统控制处理机通过电源管理接口以中断方式上报至操作系统;
所述操作系统记录内存可修复错误上报次数。
进一步地,所述根据判断结果确认是否上报至操作系统,还包括:
当所述内存可修复错误寄存器的数值不是所述第一阈值的倍数时,系统控制处理机不上报至操作系统;
所述系统控制处理机通过I2C协议重新获取内存可修复错误寄存器的数值。
进一步地,所述根据判断结果确认是否上报至操作系统之后,包括:
判断所述操作系统是否关机;
若是,则停止内存可修复错误上报操作;
若否,则系统控制处理机通过I2C协议重新获取内存可修复错误寄存器的数值并判断,根据判断结果确认是否上报至操作系统。
进一步地,所述内存可修复错误上报方法还包括:
对所述ARM架构服务器的每根内存条的可修复错误分开进行上报,每次上报时携带产生可修复错误的内存条标识;
根据所述内存条标识确定各内存条上报的可修复错误次数;
根据各内存条上报的可修复错误次数确定对应的内存条处理机制。
进一步地,所述根据各内存条上报的可修复错误次数确定对应的内存条处理机制,包括:
当任一内存条第一单位时间内可修复错误上报次数大于第二阈值时,则发出内存条错误告警,以提示对所述内存条进行物理更换;
当任一内存条第二单位时间内可修复错误上报次数小于第三阈值且所述操作系统无死机现象时,则忽略可修复错误上报问题,所述ARM架构服务器继续运行业务。
第二方面,提供了一种内存可修复错误上报装置,所述装置包括:
获取模块,用于系统控制处理机通过I2C协议获取内存可修复错误寄存器的数值;
判断模块,用于判断所述数值是否为基本输入输出系统设置的内存可修复错误初始阈值的倍数;
处理模块,用于根据判断结果确认是否上报至操作系统。
第三方面,提供了一种计算机设备,所述设备包括:
存储器、处理器及存储在存储器上的计算机程序,所述处理器执行所述计算机程序以实现如第一方面任一所述的内存可修复错误上报方法的步骤。
第四方面,提供了一种计算机存储介质,所述介质包括:
其上存储有计算机程序,该计算机程序被存储器执行时实现第一方面任一所述的内存可修复错误上报方法的步骤。
与现有技术相比,本发明实施例提供的技术方案所述方法应用于ARM架构服务器,所述ARM架构服务器包括若干根内存条,所述方法包括:系统控制处理机通过I2C协议获取内存可修复错误寄存器的数值;判断所述数值是否为基本输入输出系统设置的内存可修复错误初始阈值的倍数;根据判断结果确认是否上报至操作系统。本发明在ARM架构服务器上首次实现了类似X86架构服务器的内存可修复错误的上报方案,完善了在ARM架构服务器内存出现可修复错误时的上报机制,方便维修人员在确认ARM架构服务器内存条产生错误时进行物理更换的动作,同时提高了ARM架构服务器的使用性能。
本发明实施例提供的技术方案的所述ARM架构服务器支持对服务器的每根内存条进行可修复错误分开上报机制,而不是服务器系统的内存条可修复错误一起上报机制,这样可以根据分开错误上报的情况确认具体哪根内存条存在物理缺陷,提高了系统的稳定性以及增加了内存条物理缺陷分析定位的功能。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例一提供的内存可修复错误上报方法的第一流程图;
图2为本发明实施例二提供的内存可修复错误上报方法的第二流程图;
图3为本发明实施例二提供的内存可修复错误上报方法的具体流程图;
图4为本发明实施例三提供的内存可修复错误上报装置的结构图;
图5为本发明实施例五提供的可被用于实施本申请中所述的各个实施例的示例性系统。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
需要说明的是,除非上下文明确要求,否则整个说明书和权利要求书中的“包括”、“包含”等类似词语应当解释为包含的含义而不是排他或穷举的含义;也就是说,是“包括但不限于”的含义。
此外,在本发明的描述中,除非另有说明,“多个”的含义是两个或两个以上。
实施例一
本发明实施例提供了一种内存可修复错误上报方法,如图1所示,所述方法应用于ARM架构服务器,所述ARM架构服务器包括若干根内存条,所述方法包括:
系统控制处理机通过I2C协议获取内存可修复错误寄存器的数值;
判断所述数值是否为基本输入输出系统设置的内存可修复错误初始阈值的倍数;
根据判断结果确认是否上报至操作系统。
具体地,所述ARM架构服务器共有8个内存控制器即8个单片机MCU(MicrocontrollerUnit),这里以1个内存控制器为例进行功能方法实现描述,其余的7个内存控制器实现的错误上报机制跟这里的内存可修复错误上报方法一致,唯一的区别是每个内存控制器单独计数并上报。
基本输入输出系统BIOS(Basic Input Output System)在代码中设置内存可修复阈值初始值默认是第一阈值,当操作系统运行时系统控制处理机(SCP、System ControlProcessor)通过I2C协议读取内存可修复错误寄存器的数值,并判断当前内存可修复错误寄存器的数值是否为所述第一阈值的倍数,若内存可修复错误寄存器的数值不为所述第一阈值的倍数,则继续重新轮训读取内存可修复错误寄存器的数值;若内存可修复错误寄存器的数值为所述第一阈值的倍数时,则通过电源管理接口ACPI(Advanced Configurationand Power Management Interface)中断方式上报给操作系统,同时操作系统记下日志信息,以记录发生了一次内存可修复错误。当操作系统没有关机时,此时系统控制处理机继续轮训读取内存可修复错误寄存器的数值,若内存可修复错误寄存器的数值为所述第一阈值的倍数时,则继续通过电源管理接口上报至操作系统,以告知又触发了一次可修复错误上报记录,依次轮训读取内存可修复错误寄存器的数值,并判断判断所述数值是否为基本输入输出系统设置的内存可修复错误初始阈值的倍数,根据判断结果确认是否上报至操作系统直至操作系统关机。
本发明实施例通过基本输入输出系统设置内存控制器的每个内存的可修复错误初始阈值,通过内存可修复错误上报的方法,借用系统控制处理机SCP读取内存可修复寄存器的数值进行判断,判断所述内存可修复寄存器的数值是否为基本输入输出系统设置的内存可修复错误初始阈值的倍数,根据判断结果以决定是否上报操作系统OS;并依次进行轮训上报操作,直到系统关机后不再去上报,根据上报的次数以了解内存发生了可修复错误的次数。另外通过设置达到可修复错误初始阈值的倍数时进行上报的方案,在实现错误上报的同时可以有效降低可修复错误上报的次数。
本发明实施例提供的技术方案应用于ARM架构服务器,本发明的保护点是BIOS设置内存可修复错误初始阈值后,系统控制处理机SCP通过I2C读取内存可修复错误寄存器的数值,判断内存可修复错误寄存器的数值是否是BIOS设置内存可修复错误初始阈值的倍数,以决定是否进行内存可修复错误次数的上报。本发明在ARM架构服务器上首次实现了类似X86架构服务器的内存可修复错误的上报方案,完善了在ARM架构服务器内存出现可修复错误时的上报机制,方便维修人员在确认ARM架构服务器内存条产生错误时进行物理更换的动作,同时提高了ARM架构服务器的使用性能。
实施例二
本发明实施例提供了一种内存可修复错误上报方法,如图2所示,所述方法应用于ARM架构服务器,所述ARM架构服务器包括若干根内存条,所述方法包括:
步骤S01,开启基本输入输出系统;
所述基本输入输出系统设置内存可修复错误初始阈值为第一阈值;
进入操作系统。
具体地,这里所述第一阈值为5。
基本输入输出系统默认设置内存可修复错误初始阈值为5,正常启动,进入到操作系统中。
步骤S02,系统控制处理机通过I2C协议获取内存可修复错误寄存器的数值。
其中,系统控制处理机SCP通过I2C协议读取内存可修复错误寄存器的数值。
步骤S03,判断所述数值是否为基本输入输出系统设置的内存可修复错误初始阈值的倍数。
具体地,判断所述内存可修复错误寄存器的数值是否为5的倍数。
步骤S04,根据判断结果确认是否上报至操作系统。
步骤S04还包括:
步骤S041,当所述内存可修复错误寄存器的数值是所述第一阈值的倍数时,系统控制处理机通过电源管理接口以中断方式上报至操作系统;
所述操作系统记录内存可修复错误上报次数。
具体地,当所述内存可修复错误寄存器的数值是5的倍数时,系统控制处理机SCP通过电源管理接口ACPI以中断方式上报至操作系统;
所述操作系统记录内存可修复错误次数,即记录发生了一次内存可修复错误次数。这里,所述操作系统记录下的内存可修复错误次数等同于内存实际的可修复错误的上报次数。
步骤S042,当所述内存可修复错误寄存器的数值不是所述第一阈值的倍数时,系统控制处理机不上报至操作系统;
所述系统控制处理机通过I2C协议重新获取内存可修复错误寄存器的数值。
具体地,当所述内存可修复错误寄存器的数值不是5的倍数时,系统控制处理机不上报至操作系统;
所述系统控制处理机通过I2C协议重新获取内存可修复错误寄存器的数值,并判断当前可修复错误寄存器的数值是否为5的倍数。
可以理解的是,所述ARM架构服务器本身不支持内存的可修复错误CE的上报机制,但是因为数据均存储在物理内存条上,若存储的数据不对或内存条上产生了可修复错误而未上报至操作系统,则会出现系统死机或者宕机的问题。
但是内存产生了可修复错误无法定位是内存条本身的问题还是在内存上传递数据时产生的错误,所以这里例如通过基本输入输出系统设置内存可修复错误阈值为10000或50000时,当内存可修复错误寄存器的数值达到10000或50000时,则所述系统控制处理机通过电源管理接口以中断方式上报至操作系统,所述操作系统记录内存可修复错误上报次数;当内存可修复错误寄存器的数值未达到10000或50000时,则系统控制处理机不上报至操作系统;所述系统控制处理机通过I2C协议重新获取内存可修复错误寄存器的数值。
步骤S05,判断所述操作系统是否关机;
若是,则停止内存可修复错误上报操作;
若否,则系统控制处理机通过I2C协议重新获取内存可修复错误寄存器的数值并判断,根据判断结果确认是否上报至操作系统。
具体地,当所述内存可修复错误寄存器的数值是5的倍数时,系统控制处理机SCP通过电源管理接口ACPI以中断方式上报至操作系统;所述操作系统记录内存可修复错误次数,依次轮训读取数值直至操作系统关机。
步骤S06,对所述ARM架构服务器的每根内存条的可修复错误分开进行上报,每次上报时携带产生可修复错误的内存条标识;
根据所述内存条标识确定各内存条上报的可修复错误次数;
根据各内存条上报的可修复错误次数确定对应的内存条处理机制;
当任一内存条第一单位时间内可修复错误上报次数大于第二阈值时,则发出内存条错误告警,以提示对所述内存条进行物理更换;
当任一内存条第二单位时间内可修复错误上报次数小于第三阈值且所述操作系统无死机现象时,则忽略可修复错误上报问题,所述ARM架构服务器继续运行业务。
具体地,所述ARM架构服务器支持对服务器的每根内存条进行可修复错误分开上报机制,而不是服务器系统的内存条可修复错误一起上报机制,这样可以根据分开错误上报的情况确认具体哪根内存条存在物理缺陷,提高了系统的稳定性以及增加了内存条物理缺陷分析定位的功能。
若系统在1小时内上报记录的次数达到100次或200次时,这里则认为是物理内存条有问题,需要对具体上报的内存条进行物理更换;若1小时上报的次数小于2次或24小时内上报次数小于1次且系统无宕机问题出现,则系统忽略该可修复错误上报问题,ARM架构服务器继续运行客户的业务。
其中,这里所述第一单位时间为1小时;所述第二阈值为100次或200次;所述第二单位时间为24小时;所述第三阈值为1次。
如图3所示为内存可修复错误上报方法的具体流程图,本发明涉及一种ARM架构服务器内存可修复错误CE(Correct Error)上报的方法,因为ARM架构服务器处理器支持8个内存控制器,且单片机MCU的内存可修复错误上报机制一样,所以这里只采用1个内存控制器为例进行阐述,所述基本输入输出系统将内存可修复错误初始阈值设置为5,并启动进入操作系统OS;此时系统控制处理机SCP通过I2C协议读取内存可修复寄存器的数值,并对其数值进行判断,判断所述内存可修复寄存器的数值是否为5的倍数,若不是5的倍数,则继续读取内存可修复阈值寄存器的数值;若是5的倍数,则系统控制处理机SCP通过电源管理接口ACPI以中断的方式上报至操作系统OS,并记录触发了1次内存可修复错误上报记录,并依次轮训重新读取所述内存可修复错误寄存器数值直至操作系统关机。
本发明实施例具有较强的可复制性和拓展性,通过基本输入输出系统BIOS设置内存可修复错误初始阈值,系统控制处理机SCP通过I2C协议读取内存可修复寄存器的数值,并判断所述内存可修复寄存器的数值是否是BIOS设置的内存可修复错误初始阈值的倍数,根据判断结果决定是否通过电源管理接口ACPI中断方式汇报给操作系统OS,直至系统关机后即停止轮训读取上报机制以实现内存可修复错误次数的上报。
本发明实施例提供的内存可修复错误上报的方法在不脱离本发明技术方案的前提下,还可以做出若干改进以及优化,这些改进与优化也应当视为本发明的保护范围。
本发明实施例提供一种内存可修复错误上报的方法,本发明实施例提供的技术方案应用于ARM架构服务器,所述方法包括:系统控制处理机通过I2C协议获取内存可修复错误寄存器的数值;判断所述数值是否为基本输入输出系统设置的内存可修复错误初始阈值的倍数;根据判断结果确认是否上报至操作系统。本发明在ARM架构服务器上首次实现了类似X86架构服务器的内存可修复错误的上报方案,完善了在ARM架构服务器内存出现可修复错误时的上报机制,方便维修人员在确认ARM架构服务器内存条产生错误时进行物理更换的动作,同时提高了ARM架构服务器的使用性能。
本发明实施例提供的技术方案的所述ARM架构服务器支持对服务器的每根内存条进行可修复错误分开上报机制,而不是服务器系统的内存条可修复错误一起上报机制,这样可以根据分开错误上报的情况确认具体哪根内存条存在物理缺陷,提高了系统的稳定性以及增加了内存条物理缺陷分析定位的功能。
本发明实施例提供的技术方案提高了ARM架构服务器的使用性能,本发明只适用于ARM架构服务器,且只应用于ARM架构服务器产品中,更有利于互联网客户大规模采购部署ARM架构服务器。
实施例三
本发明提供了一种内存可修复错误上报装置,如图4所示,所述装置包括前置处理模块、获取模块、判断模块、处理模块。
在本实施例中,前置处理模块用于开启基本输入输出系统,所述基本输入输出系统设置内存可修复错误初始阈值为第一阈值,进入操作系统;获取模块用于系统控制处理机通过I2C协议获取内存可修复错误寄存器的数值;判断模块用于判断所述数值是否为基本输入输出系统设置的内存可修复错误初始阈值的倍数;处理模块用于根据判断结果确认是否上报至操作系统。
进一步地,处理模块用于当所述内存可修复错误寄存器的数值是所述第一阈值的倍数时,系统控制处理机通过电源管理接口以中断方式上报至操作系统;
所述操作系统记录内存可修复错误上报次数。
进一步地,处理模块还用于当所述内存可修复错误寄存器的数值不是所述第一阈值的倍数时,系统控制处理机不上报至操作系统;
所述系统控制处理机通过I2C协议重新获取内存可修复错误寄存器的数值。
进一步地,判断模块还可用于判断所述操作系统是否关机;
若是,则停止内存可修复错误上报操作;
若否,则系统控制处理机通过I2C协议重新获取内存可修复错误寄存器的数值并判断,根据判断结果确认是否上报至操作系统。
进一步地,处理模块还用于对所述ARM架构服务器的每根内存条的可修复错误分开进行上报,每次上报时携带产生可修复错误的内存条标识;根据所述内存条标识确定各内存条上报的可修复错误次数;根据各内存条上报的可修复错误次数确定对应的内存条处理机制。
进一步地,处理模块还用于当任一内存条第一单位时间内可修复错误上报次数大于第二阈值时,则发出内存条错误告警,以提示对所述内存条进行物理更换;
当任一内存条第二单位时间内可修复错误上报次数小于第三阈值且所述操作系统无死机现象时,则忽略可修复错误上报问题,所述ARM架构服务器继续运行业务。
本发明实施例提供的技术方案带来的有益效果是:
本发明实施例提供的技术方案在ARM架构服务器上首次实现了类似X86架构服务器的内存可修复错误的上报方案,完善了在ARM架构服务器内存出现可修复错误时的上报机制,方便维修人员在确认ARM架构服务器内存条产生错误时进行物理更换的动作,同时提高了ARM架构服务器的使用性能。
本发明实施例提供的技术方案的所述ARM架构服务器支持对服务器的每根内存条进行可修复错误分开上报机制,而不是服务器系统的内存条可修复错误一起上报机制,这样可以根据分开错误上报的情况确认具体哪根内存条存在物理缺陷,提高了系统的稳定性以及增加了内存条物理缺陷分析定位的功能。
实施例四
本发明提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时可以执行如下内存可修复错误上报的方法:
系统控制处理机通过I2C协议获取内存可修复错误寄存器的数值;
判断所述数值是否为基本输入输出系统设置的内存可修复错误初始阈值的倍数;
根据判断结果确认是否上报至操作系统。
本发明实施例提供的技术方案带来的有益效果是:
本发明实施例提供的技术方案在ARM架构服务器上首次实现了类似X86架构服务器的内存可修复错误的上报方案,完善了在ARM架构服务器内存出现可修复错误时的上报机制,方便维修人员在确认ARM架构服务器内存条产生错误时进行物理更换的动作,同时提高了ARM架构服务器的使用性能。
实施例五
本发明提供了一种计算机存储介质,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现以下步骤:
系统控制处理机通过I2C协议获取内存可修复错误寄存器的数值;
判断所述数值是否为基本输入输出系统设置的内存可修复错误初始阈值的倍数;
根据判断结果确认是否上报至操作系统。
进一步地,所述获取内存可修复错误寄存器的数值之前,包括:
开启基本输入输出系统;
所述基本输入输出系统设置内存可修复错误初始阈值为第一阈值;
进入操作系统。
进一步地,所述根据判断结果确认是否上报至操作系统,包括:
当所述内存可修复错误寄存器的数值是所述第一阈值的倍数时,系统控制处理机通过电源管理接口以中断方式上报至操作系统;
所述操作系统记录内存可修复错误上报次数。
进一步地,所述根据判断结果确认是否上报至操作系统,还包括:
当所述内存可修复错误寄存器的数值不是所述第一阈值的倍数时,系统控制处理机不上报至操作系统;
所述系统控制处理机通过I2C协议重新获取内存可修复错误寄存器的数值。
进一步地,所述根据判断结果确认是否上报至操作系统之后,包括:
判断所述操作系统是否关机;
若是,则停止内存可修复错误上报操作;
若否,则系统控制处理机通过I2C协议重新获取内存可修复错误寄存器的数值并判断,根据判断结果确认是否上报至操作系统。
进一步地,所述内存可修复错误上报方法还包括:
对所述ARM架构服务器的每根内存条的可修复错误分开进行上报,每次上报时携带产生可修复错误的内存条标识;
根据所述内存条标识确定各内存条上报的可修复错误次数;
根据各内存条上报的可修复错误次数确定对应的内存条处理机制。
进一步地,所述根据各内存条上报的可修复错误次数确定对应的内存条处理机制,包括:
当任一内存条第一单位时间内可修复错误上报次数大于第二阈值时,则发出内存条错误告警,以提示对所述内存条进行物理更换;
当任一内存条第二单位时间内可修复错误上报次数小于第三阈值且所述操作系统无死机现象时,则忽略可修复错误上报问题,所述ARM架构服务器继续运行业务。
图5为本发明实施例五提供的可被用于实施本申请中所述的各个实施例的示例性系统;
如图5所示,在一些实施例中,系统能够作为各所述实施例中的任意一个用于内存可修复错误上报的上述设备。在一些实施例中,系统可包括具有结果的一个或多个计算机可读介质(例如,系统存储器或NVM/存储设备)以及与该一个或多个计算机可读介质耦合并被配置为执行结果以实现模块从而执行本申请中所述的动作的一个或多个处理器(例如,(一个或多个)处理器)。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来结果相关的硬件来完成,上述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本发明所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。

Claims (10)

1.一种内存可修复错误上报方法,其特征在于,所述方法应用于ARM架构服务器,所述ARM架构服务器包括若干根内存条,所述方法包括:
系统控制处理机通过I2C协议获取内存可修复错误寄存器的数值;
判断所述数值是否为基本输入输出系统设置的内存可修复错误初始阈值的倍数;
根据判断结果确认是否上报至操作系统。
2.根据权利要求1所述的内存可修复错误上报方法,其特征在于,所述获取内存可修复错误寄存器的数值之前,包括:
开启基本输入输出系统;
所述基本输入输出系统设置内存可修复错误初始阈值为第一阈值;
进入操作系统。
3.根据权利要求2所述的内存可修复错误上报方法,其特征在于,所述根据判断结果确认是否上报至操作系统,包括:
当所述内存可修复错误寄存器的数值是所述第一阈值的倍数时,系统控制处理机通过电源管理接口以中断方式上报至操作系统;
所述操作系统记录内存可修复错误上报次数。
4.根据权利要求3所述的内存可修复错误上报方法,其特征在于,所述根据判断结果确认是否上报至操作系统,还包括:
当所述内存可修复错误寄存器的数值不是所述第一阈值的倍数时,系统控制处理机不上报至操作系统;
所述系统控制处理机通过I2C协议重新获取内存可修复错误寄存器的数值。
5.根据权利要求1所述的内存可修复错误上报方法,其特征在于,所述根据判断结果确认是否上报至操作系统之后,包括:
判断所述操作系统是否关机;
若是,则停止内存可修复错误上报操作;
若否,则系统控制处理机通过I2C协议重新获取内存可修复错误寄存器的数值并判断,根据判断结果确认是否上报至操作系统。
6.根据权利要求1所述的内存可修复错误上报方法,其特征在于,所述方法还包括:
对所述ARM架构服务器的每根内存条的可修复错误分开进行上报,每次上报时携带产生可修复错误的内存条标识;
根据所述内存条标识确定各内存条上报的可修复错误次数;
根据各内存条上报的可修复错误次数确定对应的内存条处理机制。
7.根据权利要求6所述的内存可修复错误上报方法,其特征在于,所述根据各内存条上报的可修复错误次数确定对应的内存条处理机制,包括:
当任一内存条第一单位时间内可修复错误上报次数大于第二阈值时,则发出内存条错误告警,以提示对所述内存条进行物理更换;
当任一内存条第二单位时间内可修复错误上报次数小于第三阈值且所述操作系统无死机现象时,则忽略可修复错误上报问题,所述ARM架构服务器继续运行业务。
8.一种内存可修复错误上报装置,其特征在于,所述装置包括:
获取模块,用于系统控制处理机通过I2C协议获取内存可修复错误寄存器的数值;
判断模块,用于判断所述数值是否为基本输入输出系统设置的内存可修复错误初始阈值的倍数;
处理模块,用于根据判断结果确认是否上报至操作系统。
9.一种计算机设备,包括存储器、处理器及存储在存储器上的计算机程序,其特征在于,所述处理器执行所述计算机程序以实现如权利要求1至7中任一项所述方法的步骤。
10.一种计算机存储介质,其上存储有计算机程序,其特征在于,该计算机程序被存储器执行时实现如权利要求1至7中任一项所述方法的步骤。
CN202210555583.9A 2022-05-19 2022-05-19 一种内存可修复错误上报方法、装置、设备及介质 Pending CN115033409A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210555583.9A CN115033409A (zh) 2022-05-19 2022-05-19 一种内存可修复错误上报方法、装置、设备及介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210555583.9A CN115033409A (zh) 2022-05-19 2022-05-19 一种内存可修复错误上报方法、装置、设备及介质

Publications (1)

Publication Number Publication Date
CN115033409A true CN115033409A (zh) 2022-09-09

Family

ID=83121103

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210555583.9A Pending CN115033409A (zh) 2022-05-19 2022-05-19 一种内存可修复错误上报方法、装置、设备及介质

Country Status (1)

Country Link
CN (1) CN115033409A (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117349028A (zh) * 2023-12-01 2024-01-05 苏州元脑智能科技有限公司 一种内存容量调整方法、装置、电子设备和存储介质
CN117389790A (zh) * 2023-12-13 2024-01-12 苏州元脑智能科技有限公司 可恢复故障的固件检测系统、方法、存储介质及服务器

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117349028A (zh) * 2023-12-01 2024-01-05 苏州元脑智能科技有限公司 一种内存容量调整方法、装置、电子设备和存储介质
CN117349028B (zh) * 2023-12-01 2024-02-27 苏州元脑智能科技有限公司 一种内存容量调整方法、装置、电子设备和存储介质
CN117389790A (zh) * 2023-12-13 2024-01-12 苏州元脑智能科技有限公司 可恢复故障的固件检测系统、方法、存储介质及服务器
CN117389790B (zh) * 2023-12-13 2024-02-23 苏州元脑智能科技有限公司 可恢复故障的固件检测系统、方法、存储介质及服务器

Similar Documents

Publication Publication Date Title
CN115033409A (zh) 一种内存可修复错误上报方法、装置、设备及介质
US10152382B2 (en) Method and system for monitoring virtual machine cluster
DE102006048115B4 (de) System und Verfahren zum Aufzeichnen von behebbaren Fehlern
WO2023115999A1 (zh) 设备状态监控方法、装置、设备及计算机可读存储介质
US11853150B2 (en) Method and device for detecting memory downgrade error
CN104685474A (zh) 包括不可纠正的错误的地址范围的通知
CN111258591B (zh) 程序部署任务执行方法、装置、计算机设备和存储介质
CN107133137B (zh) 一种便捷的获取rmt测试信息的方法
WO2019074687A1 (en) METHOD FOR COPYING PRODUCTION BEHAVIORS IN A DEVELOPMENT ENVIRONMENT
CN114118295A (zh) 一种异常检测模型训练方法、异常检测方法、装置及介质
CN111984487A (zh) 一种离机记录故障硬件位置的方法及装置
CN116089141A (zh) 数据库故障修复方法、装置、应急库系统设备及存储介质
CN116032735A (zh) 一种交换机异常信息确定方法、装置、设备及介质
CN115904698A (zh) 使用yaml格式文件对opc ua架构的管理方法
CN114490196A (zh) 数据库切换方法、系统、设备及介质
CN100369009C (zh) 使用系统管理中断信号的监控系统及方法
CN110879757B (zh) 客户端异常运行时的重启方法、装置和计算机设备
CN112764954A (zh) 嵌入式设备的启动诊断方法,嵌入式设备和存储介质
CN111104334A (zh) 基于eeprom模块接口软件的测试方法、装置及可读取存储介质
CN110908725A (zh) 应用程序启动方法、装置、电子设备及可读介质
CN112269685B (zh) 一种启动阶段收集硬件错误的方法及装置
CN117472291B (zh) 数据块的校验方法和装置、存储介质及电子设备
CN117472474B (zh) 配置空间调试方法、系统、电子设备及存储介质
CN115454954B (zh) 数据处理方法、系统、装置及电子设备
CN116483612B (zh) 内存故障处理方法、装置、计算机设备和存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination