CN114780276A - 内存隔离方法、装置、电子设备及可读存储介质 - Google Patents
内存隔离方法、装置、电子设备及可读存储介质 Download PDFInfo
- Publication number
- CN114780276A CN114780276A CN202210422935.3A CN202210422935A CN114780276A CN 114780276 A CN114780276 A CN 114780276A CN 202210422935 A CN202210422935 A CN 202210422935A CN 114780276 A CN114780276 A CN 114780276A
- Authority
- CN
- China
- Prior art keywords
- memory
- target
- address
- isolation
- interval
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/0703—Error 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/0706—Error 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/073—Error 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/0703—Error 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/079—Root cause analysis, i.e. error or fault diagnosis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/0703—Error 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/0793—Remedial or corrective actions
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
本申请公开了一种内存隔离方法、装置、电子设备及计算机可读存储介质,该方法包括:若检测到可纠正错误,则确定可纠正错误对应的目标内存地址;基于目标内存地址确定目标地址区间;对目标地址区间进行读写隔离处理;该方法在检测到可纠正错误后,确定该错误对应的目标内存地址,进而基于目标内存地址确定预期相关联的目标地址区间;发生了可纠正错误,说明物理内存在目标内存地址可能发生硬件故障或其他导致其无法被正常读写的故障;为了避免后续其继续被读写进而导致系统可靠性下降,对其所处的目标地址区间进行读写隔离处理,使得其无法被继续读写,进而保证所有能够被读写的内存地址均为未发生过可纠正错误的地址,提高了系统的可靠性。
Description
技术领域
本申请涉及内存技术领域,特别涉及一种内存隔离方法、内存隔离装置、电子设备及计算机可读存储介质。
背景技术
ECC(Error Checking and Correcting:错误检查和纠正),是一种内存技术,大量使用在服务器领域的物理内存条中,目的是发现内存中读写数据的错误并纠正错误。在实际的生产环境中,用户态的程序和内核的系统程序在工作运行过程中会频繁的访问内存,被访问的物理内存因硬件故障或者其他原因会导致发生内存CE(Corrected error,可纠正错误)。通常情况下,在检测到CE后会对其进行忽略,这使得系统可靠性较差。
发明内容
有鉴于此,本申请的目的在于提供一种内存隔离方法、内存隔离装置、电子设备及计算机可读存储介质,提高了系统的可靠性。
为解决上述技术问题,本申请提供了一种内存隔离方法,包括:
若检测到可纠正错误,则确定可纠正错误对应的目标内存地址;
基于所述目标内存地址确定目标地址区间;
对所述目标地址区间进行读写隔离处理。
可选地,所述基于所述目标内存地址确定目标地址区间,包括:
确定所述目标内存地址对应的目标内存页,并获取所述目标内存页对应的属性信息;
基于所述属性信息,确定所述目标地址区间。
可选地,所述属性信息包括隔离标识信息和内存页类别信息;
所述基于所述属性信息,确定所述目标地址区间,包括:
若所述隔离标识信息处于使能状态,则根据所述内存页类别信息确定地址区间划定方式;
利用所述地址区间划定方式,基于所述目标内存地址确定所述目标地址区间。
可选地,所述对所述目标地址区间进行读写隔离处理,包括:
将所述目标地址区间内的内存数据迁移至后备地址区间;
利用所述后备地址区间更新所述目标地址区间对应的地址映射信息;
将所述目标地址区间设置为禁止访问区域。
可选地,所述利用所述后备地址区间更新所述目标地址区间对应的地址映射信息,包括:
利用所述地址映射信息确定所述目标地址区间对应的逻辑地址区间;
将所述逻辑地址区间与所述目标地址区间解绑,并将所述后备地址区间与所述逻辑地址区间绑定,得到新的地址映射信息。
可选地,还包括:
利用所述目标地址区间生成隔离记录;
响应于检测到满足预设报警条件,基于所述隔离记录确定异常内存标识信息。
可选地,所述预设报警条件为可纠正错误发生频率条件,所述检测到满足预设报警条件,包括:
生成目标时间区间内的可纠正错误发生频率;
若所述可纠正错误发生频率大于预设频率阈值,则确定检测到满足预设报警条件。
可选地,所述预设报警条件为单个内存隔离空间比例条件,所述检测到满足预设报警条件,包括:
确定目标内存对应的内存隔离空间比例;其中,所述内存隔离空间比例为所述目标内存中被读写隔离处理的内存空间体积占所述目标内存的总空间体积的比例;
若所述内存隔离空间比例大于预设比例阈值,则确定检测到满足预设报警条件。
本申请还提供了一种内存隔离装置,包括:
地址确定模块,用于若检测到可纠正错误,则确定可纠正错误对应的目标内存地址;
区间确定模块,用于基于所述目标内存地址确定目标地址区间;
读写隔离处理模块,用于对所述目标地址区间进行读写隔离处理。
本申请还提供了一种电子设备,包括存储器和处理器,其中:
所述存储器,用于保存计算机程序;
所述处理器,用于执行所述计算机程序,以实现上述的内存隔离方法。
本申请还提供了一种计算机可读存储介质,用于保存计算机程序,其中,所述计算机程序被处理器执行时实现上述的内存隔离方法。
本申请提供的内存隔离方法,若检测到可纠正错误,则确定可纠正错误对应的目标内存地址;基于目标内存地址确定目标地址区间;对目标地址区间进行读写隔离处理。
可见,该方法在检测到可纠正错误后,确定该错误对应的目标内存地址,进而基于目标内存地址确定预期相关联的目标地址区间。由于发生了可纠正错误,因此说明物理内存在目标内存地址可能发生硬件故障或其他导致其无法被正常读写的故障。为了避免后续其继续被读写进而导致系统可靠性下降,对其所处的目标地址区间进行读写隔离处理,使得其无法被继续读写,进而保证所有能够被读写的内存地址均为未发生过可纠正错误的地址,提高了系统的可靠性。
此外,本申请还提供了一种内存隔离装置、电子设备及计算机可读存储介质,同样具有上述有益效果。
附图说明
为了更清楚地说明本申请实施例或相关技术中的技术方案,下面将对实施例或相关技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本申请实施例提供的一种内存隔离方法流程图;
图2为本申请实施例提供的一种具体的地址映射关系更新示意图;
图3为本申请实施例提供的一种内存隔离过程示意图;
图4为本申请实施例提供的一种具体的内存隔离过程示意图;
图5为本申请实施例提供的一种具体的告警过程示意图;
图6为本申请实施例提供的一种内存隔离装置的结构示意图;
图7为本申请实施例提供的一种电子设备的结构示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
请参考图1,图1为本申请实施例提供的一种内存隔离方法流程图。该方法包括:
S101:若检测到可纠正错误,则确定可纠正错误对应的目标内存地址。
需要说明的是,本申请中的各个步骤可以由指定的电子设备执行,该电子设备具体可以为服务器、便携式终端或其他形式,该电子设备中具有内存条,具体数量不做限定。
当检测到发生了可纠正错误,可以首先确定该错误对应的目标内存地址,目标内存地址具体为内存的物理地址。本实施例并不限定可纠正错误的具体检测方式,例如当被访问的物理内存(可以被用户程序访问或被操作系统访问)因硬件故障或其他原因发生错误时,会生成硬件终端并上报内核,再由内核触发相应的事件,由用户态应用程序捕获感知。通常情况下,内核需要开启编译功能选项,例如MCE(Machine Check Exception,机器检测异常)、APEI(ACPI Platform Error Interface,高级平台错误接口,其中,ACPI为Advanced Configuration and Power Interface,高级配置与电源接口)和EDAC(ErrorDetection And Correction,错误检测和纠正)等。用户态可以部署探测监控程序,其通过内核提供的字符设备事件驱动探测、捕获和记录内存可纠正错误以及对应的目标内存地址。
S102:基于目标内存地址确定目标地址区间。
通常情况下,在硬件层面,内存具有基础的访问单元,访问单元是指内存被访问时的粒度单元,例如内存页等。当检测到目标内存地址发生可纠正错误时,为了不再访问目标内存地址,即实现对目标内存地址的隔离,需要确定目标内存地址所属的访问单元,以便在后续对整个访问单元进行禁止访问,进而起到禁止访问目标内存地址的效果。
需要说明的是,不同的内存对应的访问单元大小可以相同或不同,在同一个内存中,不同的内存地址所属的访问单元的大小也可以相同或不同,可以根据需要进行设置。因此在得到目标内存地址后,需要确定其所属的访问单元的类型,进而准确地确定其所属的目标地址空间的大小以及起始位置和终止位置。具体的,可以确定目标内存地址对应的目标内存页,并获取目标内存页对应的属性信息。其中,属性信息用于表示目标内存页的类型,能够表明目标内存页对应的访问单元的大小,例如目标内存页单独属于一个访问单元,或者目标内存页可以与其他内存页同属于一个访问单元,例如目标内存页可以为一个普通内存页,其和其他若干个普通内存页同属于一个内存大页,该内存大页为一个访问单元。在得到属性信息后,基于属性信息,确定目标地址区间。
在一种实施方式中,由于发生可纠正错误的目标内存地址可能并不是发生了硬件故障,在后续能够继续使用。为了灵活设置内存隔离的范围和适用对象,属性信息中包括隔离标识信息和内存页类别信息,其中,隔离标识信息用于表示目标内存页所属的访问单元是否能够被隔离,内存页类别信息用于表示目标内存页的类别。若隔离标识信息处于未使能状态,则说明目标内存页不参与内存隔离,在这种情况下,可以不做任何处理,忽略可纠正错误。若隔离标识信息处于使能状态,则说明目标内存页适用本申请的可纠正错误处理流程,因此根据内存页类别信息确定地址区间划定方式。根据上述说明,不同类型的内存页,例如普通内存页和内存大页,其作为访问单元的大小不同,因此对应的地址区间划定方式不同。除了访问单元的大小以外,还可以存在多种影响地址区间划定方式的因素,例如可以设置有多种不同的地址区间划定策略,如第一种策略可以为仅将目标内存页对应的访问单元划入目标地址区间,第二种策略可以为将目标内存页对应的访问单元,以及与该访问单元前后分别连接的两个访问单元划入到目标地址区间。不同内存页对应的地址区间划定方式可以根据需要预先设置,在此不作限制。在确定地址区间划定方式后,利用其基于目标内存地址确定目标地址区间。目标地址区间即为后续需要被内存隔离处理的地址范围。
S103:对目标地址区间进行读写隔离处理。
读写隔离处理,是指禁止对目标地址区间进行任何类型的访问操作的处理。可以理解的是,由于目标地址区间原本用于支持电子设备的运行,例如电子设备系统或某一用户程序的运行,在读写隔离处理后,电子设备应当能够继续正常运行。为了实现这一目的,需要用其他的内存地址区间替代目标地址区间。具体的,可以设置有后备地址区间,后备地址区间可以对应于一个访问单元或多个访问单元,可以理解的是,每个访问单元也可以对应于一个或多个后备地址区间,且相互对应的访问单元和后备地址区间的大小相同。
为了支持电子设备的运行,目标地址区间内的数据应当保留,因此在进行读写隔离处理时,可以将目标地址区间内的内存数据迁移至后备地址区间,并利用后备地址区间更新目标地址区间对应的地址映射信息,以便将原本对目标地址区间的访问引导至后备地址区间,并将目标地址区间设置为禁止访问区域,避免访问目标内存地址,进而避免再次发生可纠正错误或其他错误。
具体的,请参考图2,图2为本申请实施例提供的一种具体的地址映射关系更新示意图。可以看出,其中包括多个APP(Application,应用程序),每个APP具有对应的虚拟地址空间支撑其运行,虚拟地址空间与内存条上的物理内存空间相互对应,二者的对应关系利用page table(内存页对应表)记录,即page table为地址映射信息,其中包括多个表项,每个表项用于记录一个逻辑地址区间和一个物理地址区间的对应关系。目标地址区间作为一个物理地址区间,同样具有其对应的逻辑地址区间。后备地址区间作为目标地址区间的备份,在读写隔离处理时,应当被对应至目标地址区间的逻辑地址区间。
因此,在更新地址映射信息时,可以首先利用地址映射信息确定目标地址区间对应的逻辑地址区间,并将逻辑地址区间与目标地址区间解绑,并将后备地址区间与逻辑地址区间绑定,得到新的地址映射信息。本实施例并不限定解绑和绑定的具体方式,例如在一种实施方式中,可以在地址映射信息中删除目标地址区间和逻辑地址区间的内容以完成解绑,再新增后备地址区间和逻辑地址区间的对应关系以完成绑定。在另一种实施方式中,可以在地址映射信息中删除目标地址区间以完成解绑,再利用后备地址区间替代原本目标地址区间的位置以完成绑定。
在读写隔离处理完毕后,还可以对本次隔离处理进行记录,并在需要时进行告警,以便提醒对内存条进行更换或执行其他处理。具体的,利用目标地址区间生成隔离记录,并响应于检测到满足预设报警条件,基于隔离记录确定异常内存标识信息。异常内存标识信息,是指能够表示发生了可纠正错误的内存的信息。由于隔离记录中具有目标地址区间,能够根据目标地址区间确定目标内存地址所属的内存,进而确定异常内存标识信息。例如,在物理硬件架构(intel架构)中,每个处理器(即CPU)可以通过内存控制器(,memorycontroller,MC)连接通道(channel),每个通道上可以插入一个或多个内存条(例如DIMM,Dual-Inline-Memory-Modules,双列直插式存储模块)。处理器、MC、channel和DIMM编号(即内存标识信息)之间的位置对应关系与内存条在电子设备的内存插槽的位置关系相关,通过预设该对应关系,可以在报警时直接说明硬件内存条在电子设备中的插槽位置,快速定位异常内存。使用物理地址(即目标地址区间或目标内存地址),通过内核驱动,能够解析出其所属的内存条。
预设报警条件可以有一个或多个,具体内容不做限定,可以根据需要进行设置。例如在一种实施方式中,若频繁发生可纠正错误,则说明可纠正错误并不是偶然发生,有其他因素导致其频发,在这种情况下,可以进行告警。具体的,预设报警条件为可纠正错误发生频率条件,在这种情况下,生成目标时间区间内的可纠正错误发生频率,其中,目标时间区间的确定方式不做限定,例如可以预设目标时间区间的区间长度,并以当前时刻为基准,向前选取目标时间区间。或者,目标时间区间为固定的时间区间,例如每天的早上九点至早上十一点。若可纠正错误发生频率大于预设频率阈值,则确定检测到满足预设报警条件。预设频率阈值的大小不做限制。
在另一种实施方式中,当单个内存中被隔离的空间占比太大,则其中可用的空间较少,使得整个设备的可用内存空间较少,可能会导致其无法正常运行。具体的,预设报警条件为单个内存隔离空间比例条件,在这种情况下,可以确定目标内存对应的内存隔离空间比例。其中,内存隔离空间比例为目标内存中被读写隔离处理的内存空间体积占目标内存的总空间体积的比例,目标内存可以为电子设备中的任意一个内存条。若内存隔离空间比例大于预设比例阈值,则确定检测到满足预设报警条件。
应用本申请实施例提供的内存隔离方法,在检测到可纠正错误后,确定该错误对应的目标内存地址,进而基于目标内存地址确定预期相关联的目标地址区间。由于发生了可纠正错误,因此说明物理内存在目标内存地址可能发生硬件故障或其他导致其无法被正常读写的故障。为了避免后续其继续被读写进而导致系统可靠性下降,对其所处的目标地址区间进行读写隔离处理,使得其无法被继续读写,进而保证所有能够被读写的内存地址均为未发生过可纠正错误的地址,提高了系统的可靠性。
请参考图3,图3为本申请实施例提供的一种内存隔离过程示意图,其中包括内存ECC监控系统、内存ECC隔离管理系统和内存ECC告警系统。其中,内存ECC监控系统是可纠正错误内存的监控探测系统,在应用层启动mcelog守护进程,用以监控CE内存并记录CE错误地址(即发生可纠正错误的目标内存地址),内存ECC监控系统的服务启动后,对内核通过的字符设备注册事件,并在检测到ECC事件通知时被唤醒。
内存ECC隔离管理系统是用于进行可纠正错误内存(即发生可纠正错误的内存)隔离的系统,当存在CE错误地址时,用户态触发Linux内核在内核空间隔离CE内存地址,单个CE内存隔离流程如图4所示:
(1)获取监控探测的CE内存地址,然后判断其是否已经被记录,未被记录则说明其未被隔离,在这情况下可以执行下一步;
(2)针对获取的CE地址,分析内存页属性以便确定其隔离优化算法(即地址区间划定方式),并针对不同的内存页隔离区域优化算法计算需要隔离的内存地址范围;
(3)通过内核sys系统接口trigger内核隔离需要隔离的内存页;
(4)分析隔离结果,并生成相应的记录,即内存故障记录。
内存ECC告警系统用于周期性检查上述第(4)步生成的内存故障记录,进一步判断物理主机中所有内存条上出现CE错误的频率,当频率超过用户设置的阈值范围时发出故障告警。当进行CE内存隔离时,使用物理内存地址通过内核EDAC驱动解析目标内存地址所属的内存条,并统计每根内存条中隔离的内存大小。告警系统流程如图5所示:
(1)检查获取ECC故障情况,并进行内存条的位置解析,确定具体的内存条;
(2)采集CE故障分布(包括ECC隔离地址区域和错误频率)并进行分析,判断是否满足告警条件,告警条件可以为上述的单个内存阁丽空间比例条件或可纠正错误发生频率条件。在满足条件时,触发用户告警(告警方式可以使用邮件或者短信的方式)。
下面对本申请实施例提供的内存隔离装置进行介绍,下文描述的内存隔离装置与上文描述的内存隔离方法可相互对应参照。
请参考图6,图6为本申请实施例提供的一种内存隔离装置的结构示意图,包括:
地址确定模块110,用于若检测到可纠正错误,则确定可纠正错误对应的目标内存地址;
区间确定模块120,用于基于目标内存地址确定目标地址区间;
读写隔离处理模块130,用于对目标地址区间进行读写隔离处理。
可选地,区间确定模块120,包括:
属性获取单元,用于确定目标内存地址对应的目标内存页,并获取目标内存页对应的属性信息;
区间确定单元,用于基于属性信息,确定目标地址区间。
可选地,属性信息包括隔离标识信息和内存页类别信息;
区间确定单元,包括:
划分方式确定子单元,用于若隔离标识信息处于使能状态,则根据内存页类别信息确定地址区间划定方式;
区间确定子单元,用于利用地址区间划定方式,基于目标内存地址确定目标地址区间。
可选地,读写隔离处理模块130,包括:
数据迁移单元,用于将目标地址区间内的内存数据迁移至后备地址区间;
映射信息更新单元,用于利用后备地址区间更新目标地址区间对应的地址映射信息;
权限设置单元,用于将目标地址区间设置为禁止访问区域。
可选地,映射信息更新单元,包括:
逻辑地址确定子单元,用于利用地址映射信息确定目标地址区间对应的逻辑地址区间;
重新绑定单元,用于将逻辑地址区间与目标地址区间解绑,并将后备地址区间与逻辑地址区间绑定,得到新的地址映射信息。
可选地,还包括:
记录生成模块,用于利用目标地址区间生成隔离记录;
标识信息确定模块,用于响应于检测到满足预设报警条件,基于隔离记录确定异常内存标识信息。
可选地,标识信息确定模块,包括:
频率生成单元,用于生成目标时间区间内的可纠正错误发生频率;
第一确定单元,用于若可纠正错误发生频率大于预设频率阈值,则确定检测到满足预设报警条件。
可选地,标识信息确定模块,包括:
比例计算单元,用于确定目标内存对应的内存隔离空间比例;其中,内存隔离空间比例为目标内存中被读写隔离处理的内存空间体积占目标内存的总空间体积的比例;
第二确定单元,用于若内存隔离空间比例大于预设比例阈值,则确定检测到满足预设报警条件。
下面对本申请实施例提供的电子设备进行介绍,下文描述的电子设备与上文描述的内存隔离方法可相互对应参照。
请参考图7,图7为本申请实施例提供的一种电子设备的结构示意图。其中电子设备100可以包括处理器101和存储器102,还可以进一步包括多媒体组件103、信息输入/信息输出(I/O)接口104以及通信组件105中的一种或多种。
其中,处理器101用于控制电子设备100的整体操作,以完成上述的内存隔离方法中的全部或部分步骤;存储器102用于存储各种类型的数据以支持在电子设备100的操作,这些数据例如可以包括用于在该电子设备100上操作的任何应用程序或方法的指令,以及应用程序相关的数据。该存储器102可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,例如静态随机存取存储器(Static Random Access Memory,SRAM)、电可擦除可编程只读存储器(Electrically Erasable Programmable Read-Only Memory,EEPROM)、可擦除可编程只读存储器(Erasable Programmable Read-Only Memory,EPROM)、可编程只读存储器(Programmable Read-Only Memory,PROM)、只读存储器(Read-OnlyMemory,ROM)、磁存储器、快闪存储器、磁盘或光盘中的一种或多种。
多媒体组件103可以包括屏幕和音频组件。其中屏幕例如可以是触摸屏,音频组件用于输出和/或输入音频信号。例如,音频组件可以包括一个麦克风,麦克风用于接收外部音频信号。所接收的音频信号可以被进一步存储在存储器102或通过通信组件105发送。音频组件还包括至少一个扬声器,用于输出音频信号。I/O接口104为处理器101和其他接口模块之间提供接口,上述其他接口模块可以是键盘,鼠标,按钮等。这些按钮可以是虚拟按钮或者实体按钮。通信组件105用于电子设备100与其他设备之间进行有线或无线通信。无线通信,例如Wi-Fi,蓝牙,近场通信(Near Field Communication,简称NFC),2G、3G或4G,或它们中的一种或几种的组合,因此相应的该通信组件105可以包括:Wi-Fi部件,蓝牙部件,NFC部件。
电子设备100可以被一个或多个应用专用集成电路(Application SpecificIntegrated Circuit,简称ASIC)、数字信号处理器(Digital Signal Processor,简称DSP)、数字信号处理设备(Digital Signal Processing Device,简称DSPD)、可编程逻辑器件(Programmable Logic Device,简称PLD)、现场可编程门阵列(Field ProgrammableGate Array,简称FPGA)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述实施例给出的内存隔离方法。
下面对本申请实施例提供的计算机可读存储介质进行介绍,下文描述的计算机可读存储介质与上文描述的内存隔离方法可相互对应参照。
本申请还提供一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现上述的内存隔离方法的步骤。
该计算机可读存储介质可以包括:U盘、移动硬盘、只读存储器(Read-OnlyMemory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
本领域技术人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件的方式来执行,取决于技术方案的特定应用和设计约束条件。本领域技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应该认为超出本申请的范围。
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系属于仅仅用来将一个实体或者操作与另一个实体或者操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语包括、包含或者其他任何变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。
本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。
Claims (11)
1.一种内存隔离方法,其特征在于,包括:
若检测到可纠正错误,则确定可纠正错误对应的目标内存地址;
基于所述目标内存地址确定目标地址区间;
对所述目标地址区间进行读写隔离处理。
2.根据权利要求1所述的内存隔离方法,其特征在于,所述基于所述目标内存地址确定目标地址区间,包括:
确定所述目标内存地址对应的目标内存页,并获取所述目标内存页对应的属性信息;
基于所述属性信息,确定所述目标地址区间。
3.根据权利要求2所述的内存隔离方法,其特征在于,所述属性信息包括隔离标识信息和内存页类别信息;
所述基于所述属性信息,确定所述目标地址区间,包括:
若所述隔离标识信息处于使能状态,则根据所述内存页类别信息确定地址区间划定方式;
利用所述地址区间划定方式,基于所述目标内存地址确定所述目标地址区间。
4.根据权利要求1所述的内存隔离方法,其特征在于,所述对所述目标地址区间进行读写隔离处理,包括:
将所述目标地址区间内的内存数据迁移至后备地址区间;
利用所述后备地址区间更新所述目标地址区间对应的地址映射信息;
将所述目标地址区间设置为禁止访问区域。
5.根据权利要求4所述的内存隔离方法,其特征在于,所述利用所述后备地址区间更新所述目标地址区间对应的地址映射信息,包括:
利用所述地址映射信息确定所述目标地址区间对应的逻辑地址区间;
将所述逻辑地址区间与所述目标地址区间解绑,并将所述后备地址区间与所述逻辑地址区间绑定,得到新的地址映射信息。
6.根据权利要求1所述的内存隔离方法,其特征在于,还包括:
利用所述目标地址区间生成隔离记录;
响应于检测到满足预设报警条件,基于所述隔离记录确定异常内存标识信息。
7.根据权利要求6所述的内存隔离方法,其特征在于,所述预设报警条件为可纠正错误发生频率条件,所述检测到满足预设报警条件,包括:
生成目标时间区间内的可纠正错误发生频率;
若所述可纠正错误发生频率大于预设频率阈值,则确定检测到满足预设报警条件。
8.根据权利要求6所述的内存隔离方法,其特征在于,所述预设报警条件为单个内存隔离空间比例条件,所述检测到满足预设报警条件,包括:
确定目标内存对应的内存隔离空间比例;其中,所述内存隔离空间比例为所述目标内存中被读写隔离处理的内存空间体积占所述目标内存的总空间体积的比例;
若所述内存隔离空间比例大于预设比例阈值,则确定检测到满足预设报警条件。
9.一种内存隔离装置,其特征在于,包括:
地址确定模块,用于若检测到可纠正错误,则确定可纠正错误对应的目标内存地址;
区间确定模块,用于基于所述目标内存地址确定目标地址区间;
读写隔离处理模块,用于对所述目标地址区间进行读写隔离处理。
10.一种电子设备,其特征在于,包括存储器和处理器,其中:
所述存储器,用于保存计算机程序;
所述处理器,用于执行所述计算机程序,以实现如权利要求1至8任一项所述的内存隔离方法。
11.一种计算机可读存储介质,其特征在于,用于保存计算机程序,其中,所述计算机程序被处理器执行时实现如权利要求1至8任一项所述的内存隔离方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210422935.3A CN114780276A (zh) | 2022-04-21 | 2022-04-21 | 内存隔离方法、装置、电子设备及可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210422935.3A CN114780276A (zh) | 2022-04-21 | 2022-04-21 | 内存隔离方法、装置、电子设备及可读存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114780276A true CN114780276A (zh) | 2022-07-22 |
Family
ID=82430525
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210422935.3A Pending CN114780276A (zh) | 2022-04-21 | 2022-04-21 | 内存隔离方法、装置、电子设备及可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114780276A (zh) |
-
2022
- 2022-04-21 CN CN202210422935.3A patent/CN114780276A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11977744B2 (en) | Memory anomaly processing method and system, electronic device, and storage medium | |
EP2567319B1 (en) | Methods and system for verifying memory device integrity | |
US10713128B2 (en) | Error recovery in volatile memory regions | |
EP2567320B1 (en) | Methods and system for verifying memory device integrity | |
US10915388B2 (en) | Data storage device and associated operating method capable of detecting errors and effectively protecting data | |
CN115495025B (zh) | 一种管理异常存储块的方法和装置 | |
CN109753378A (zh) | 一种内存故障的隔离方法、装置、系统及可读存储介质 | |
CN102968353A (zh) | 一种失效地址处理方法及装置 | |
CN114461436A (zh) | 一种内存故障处理方法、装置及计算机可读存储介质 | |
CN104866388B (zh) | 数据处理方法及装置 | |
CN109710443B (zh) | 一种数据处理方法、装置、设备及存储介质 | |
CN116820898B (zh) | 一种eMMC的运行状态监控方法、系统及计算机可读存储介质 | |
WO2021027271A1 (zh) | 坏块信息保护方法、装置、计算机设备及存储介质 | |
CN109086162B (zh) | 一种内存诊断方法和装置 | |
CN114780276A (zh) | 内存隔离方法、装置、电子设备及可读存储介质 | |
CN110865772A (zh) | 保护系统数据物理块擦除计数值的方法、装置、计算机设备及存储介质 | |
CN115421960A (zh) | 一种ue内存故障恢复方法、装置、电子设备及介质 | |
US20220374310A1 (en) | Write request completion notification in response to partial hardening of write data | |
CN112486747A (zh) | 存储器异常检测方法、装置、电子设备及可读存储介质 | |
CN110647455A (zh) | 一种存储设备重启记录方法和系统 | |
EP3504627B1 (en) | Read operation redirect | |
CN106874161B (zh) | 一种高速缓存异常的处理方法及装置 | |
CN116069576A (zh) | 异常下电检测方法、电子设备及存储介质 | |
CN117406910A (zh) | 数据存储方法、存储装置及计算机可读存储装置 | |
CN117992286A (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 |