CN114780275A - 内存隔离复用方法、装置、设备及存储介质 - Google Patents

内存隔离复用方法、装置、设备及存储介质 Download PDF

Info

Publication number
CN114780275A
CN114780275A CN202210421785.4A CN202210421785A CN114780275A CN 114780275 A CN114780275 A CN 114780275A CN 202210421785 A CN202210421785 A CN 202210421785A CN 114780275 A CN114780275 A CN 114780275A
Authority
CN
China
Prior art keywords
memory
isolation
identification data
address
unique
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
CN202210421785.4A
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.)
Sangfor Technologies Co Ltd
Original Assignee
Sangfor Technologies 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 Sangfor Technologies Co Ltd filed Critical Sangfor Technologies Co Ltd
Priority to CN202210421785.4A priority Critical patent/CN114780275A/zh
Publication of CN114780275A publication Critical patent/CN114780275A/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/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/0793Remedial 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)
  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

本申请公开了一种内存隔离复用方法、装置、电子设备及计算机可读存储介质,该方法包括:在启动过程中,获取内存隔离标识数据;解析内存隔离标识数据,得到目标内存对应的隔离地址;对目标内存中隔离地址对应的内存空间进行读写隔离处理;该方法利用内存隔离标识数据记录重启之前的隔离地址,并在启动过程中重新得到改地址并进行读写隔离,实现对隔离地址的复用,无需再次重新检测隔离地址,提高了效率。

Description

内存隔离复用方法、装置、设备及存储介质
技术领域
本申请涉及内存技术领域,特别涉及一种内存隔离复用方法、内存隔离复用装置、电子设备及计算机可读存储介质。
背景技术
ECC(Error Checking and Correcting:错误检查和纠正),是一种内存技术,大量使用在服务器领域的物理内存条中,目的是发现内存中读写数据的错误并纠正错误。在实际的生产环境中,用户态的程序和内核的系统程序在工作运行过程中会频繁的访问内存,被访问的物理内存因硬件故障或者其他原因会导致发生内存CE(Corrected error,可纠正错误)。内存的隔离是通过标记故障物理内存页地址(通常在OS(Linux)系统层)后实现不再分配使用的效果,当服务器重启后,上一次的故障隔离记录失效,使得需要再次重新检测并隔离,效率较低。
发明内容
有鉴于此,本申请的目的在于提供一种内存隔离复用方法、内存隔离复用装置、电子设备及计算机可读存储介质,提高了效率。
为解决上述技术问题,本申请提供了一种内存隔离复用方法,包括:
在启动过程中,获取内存隔离标识数据;
解析所述内存隔离标识数据,得到目标内存对应的隔离地址;
对所述目标内存中所述隔离地址对应的内存空间进行读写隔离处理。
可选地,所述内存隔离标识数据包括内存唯一标识数据、与内存中各个内存地址分别对应的各个隔离状态标识;
所述解析所述内存隔离标识数据,得到目标内存对应的隔离地址,包括:
若目标内存地址的隔离状态标识为使能状态,则将所述目标内存地址确定为所述隔离地址。
可选地,所述内存隔离标识数据包括与内存中各个内存地址分别对应的各个隔离方式数据;
所述对所述目标内存中所述隔离地址对应的内存空间进行读写隔离处理,包括:
根据所述隔离方式数据确定各个隔离地址对应的读写隔离处理方式;
基于所述读写隔离处理方式,分别对各个所述隔离地址进行读写隔离处理。
可选地,所述内存隔离标识数据包括内存唯一标识数据,所述方法还包括:
获取各个当前内存分别对应的当前内存唯一标识数据;
判断所述内存唯一标识数据与所述当前内存唯一标识数据是否匹配;
若匹配,则确定执行解析所述内存隔离标识数据,得到目标内存对应的隔离地址的步骤。
可选地,还包括:
若所述内存唯一标识数据与所述当前内存唯一标识数据不匹配,则确定第一唯一标识数据、第二唯一标识数据和第三目标唯一标识数据;
利用所述第一唯一标识数据,替换所述内存隔离标识数据中的所述第二唯一标识数据,并对所述内存隔离标识数据中与所述第二唯一标识数据对应的内容进行初始化处理;
利用所述内存隔离标识数据中所述第三唯一标识数据对应的内容得到目标内存对应的隔离地址,并对所述目标内存中所述隔离地址对应的内存空间进行读写隔离处理;
其中,所述第一唯一标识数据为不属于内存唯一标识数据的当前内存唯一标识数据,所述第二唯一标识数据为不属于当前唯一标识数据的内存唯一标识数据,所述第三唯一标识数据为属于当前唯一标识数据的内存唯一标识数据。
可选地,在获取内存隔离标识数据之前,还包括:
判断是否存在所述内存隔离标识数据;
若存在,则确定执行获取内存隔离标识数据的步骤;
若不存在,则生成初始隔离标识数据。
可选地,还包括:
若检测到可纠正错误,则确定可纠正错误对应的目标地址区间;
对所述目标地址区间进行读写隔离处理;
根据所述目标地址区间更新所述内存隔离标识数据。
本申请还提供了一种内存隔离复用装置,包括:
获取模块,用于在启动过程中,获取内存隔离标识数据;
解析模块,用于解析所述内存隔离标识数据,得到目标内存对应的隔离地址;
隔离模块,用于对所述目标内存中所述隔离地址对应的内存空间进行读写隔离处理。
本申请还提供了一种电子设备,包括存储器和处理器,其中:
所述存储器,用于保存计算机程序;
所述处理器,用于执行所述计算机程序,以实现上述的内存隔离复用方法。
本申请还提供了一种计算机可读存储介质,用于保存计算机程序,其中,所述计算机程序被处理器执行时实现上述的内存隔离复用方法。
本申请提供的内存隔离复用方法,在启动过程中,获取内存隔离标识数据;解析内存隔离标识数据,得到目标内存对应的隔离地址;对目标内存中隔离地址对应的内存空间进行读写隔离处理。
可见,该方法中配置有内存隔离标识数据,其中记录有重启之前的目标内存对应的隔离地址。在服务器启动过程中,获取内存隔离标识数据,进而从中得到隔离地址,并对隔离地址对应的内存空间进行读写隔离处理。通过利用内存隔离标识数据记录重启之前的隔离地址,并在启动过程中重新得到改地址并进行读写隔离,实现对隔离地址的复用,无需再次重新检测隔离地址,提高了效率。
此外,本申请还提供了一种内存隔离复用装置、电子设备及计算机可读存储介质,同样具有上述有益效果。
附图说明
为了更清楚地说明本申请实施例或相关技术中的技术方案,下面将对实施例或相关技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本申请实施例提供的一种内存隔离复用方法流程图;
图2为本申请实施例提供的一种内存隔离标识数据的数据结构示意图;
图3为本申请实施例提供的一种具体的内存隔离复用方法流程图;
图4为本申请实施例提供的一种内存隔离复用装置的结构示意图;
图5为本申请实施例提供的一种电子设备的结构示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
请参考图1,图1为本申请实施例提供的一种内存隔离复用方法流程图。该方法包括:
S101:在启动过程中,获取内存隔离标识数据。
需要说明的是,本申请中的各个步骤可以由指定的电子设备执行,该电子设备具体可以为服务器、便携式终端或其他形式,该电子设备中具有内存条,具体数量不做限定。
电子设备可以在检测到开机事件时开始启动,开机事件具体可以为由硬件或软件触发的事件,例如可以为电子设备上的开机按键被按下,启动电路通电的时间,或者可以为电子设备检测到操作系统等软件生成的启动指令的时间。在电子设备的启动过程中,可以执行本申请的内存隔离复用方法,以便复用本次启动之前电子设备检测到的隔离地址,进而无需对之前已经检测到的隔离地址进行再次检测。
具体的,内存隔离标识数据,是指对内存中因硬件故障或其他原因导致无法被正常读写的内存地址进行标识的数据,其具体形式不做限定。例如可以参考图2,图2为本申请实施例提供的一种内存隔离标识数据的数据结构示意图。其中内存隔离标识数据为位图(bitmap)形式,分为头部区(即head)和数据区(即data),头部区用于记载该内存隔离数据对应的内存(即内存条)的唯一标识数据,例如可以包括内存条的插槽位置和内存条的SN(Serial Number,产品序列号)码,或者可以仅包括内存条的SN码。数据区中以数据条目为单位记录数据,每个数据条目的大小不做限定,例如可以为8位。每个数据条目对应于内存中的一个内存地址或地址区间,例如每个数据条目可以固定对应于1MB大小的地址区间,或者每个数据条目可以对应于一个内存页,不同类型内存页对应的页大小不同。各个数据条目在内存隔离标识数据在偏移位置大小关系,与其对应的各个内存地址或地址区间在内存条中的相对位置关系相对应。即当某一个数据条目与另一个数据条目紧邻,且在另一个数据条目之前时,该数据条目对应的内存地址或地址区间同样与另一个数据条目对应的内存地址或地址区间紧邻,且同样在另一个数据条目对应的内存地址或地址区间之前。
每个数据条目中有若干个标识数据位,不同的标识数据位代表不同的含义,具体可以根据需要进行设置,例如可以用于标识是否被隔离,或者可以用于表示被隔离时采用的方法或接口,或者可以用于表示该数据条目对应的地址区间的大小,或者可以用于表示该地址区间是否能够被隔离等。在该内存隔离标识数据被使用时,可以按照某一数据条目在整个内存隔离标识数据中的偏移定位,该偏移的大小可以为:
偏移=(((addr)&(~0xfffff))/(1024*1024))*8+head_size;
其中,addr为数据存储地址,head_size为头部区的大小,例如可以为16K。
可以理解的是,若电子设备为首次启动,则其必然没有生成过内存隔离标识数据,因此在获取内存隔离标识数据之前,可以先判断是否存在内存隔离标识数据。具体的,可以预设内存隔离标识数据的存储位置,通过检测该存储位置是否具有数据,即可确定是否存在内存隔离标识数据。或者,可以采用其他可行的检测方式进行检测。若存在,则确定执行获取内存隔离标识数据的步骤。若不存在,则说明本次为首次启动,在这种情况下,可以生成初始隔离标识数据,以便后续生成内存隔离标识数据。其中,初始隔离标识数据,是指初始化得到的内存隔离标识数据,其中未记录任何隔离地址。当初始隔离标识数据中记录有至少一个隔离地址时,即转换为内存隔离标识数据。
S102:解析内存隔离标识数据,得到目标内存对应的隔离地址。
在得到内存隔离标识数据后,基于其对内存的存储空间(即内存空间)进行读写隔离处理,即可实现对隔离地址的复用,间已检测出无法被使用的内存地址进行隔离。具体的,在对内存空间进行读写隔离处理时,首先需要根据内存隔离标识数据确定需要读写隔离处理的具体位置,即隔离地址。
目标内存,是指具有隔离地址的内存,电子设备的内存数量不做限定,其中的一个、部分或全部可以为目标内存。需要说明的是,内存隔离标识数据的数量同样不做限定,在一种实施方式中,一个内存隔离标识数据对应于多个内存,例如可以对应于所有的内存;在另一种实施方式中,一个内存隔离标识数据对应于一个内存,例如如图2所示,一个内存隔离标识数据中的头部区仅记录一个内存的唯一标识数据,用以表征与内存的对应关系。
可以理解的是,所有的内存隔离标识数据采用相同的数据结构构成,因此在得到内存隔离标识数据时,可以按照该数据隔离对其进行解析,得到目标内存的隔离地址。具体的,在一种实施方式中,内存隔离标识数据包括内存唯一标识数据,以及与内存中各个内存地址分别对应的各个隔离状态标识。隔离状态标识,是指表征对内存地址是否进行隔离处理的标识,例如可以采用1标识需要隔离处理,用0标识不需要隔离处理。在解析后,若目标内存地址的隔离状态标识为使能状态,则说明需要进行隔离处理,因此将目标内存地址确定为隔离地址,并将该目标内存地址所属的内存确定为目标内存。
进一步的,在某些情况下,服务器在本次启动之前更换过新内存,由于新内存为初次在本电子设备上使用,无法确定其是否存在无法被使用的内存地址。在这情况下,可以视为其不存在需要被隔离的隔离地址,可以在后续使用过程中进一步确定。可以理解的是,被替换掉的旧内存对应的内存隔离标识数据无法适用于新内存,因此,为了避免将旧内存的内存隔离标识数据应用于新内存导致的不适当的内存隔离,本实施方式中,内存隔离标识数据包括内存唯一标识数据,可以获取各个当前内存分别对应的当前内存唯一标识数据,例如SN码,并判断内存唯一标识数据与当前内存唯一标识数据是否匹配,若匹配,则确定可以执行解析内存隔离标识数据,得到目标内存对应的隔离地址的步骤。
相应的,若内存唯一标识数据与当前内存唯一标识数据不匹配,则确定第一唯一标识数据、第二唯一标识数据和第三目标唯一标识数据。其中,第一唯一标识数据为不属于内存唯一标识数据的当前内存唯一标识数据,第二唯一标识数据为不属于当前唯一标识数据的内存唯一标识数据,第三唯一标识数据为属于当前唯一标识数据的内存唯一标识数据。可以理解的是,第一唯一标识数据为新内存对应的唯一标识数据,第二唯一标识数据为旧内存对应的唯一标识数据,第三唯一标识数据为未被更换的内存对应的唯一标识数据。
由于旧内存已经被替换,因此其原有的内存隔离标识数据即为无效,因此可以利用第一唯一标识数据,替换内存隔离标识数据中的第二唯一标识数据,并对内存隔离标识数据中与第二唯一标识数据对应的内容进行初始化处理。具体的,若内存隔离标识数据仅对应于一个内存,因此当检测到一个内存隔离标识数据中的内存唯一标识数据为旧内存的唯一标识数据时,可以利用一个新内存的唯一标识数据对其进行替换,相应的,对其中的数据内容进行初始化处理。此外,还可以利用内存隔离标识数据中第三唯一标识数据对应的内容得到目标内存对应的隔离地址,并对目标内存中隔离地址对应的内存空间进行读写隔离处理,即对没有被替换的内存仍然按照先前的记录进行隔离处理。读写隔离处理,是指使得隔离地址无法被读写的处理,具体处理过程可以参考相关技术,在此不做限定。
需要说明的是,通常情况下,电子设备的内存数量不会变化,因此当发生内存替换时,必然存在上述的第一唯一标识数据、第二唯一标识数据和第三唯一标识数据。在某些特殊情况下,也可能存在上述三种的部分,例如当电子设备上的某个旧内存被取下,没有被替换,在这种情况下即仅存在第二唯一标识数据和第三唯一标识数据。或者,电子设备上新增了新内存,没有旧内存被替换,在这种情况下即仅存在第一唯一标识数据和第三唯一标识数据。可以理解的是,当不存在哪一类唯一标识数据时,上述实施例中该类唯一标识数据的步骤不执行即可。
S103:对目标内存中隔离地址对应的内存空间进行读写隔离处理。
在确定隔离地址后,可以对各个隔离地址对应的内存空间进行读写隔离处理,读写隔离处理可以使得隔离地址的内存空间无法被读写,避免因使用了隔离地址导致数据丢失等异常造成系统可用性降低。
读写隔离处理的具体方式不做限定,在一种实施方式中,可以为不同的隔离地址设置不同的读写隔离方式,例如可以采用不同的接口执行读写隔离处理。具体的,内存隔离标识数据包括与内存中各个内存地址分别对应的各个隔离方式数据,隔离方式数据,是指用于表示隔离方式的类型的数据,可以根据隔离方式数据确定各个隔离地址对应的读写隔离处理方式,进而基于读写隔离处理方式,分别对各个隔离地址进行读写隔离处理,完成对隔离地址的复用。
可以理解的是,在电子设备完成启动的运行过程中,可能因硬件故障等其他原因,出现新的隔离地址。因此电子设备若检测到可纠正错误,则确定可纠正错误对应的目标地址区间。可纠正错误即为CE,Corrected error,其可以通过ECC监测得到。ECC(ErrorChecking and Correcting:错误检查和纠正),是一种内存技术,大量使用在服务器领域的物理内存条中,目的是发现内存中读写数据的可纠正错误并纠正错误。在检测到可纠正错误后,可以确定引起该错误的目标地址区间,以便对目标地址区间进行读写隔离处理。此外,还可以根据目标地址区间更新内存隔离标识数据,以便对新出现的隔离地址(即目标地址区间)进行记录。
请参考图3,图3为本申请实施例提供的一种具体的内存隔离复用方法流程图。在服务器启动时,可以首选读取各个内存条(即内存)对应的内存条插槽位置和对应的SN码。然后判断隔离记录位图文件(即内存隔离标识数据)是否存在,若不存在,则直接新建一个位图文件并进行初始化,得到初始隔离标识数据。若存在,则利用读取到的内存条插槽位置和对应的SN码,与隔离记录位图文件头部区内记录的内存条插槽位置以及SN码是否相等。若不相等,则更新隔离记录位图头部区的内存插槽位置信息,相应的,还需要对对应的数据部分进行初始化处理。若相等,则将隔离位图(即隔离记录位图文件)中标记的待隔离故障内存区域(即隔离地址)进行隔离。
应用本申请实施例提供的内存隔离复用方法,配置有内存隔离标识数据,其中记录有重启之前的目标内存对应的隔离地址。在服务器启动过程中,获取内存隔离标识数据,进而从中得到隔离地址,并对隔离地址对应的内存空间进行读写隔离处理。通过利用内存隔离标识数据记录重启之前的隔离地址,并在启动过程中重新得到改地址并进行读写隔离,实现对隔离地址的复用,无需再次重新检测隔离地址,提高了效率。
下面对本申请实施例提供的内存隔离复用装置进行介绍,下文描述的内存隔离复用装置与上文描述的内存隔离复用方法可相互对应参照。
请参考图4,图4为本申请实施例提供的一种内存隔离复用装置的结构示意图,包括:
获取模块110,用于在启动过程中,获取内存隔离标识数据;
解析模块120,用于解析内存隔离标识数据,得到目标内存对应的隔离地址;
隔离模块130,用于对目标内存中隔离地址对应的内存空间进行读写隔离处理。
可选地,内存隔离标识数据包括内存唯一标识数据、与内存中各个内存地址分别对应的各个隔离状态标识;
解析模块120,包括:
隔离地址确定单元,用于若目标内存地址的隔离状态标识为使能状态,则将目标内存地址确定为隔离地址。
可选地,内存隔离标识数据包括与内存中各个内存地址分别对应的各个隔离方式数据;
隔离模块130,包括:
方式确定单元,用于根据隔离方式数据确定各个隔离地址对应的读写隔离处理方式;
隔离处理单元,用于基于读写隔离处理方式,分别对各个隔离地址进行读写隔离处理。
可选地,内存隔离标识数据包括内存唯一标识数据,装置还包括:
当前标识获取模块,用于获取各个当前内存分别对应的当前内存唯一标识数据;
匹配判断模块,用于判断内存唯一标识数据与当前内存唯一标识数据是否匹配;
相应的,隔离模块130为确定内存唯一标识数据与当前内存唯一标识数据匹配后,解析内存隔离标识数据,得到目标内存对应的隔离地址的模块。
可选地,还包括:
标识数据分类模块,用于若内存唯一标识数据与当前内存唯一标识数据不匹配,则确定第一唯一标识数据、第二唯一标识数据和第三目标唯一标识数据;
标识数据初始化模块,用于利用第一唯一标识数据,替换内存隔离标识数据中的第二唯一标识数据,并对内存隔离标识数据中与第二唯一标识数据对应的内容进行初始化处理;
读写隔离处理模块,用于利用内存隔离标识数据中第三唯一标识数据对应的内容得到目标内存对应的隔离地址,并对目标内存中隔离地址对应的内存空间进行读写隔离处理;
其中,第一唯一标识数据为不属于内存唯一标识数据的当前内存唯一标识数据,第二唯一标识数据为不属于当前唯一标识数据的内存唯一标识数据,第三唯一标识数据为属于当前唯一标识数据的内存唯一标识数据。
可选地,还包括:
存在判断模块,用于判断是否存在内存隔离标识数据;
相应的,获取模块110为确定内存隔离标识数据存在后,获取内存隔离标识数据的模块;
初始化数据生成模块,用于若内存隔离标识数据不存在,则生成初始隔离标识数据。
可选地,还包括:
目标地址区间确定模块,用于若检测到可纠正错误,则确定可纠正错误对应的目标地址区间;
目标隔离模块,用于对目标地址区间进行读写隔离处理;
标识数据更新模块,用于根据目标地址区间更新内存隔离标识数据。
下面对本申请实施例提供的电子设备进行介绍,下文描述的电子设备与上文描述的内存隔离复用方法可相互对应参照。
请参考图5,图5为本申请实施例提供的一种电子设备的结构示意图。其中电子设备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 (10)

1.一种内存隔离复用方法,其特征在于,包括:
在启动过程中,获取内存隔离标识数据;
解析所述内存隔离标识数据,得到目标内存对应的隔离地址;
对所述目标内存中所述隔离地址对应的内存空间进行读写隔离处理。
2.根据权利要求1所述的内存隔离复用方法,其特征在于,所述内存隔离标识数据包括内存唯一标识数据、与内存中各个内存地址分别对应的各个隔离状态标识;
所述解析所述内存隔离标识数据,得到目标内存对应的隔离地址,包括:
若目标内存地址的隔离状态标识为使能状态,则将所述目标内存地址确定为所述隔离地址。
3.根据权利要求1所述的内存隔离复用方法,其特征在于,所述内存隔离标识数据包括与内存中各个内存地址分别对应的各个隔离方式数据;
所述对所述目标内存中所述隔离地址对应的内存空间进行读写隔离处理,包括:
根据所述隔离方式数据确定各个隔离地址对应的读写隔离处理方式;
基于所述读写隔离处理方式,分别对各个所述隔离地址进行读写隔离处理。
4.根据权利要求1所述的内存隔离复用方法,其特征在于,所述内存隔离标识数据包括内存唯一标识数据,所述方法还包括:
获取各个当前内存分别对应的当前内存唯一标识数据;
判断所述内存唯一标识数据与所述当前内存唯一标识数据是否匹配;
若匹配,则确定执行解析所述内存隔离标识数据,得到目标内存对应的隔离地址的步骤。
5.根据权利要求4所述的内存隔离复用方法,其特征在于,还包括:
若所述内存唯一标识数据与所述当前内存唯一标识数据不匹配,则确定第一唯一标识数据、第二唯一标识数据和第三目标唯一标识数据;
利用所述第一唯一标识数据,替换所述内存隔离标识数据中的所述第二唯一标识数据,并对所述内存隔离标识数据中与所述第二唯一标识数据对应的内容进行初始化处理;
利用所述内存隔离标识数据中所述第三唯一标识数据对应的内容得到目标内存对应的隔离地址,并对所述目标内存中所述隔离地址对应的内存空间进行读写隔离处理;
其中,所述第一唯一标识数据为不属于内存唯一标识数据的当前内存唯一标识数据,所述第二唯一标识数据为不属于当前唯一标识数据的内存唯一标识数据,所述第三唯一标识数据为属于当前唯一标识数据的内存唯一标识数据。
6.根据权利要求1所述的内存隔离复用方法,其特征在于,在获取内存隔离标识数据之前,还包括:
判断是否存在所述内存隔离标识数据;
若存在,则确定执行获取内存隔离标识数据的步骤;
若不存在,则生成初始隔离标识数据。
7.根据权利要求1至6任一项所述的内存隔离复用方法,其特征在于,还包括:
若检测到可纠正错误,则确定可纠正错误对应的目标地址区间;
对所述目标地址区间进行读写隔离处理;
根据所述目标地址区间更新所述内存隔离标识数据。
8.一种内存隔离复用装置,其特征在于,包括:
获取模块,用于在启动过程中,获取内存隔离标识数据;
解析模块,用于解析所述内存隔离标识数据,得到目标内存对应的隔离地址;
隔离模块,用于对所述目标内存中所述隔离地址对应的内存空间进行读写隔离处理。
9.一种电子设备,其特征在于,包括存储器和处理器,其中:
所述存储器,用于保存计算机程序;
所述处理器,用于执行所述计算机程序,以实现如权利要求1至7任一项所述的内存隔离复用方法。
10.一种计算机可读存储介质,其特征在于,用于保存计算机程序,其中,所述计算机程序被处理器执行时实现如权利要求1至7任一项所述的内存隔离复用方法。
CN202210421785.4A 2022-04-21 2022-04-21 内存隔离复用方法、装置、设备及存储介质 Pending CN114780275A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210421785.4A CN114780275A (zh) 2022-04-21 2022-04-21 内存隔离复用方法、装置、设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210421785.4A CN114780275A (zh) 2022-04-21 2022-04-21 内存隔离复用方法、装置、设备及存储介质

Publications (1)

Publication Number Publication Date
CN114780275A true CN114780275A (zh) 2022-07-22

Family

ID=82432113

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210421785.4A Pending CN114780275A (zh) 2022-04-21 2022-04-21 内存隔离复用方法、装置、设备及存储介质

Country Status (1)

Country Link
CN (1) CN114780275A (zh)

Similar Documents

Publication Publication Date Title
US9372750B2 (en) Method and apparatus for non-volatile RAM error re-mapping
CN111124517B (zh) 嵌入式芯片引导启动方法、装置、计算机设备和存储介质
CN111596863A (zh) 一种数据读取方法、装置、设备及可读存储介质
CN109086078B (zh) 安卓系统升级方法、装置、服务器及移动终端
CN110442473B (zh) 一种非易失性数据存储方法、装置、电子设备及介质
CN110727597B (zh) 一种基于日志排查无效代码补全用例的方法
US9710340B2 (en) Replacement of a corrupt driver variable record
CN103268201A (zh) 一种数据存储方法、存储装置及读取方法
CN115495025B (zh) 一种管理异常存储块的方法和装置
CN112256492A (zh) 块设备备份方法、装置、设备及存储介质
JPH09198884A (ja) フラッシュメモリ管理方法
JP2009064238A (ja) メモリシステム
US11366596B2 (en) Data storage device and data access method for quickly loading boot data
JP5057887B2 (ja) データ更新装置及びデータ更新方法及びデータ更新プログラム
CN113342276A (zh) 一种日志保存方法、系统、设备以及介质
CN110928890B (zh) 数据存储方法、装置、电子设备及计算机可读存储介质
WO2019062147A1 (zh) 一种计数器的读写方法及装置、设备、存储介质
CN114780275A (zh) 内存隔离复用方法、装置、设备及存储介质
CN112700814A (zh) Eeprom数据的读取方法、装置、电控设备及介质
CN114168073B (zh) 固态硬盘调试空间的访问方法及装置
CN113505026B (zh) 验证备份数据的方法、装置、设备及存储介质
CN113434086B (zh) 数据存储方法、装置、非易失性存储器件和存储器
US20130124925A1 (en) Method and apparatus for checking a main memory of a processor
CN112486723A (zh) 数据校验方法、装置、处理器及电子设备
CN111708487A (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