CN117850689A - 存储器的数据管理方法、设备以及可读存储介质 - Google Patents

存储器的数据管理方法、设备以及可读存储介质 Download PDF

Info

Publication number
CN117850689A
CN117850689A CN202311838078.6A CN202311838078A CN117850689A CN 117850689 A CN117850689 A CN 117850689A CN 202311838078 A CN202311838078 A CN 202311838078A CN 117850689 A CN117850689 A CN 117850689A
Authority
CN
China
Prior art keywords
instruction
memory
data
target
target instruction
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
CN202311838078.6A
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.)
Deyi Microelectronics Co ltd
Original Assignee
Deyi Microelectronics 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 Deyi Microelectronics Co ltd filed Critical Deyi Microelectronics Co ltd
Priority to CN202311838078.6A priority Critical patent/CN117850689A/zh
Publication of CN117850689A publication Critical patent/CN117850689A/zh
Pending legal-status Critical Current

Links

Classifications

    • 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

  • Storage Device Security (AREA)

Abstract

本发明涉及数据管理技术领域,尤其涉及一种存储器的数据管理方法、设备以及可读存储介质。所述方法包括,当微处理核心从存储器加载指令时,确定所述微处理核心加载的目标指令对应的目标地址;基于所述目标地址,加载所述目标指令,并对所述目标指令执行校验动作;在所述目标指令校验通过时,将所述目标指令传递至所述微处理核心;在所述目标指令未通过校验时,传递所述目标指令对应的中断信号至所述微处理核心。可以防止微处理器执行被篡改或覆盖的代码,保障程序的执行质量和有效性。并且实现在调试程序时,可以对出错的目标指令所存储的位置进行定位。也即在程序运行出现错误或异常时,可以通过中断信号找到被篡改或覆盖的代码。

Description

存储器的数据管理方法、设备以及可读存储介质
技术领域
本发明涉及数据管理技术领域,尤其涉及一种存储器的数据管理方法、设备以及可读存储介质。
背景技术
嵌入式MCU(Microcontroller Unit,微控制单元)是一种被广泛应用于嵌入式系统中的集成电路芯片。MCU集成了微处理核心和存储器等,适用于各种需要控制和处理的应用场景。
在嵌入式MCU中,由于微处理核心对存储器的写操作和读操作是没有访问限制的,不提供对存储器的访问监控功能,这使得在调试内存覆盖问题的时候,存在较大的困难。例如,当一段不经常被执行的代码被覆盖或者篡改之后,程序在运行很长一段时间之后才执行到这段不经常被执行的代码,在这种情况下,代码在执行时出现了错误或者异常,要找到这段被覆盖或者篡改的代码是非常困难的。
上述内容仅用于辅助理解本发明的技术方案,并不代表承认上述内容是现有技术。
发明内容
本发明的主要目的在于提供一种存储器的数据管理方法,旨在解决代码在执行时出现了错误或者异常,要找到这段被覆盖或者篡改的代码存在困难的问题。
为实现上述目的,本发明提供的一种存储器的数据管理方法,所述存储器的数据管理方法包括以下步骤:
当微处理核心从存储器加载指令时,确定所述微处理核心加载的目标指令对应的目标地址;
基于所述目标地址,加载所述目标指令,并对所述目标指令执行校验动作;
在所述目标指令校验通过时,将所述目标指令传递至所述微处理核心;
在所述目标指令未通过校验时,传递所述目标指令对应的中断信号至所述微处理核心。
可选地,所述在所述目标指令校验通过时,将所述目标指令传递至所述微处理核心的步骤之后,还包括:
当所述微处理核心执行所述目标指令之后,向所述存储器写入数据时,加载所述微处理核心的待写入数据;
对所述待写入数据附加校验码;
将携带校验码的待写入数据写入所述存储器。
可选地,所述基于所述目标地址,加载所述目标指令,并对所述目标指令执行校验动作的步骤之前,还包括:
当所述微处理核心从所述存储器加载指令时,确定加载指令所属的代码段;
读取所述加载指令所属的代码端的读权限标识;
基于所述读权限标识,确定所述加载指令是否具有加载所述目标指令的权限;
若是,执行所述基于所述目标地址,加载所述目标指令,并对所述目标指令执行校验动作的步骤;
若否,发送所述加载指令对应的中断信号至所述微处理核心。
可选地,所述当所述微处理核心执行所述目标指令之后,向所述存储器写入数据时,加载所述微处理核心的待写入数据的步骤包括:
当所述微处理核心向所述存储器写入数据时,确定写入指令对应的目标写入地址,并确定写入指令所属的代码段;
读取所述写入指令所属的代码段的写权限标识;
基于所述写权限标识,确定所述写入指令是否具有向所述目标写入地址写入数据的权限;
若是,加载所述微处理核心的待写入数据;
若否,发送所述写入指令对应的中断信号至所述微处理核心。
可选地,所述当微处理核心从存储器加载指令时,确定所述微处理核心加载的目标指令对应的目标地址的步骤之前,还包括:
在程序启动时,读取所述程序中的权限配置代码;
执行所述权限配置代码,对寄存器进行配置动作,以配置所述程序中各个代码段的读权限和写权限。
可选地,所述对所述待写入数据附加校验码的步骤包括:
基于每管理单元长度的待写入数据,生成循环冗余校验码;
每间隔所述管理单元长度,对所述待写入数据附加所述循环冗余校验码。
可选地,所述基于所述目标地址,加载所述目标指令,并对所述目标指令执行校验动作的步骤包括:
基于所述目标地址,加载所述目标指令所在的管理单元;
读取所述管理单元的校验码;
基于所述校验码执行所述校验动作。
可选地,所述基于所述校验码执行所述校验动作的步骤包括:
调用所述管理单元对应的标准校验码;
当所述管理单元的校验码与所述标准校验码匹配时,判定所述目标指令校验通过;
当所述管理单元的校验码与所述标准校验码不匹配时,判断所述目标指令未通过校验。
此外,为实现上述目的,本发明还提供一种存储器的数据管理设备,所述存储器的数据管理设备包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的存储器的数据管理程序,所述存储器的数据管理程序被所述处理器执行时实现如上所述的存储器的数据管理方法的步骤。
此外,为实现上述目的,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有存储器的数据管理程序,所述存储器的数据管理程序被处理器执行时实现如上所述的存储器的数据管理方法的步骤。
本发明实施例提供存储器的数据管理方法,在微处理器从存储器加载指令的时候,通过基于目标指令对应的目标地址加载目标指令并进行校验。对目标指令进行校验动作,可以检测目标指令是否经过篡改。在校验通过的时候,才将目标指令传递至微处理器执行;若目标指令校验未通过,则传递目标指令对应的中断信号至微处理器,以中断程序的运行,并输出目标指令对应的位置信息。这样做的目的在于防止微处理器继续执行被篡改或覆盖的代码,保障程序的执行质量和有效性。并且实现在调试程序时,可以对出错的目标指令所存储的位置进行定位。也即在程序运行出现错误或异常时,可以通过中断信号找到被篡改或覆盖的代码。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本发明的实施例,并与说明书一起用于解释本发明的原理。为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例涉及的存储器的数据管理设备的硬件运行环境的架构示意图;
图2为本发明存储器的数据管理方法的第一实施例的流程示意图;
图3为本发明存储器的数据管理方法的第二实施例的流程示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图作进一步说明。
具体实施方式
本申请存储器的数据管理方法,通过当微处理核心从存储器加载指令时,确定所述微处理核心加载的目标指令对应的目标地址;基于所述目标地址,加载所述目标指令,并对所述目标指令执行校验动作;在所述目标指令校验通过时,将所述目标指令传递至所述微处理核心;在所述目标指令未通过校验时,传递所述目标指令对应的中断信号至所述微处理核心。可以防止微处理器执行被篡改或覆盖的代码,保障程序的执行质量和有效性。并且实现在调试程序时,可以对出错的目标指令所存储的位置进行定位。也即在程序运行出现错误或异常时,可以通过中断信号找到被篡改或覆盖的代码。
为了更好地理解上述技术方案,下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整地传达给本领域的技术人员。
作为一种实现方案,图1为本发明实施例方案涉及的存储器的数据管理设备的硬件运行环境的架构示意图。
如图1所示,该存储器的数据管理设备可以包括:处理器101,例如中央处理器(Central Processing Unit,CPU),存储器102,通信总线103。其中,存储器102可以是高速的随机存取存储器(Random Access Memory,RAM)存储器,也可以是稳定的非易失性存储器(Non-Volatile Memory,NVM),例如磁盘存储器。存储器102可选的还可以是独立于前述处理器101的存储装置。通信总线103用于实现这些组件之间的连接通信。
本领域技术人员可以理解,图1中示出的结构并不构成对存储器的数据管理设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
如图1所示,作为一种计算机可读存储介质的存储器102中可以包括操作系统、数据存储模块、网络通信模块、用户接口模块以及存储器的数据管理程序。
在图1所示的存储器的数据管理设备中,处理器101、存储器102可以设置在存储器的数据管理设备中,所述存储器的数据管理设备通过处理器101调用存储器102中存储的存储器的数据管理程序,并执行以下操作:
当微处理核心从存储器加载指令时,确定所述微处理核心加载的目标指令对应的目标地址;
基于所述目标地址,加载所述目标指令,并对所述目标指令执行校验动作;
在所述目标指令校验通过时,将所述目标指令传递至所述微处理核心;
在所述目标指令未通过校验时,传递所述目标指令对应的中断信号至所述微处理核心。
在一实施例中,处理器101可以用于调用存储器102中存储的存储器的数据管理程序,并执行以下操作:
当所述微处理核心执行所述目标指令之后,向所述存储器写入数据时,加载所述微处理核心的待写入数据;
对所述待写入数据附加校验码;
将携带校验码的待写入数据写入所述存储器。
在一实施例中,处理器101可以用于调用存储器102中存储的存储器的数据管理程序,并执行以下操作:
当所述微处理核心从所述存储器加载指令时,确定加载指令所属的代码段;
读取所述加载指令所属的代码端的读权限标识;
基于所述读权限标识,确定所述加载指令是否具有加载所述目标指令的权限;
若是,执行所述基于所述目标地址,加载所述目标指令,并对所述目标指令执行校验动作的步骤;
若否,发送所述加载指令对应的中断信号至所述微处理核心。
在一实施例中,处理器101可以用于调用存储器102中存储的存储器的数据管理程序,并执行以下操作:
当所述微处理核心向所述存储器写入数据时,确定写入指令对应的目标写入地址,并确定写入指令所属的代码段;
读取所述写入指令所属的代码段的写权限标识;
基于所述写权限标识,确定所述写入指令是否具有向所述目标写入地址写入数据的权限;
若是,加载所述微处理核心的待写入数据;
若否,发送所述写入指令对应的中断信号至所述微处理核心。
在一实施例中,处理器101可以用于调用存储器102中存储的存储器的数据管理程序,并执行以下操作:
在程序启动时,读取所述程序中的权限配置代码;
执行所述权限配置代码,对寄存器进行配置动作,以配置所述程序中各个代码段的读权限和写权限。
在一实施例中,处理器101可以用于调用存储器102中存储的存储器的数据管理程序,并执行以下操作:
基于每管理单元长度的待写入数据,生成循环冗余校验码;
每间隔所述管理单元长度,对所述待写入数据附加所述循环冗余校验码。
在一实施例中,处理器101可以用于调用存储器102中存储的存储器的数据管理程序,并执行以下操作:
基于所述目标地址,加载所述目标指令所在的管理单元;
读取所述管理单元的校验码;
基于所述校验码执行所述校验动作。
在一实施例中,处理器101可以用于调用存储器102中存储的存储器的数据管理程序,并执行以下操作:
调用所述管理单元对应的标准校验码;
当所述管理单元的校验码与所述标准校验码匹配时,判定所述目标指令校验通过;
当所述管理单元的校验码与所述标准校验码不匹配时,判断所述目标指令未通过校验。
基于上述存储器的数据管理设备的硬件架构,提出本发明存储器的数据管理方法的实施例。
参照图2,在第一实施例中,所述存储器的数据管理方法包括以下步骤:
步骤S100:当微处理核心从存储器加载指令时,确定所述微处理核心加载的目标指令对应的目标地址。
在本实施例中,在嵌入式MCU中,当微处理核心从存储器中加载指令的时候,根据微处理核心发送的指令加载指令,指向的存储器中地址,确定微处理核心加载的目标指令对应的目标地址。需要说明的是,指令加载指令相当于一个指令调用请求,即向存储器请求调用目标指令。可以理解的,指令加载指令是程序运行过程中,一个函数模块调用另一个函数模块的时候,或者一个代码段调用另一个代码段的时候对应的指令。在程序运行的过程中,只有成功调用指令,程序才能继续运行下去,若调用失败,程序则会出现运行错误的情况。
步骤S200:基于所述目标地址,加载所述目标指令,并对所述目标指令执行校验动作。
在本实施例中,在确定目标指令对应的目标地址之后,基于目标地址,到存储器中加载目标指令,然后对目标指令执行校验动作,确定目标指令是否被篡改,或者确定调用该目标指令的代码段是否有权限调用该目标指令。可选地,确定目标指令是否被篡改,可以通过校验值进行确定;确定调用目标指令的代码段是否有权调用目标指令,可以通过权限标识进行确定。
进一步地,确定要加载的目标指令是否被篡改。可以先基于所述目标地址,加载所述目标指令所在的管理单元,并读取所述管理单元的校验码;然后,基于所述校验码执行所述校验动作。需要说明的是,这里管理单元指的是将保存在存储器中的数据,每间隔一定长度进行划分的管理单元。例如,每128byet的数据作为一个数据管理单元。
每个管理单元附加有与其相关联的校验码,可以通过读取校验码,确定该管理单元的数据是否被篡改或者被覆盖,确保所微处理器调用的目标指令的完整性,进而可以避免因为数据异常的错误执行或者程序崩溃。
可选地,通过调用所述管理单元对应的标准校验码;当所述管理单元的校验码与所述标准校验码匹配时,判定所述目标指令校验通过;当所述管理单元的校验码与所述标准校验码不匹配时,判断所述目标指令未通过校验。实现基于所述校验码执行所述校验动作。
作为一种可选的实施方式,使用CRC(Cyclic Redundancy Check,循环冗余校验码)校验的方式确定目标指令对应的管理单元是否被篡改或者被覆盖。具体地,通过调用管理单元对应的CRC标准校验码,然后对CRC标准校验和加载的管理单元的CRC校验码进行异或计算,实现对管理单元的校验,也即对目标指令的校验。可以理解的,根据异或计算的结果,可以确定加载的管理单元的CRC校验码与CRC标准校验码是否匹配,进而确定加载的管理单元的数据是否被篡改或者被覆盖。需要说明的是,每个管理单元的数据在写入存储器的时候,计算一个CRC校验码附加在管理单元之后,再写入存储器,并将CRC校验码作为CRC标准校验码与该管理单元的标识关联存储,用于校验管理单元的数据是否被篡改或者被覆盖。
通过调用管理单元对应的标准校验码,可以确保使用正确的校验码进行校验。如果管理单元携带的校验码与标准校验码一致,即匹配时,可以确定目标指令没有发生数据篡改或损坏。校验通过意味着目标指令的完整性和正确性得到验证,可以正确地执行。如果管理单元中存储的校验码与标准校验码不一致,即不匹配时,判定目标指令发生了数据篡改或损坏。校验未通过意味着目标指令的完整性和正确性受到了破坏,无法正确地执行。
通过根据校验码的匹配与否来确定目标指令的状态,这样做的目的在于,进一步保证加载的目标指令的可靠性和正确性,避免程序的错误执行,可以阻止未经授权的操作。
步骤S300:在所述目标指令校验通过时,将所述目标指令传递至所述微处理核心。
在本实施例中,在对目标指令执行校验动作,并且目标指令通过校验之后,将目标指令传递至微处理核心,供微处理核心执行。
进一步地,当所述微处理核心执行所述目标指令之后,向所述存储器写入数据时,加载所述微处理核心的待写入数据;然后先对所述待写入数据附加校验码;再将携带校验码的待写入数据写入所述存储器。
在微处理器执行目标指令后,微处理核心可能会生成一些需要写入存储器的数据。这里的待写入数据包括但不限于执行结果、中间计算结果或者其他需要持久化的数据。在向存储器写入数据时,将待写入数据附加上校验码,以确保在读取数据的时候,可以验证读取的数据的完整性。可以理解的,校验码是基于待写入数据计算得到的一种校验值。通过附加校验码,可以在数据写入存储器后进行校验,确保数据在写入过程中没有出现错误或者发生篡改。
这样做的目的在于,通过在数据中增加校验码,实现在从存储器读取该数据时可以进行校验,可以防止数据的篡改、损坏或错误。确保系统运行的稳定性和可靠性,并且实现了在程序出现错误时,可以定位到出错的数据。同时,也提供了一种机制来检测和纠正可能发生的数据相关问题,从而增强程序的可靠性。
可选地,基于每管理单元长度的待写入数据,生成循环冗余校验码;然后,每间隔所述管理单元长度,对所述待写入数据附加所述循环冗余校验码。需要说明的是,CRC是一种根据待写入数据生成的校验码,用于检测数据传输过程中的错误或损坏。通过CRC算法对待写入数据进行计算,可以获得固定长度CRC校验码。根据管理单元长度,将待写入数据划分为多个长度固定的管理单元,并在每个管理单元之间,将生成的CRC校验码附加到相应的待写入数据。
由于CRC校验码具有较低的计算复杂度和较强的错误检测能力。通过将循环冗余校验码附加到待写入数据中,可以检测出待写入数据在传输或存储过程中出现的错误或损坏,并且可以用于检测和纠正数据发生的错误。这样做的目的是为了增强对数据的完整性和准确性的校验,以及实现了错误数据的定位。
步骤S400:在所述目标指令未通过校验时,传递所述目标指令对应的中断信号至所述微处理核心。
在本实施例中,当微处理器要加载的目标指令未通过校验时,不向微处理器传递该目标指令,而是传递目标指令对应的中断信号至微处理器。这样可以避免微处理器执行了被篡改或者被覆盖或者出错的目标指令,以避免程序崩溃。这里的目标指令对应的中断信号,该信号包括了目标指令的地址信息,和/或目标指令所在代码段的信息。这样做的目的是为了提高定位错误指令的效率。
示例性地,假设嵌入式MCU为SM32单片机。SM32单片机在执行程序的过程中,假设微处理器要调用计时指令。此时,微处理核心将调用计时指令对应的加载指令发送至DMA(Direct Memory Access,直接存储器访问)。DMA根据加载指令确定计时指令在存储器中对应的目标地址。假设目标地址指向存储器的第一个地址的第一条指令。
假设管理单元的长度为128byte,计时指令的长度为4byte。DMA从存储器的第一个地址中加载计时指令所述的管理单元的数据,也即,将128byte的数据一同加载到DMA。然后,调用该管理单元对应的CRC标准校验码,并从加载的128byet数据中获取CRC校验码。然后基于CRC标准校验码和获取的CRC校验码进行异或运算。假设异或运算的结果是1,则判定计时指令出错。然后,传递计时指令对应的中断信号至微处理器。微处理器接收到计时指令对应的中断信号之后,停止程序的运行,并输出计时指令调用出错信息。
在本实施例提供的技术方案中,在微处理器从存储器加载指令的时候,通过基于目标指令对应的目标地址加载目标指令并进行校验。对目标指令进行校验动作,可以检测目标指令是否经过篡改。在校验通过的时候,才将目标指令传递至微处理器执行;若目标指令校验未通过,则传递目标指令对应的中断信号至微处理器,以中断程序的运行,并输出目标指令对应的位置信息。这样做的目的在于防止微处理器继续执行被篡改或覆盖的代码,保障程序的执行质量和有效性。并且实现在调试程序时,可以对出错的目标指令所存储的位置进行定位。也即在程序运行出现错误或异常时,可以通过中断信号找到被篡改或覆盖的代码。
参照图3,基于上述实施例,在第二实施例中,所述基于所述目标地址,加载所述目标指令,并对所述目标指令执行校验动作的步骤之前,还包括:
步骤S500:当所述微处理核心从所述存储器加载指令时,确定加载指令所属的代码段;
步骤S600:读取所述加载指令所属的代码端的读权限标识;
步骤S700:基于所述读权限标识,确定所述加载指令是否具有加载所述目标指令的权限;
步骤S710:若是,执行所述基于所述目标地址,加载所述目标指令,并对所述目标指令执行校验动作的步骤;
步骤S720:若否,发送所述加载指令对应的中断信号至所述微处理核心。
在本实施例中,在对目标指令执行校验动作之前,先确定要加载目标指令的加载指令,是否具有调用目标指令的权限。具体地,先确定加载指令所属的代码段,然后读取该代码段的权限标识。然后基于代码段的权限标识确定加载指令是否具有加载目标指令的权限。可以理解的,程序的每个代码段都附有用于进行权限验证的权限标识,该权限标识既包括读权限标识,也包括写权限标识。当加载指令具有加载目标指令的权限时,便执行所述基于所述目标地址,加载所述目标指令,并对所述目标指令执行校验动作的步骤;当加载指令无权限加载目标指令时,便发送所述加载指令对应的中断信号至所述微处理核心,以使处理器中断程序的运行,并输出无权限调用目标指令的代码段的位置信息。
进一步地,微处理器在向存储器写入执行目标指令后产生的数据时,确定写入指令对应的目标写入地址,并确定写入指令所属的代码段;然后,读取所述写入指令所属的代码段的写权限标识,并基于所述写权限标识,确定所述写入指令是否具有向所述目标写入地址写入数据的权限;若是,加载所述微处理核心的待写入数据;若否,发送所述写入指令对应的中断信号至所述微处理核心。
在本实施例中,每个代码段对存储器的写入操作,都有权限限制。对于同一个代码段,可以具有存储器的不同写入地址的写权限,也即,该代码段的指令,可以对存储器的多个目标写入地址执行数据写入操作。对于同一个写入地址,可以有多个代码段都具有向该写入地址执行数据写入操作的写权限。
通过确定目标写入地址和写入指令对应的代码段,以获取写入指令对应的写权限,并确定写入数据的目标位置。这里写权限标识是代码段写权限的标志。根据写权限标识判断写入指令是否被允许执行,在写入指令具有目标写入地址的写权限时,加载待写入数据进入DMA。如果写入指令不具有目标写入地址的写权限,则发送写入指令对应的中断信号给微处理核心,中断程序的执行,确保程序执行的稳定性。需要说明的是,写入指令对应的中断信号包括了写入指令的标识,以及目标写入地址,因此在程序中断之后,在进行程序调试的过程中,可以基于中断信号,定位到出错的写入指令以及目标写入地址。
此外,通过权限验证和访问控制,只有具有写权限的写入指令才能向指定的目标地址写入数据,从而减少非法的访问和潜在的安全威胁。对于未经授权的写入操作,通过中断信号中止执行,提高了程序运行的稳定性。
进一步地,在微处理器从存储器加载指令之前,还需要进行权限配置的步骤。具体地,在程序启动时,读取所述程序中的权限配置代码;执行所述权限配置代码,对寄存器进行配置动作,以配置所述程序中各个代码段的读权限和写权限。需要说明的是,这里的权限配置代码是指用来配置程序中各个代码段的读权限和写权限的指令或配置信息。
通过权限配置代码对寄存器进行配置,以配置程序中各个代码段的读权限和写权限。实现对程序各个代码段的读权限和写权限的限制。
通过对代码段进行权限配置,可以确保程序的代码段只能在具有合法权限的情况下对存储器进行读取操作和写入操作。如果程序中的某个代码段没有读权限或写权限,执行相应的指令时会触发中断或异常,从而防止非法访问。这样做的目的在于提高程序运行的稳定性,防止恶意代码或错误操作对系统造成损害。此外,权限配置还限制了不同代码段之间的访问,增强程序的隔离性和安全性。
在本实施例提供的技术方案中,通过确定加载指令或者写入指令所属的代码段的访问权限,进而确定加载指令或者写入指令,是否具有目标指令的读权限或者目标地址的写权限。在加载指令或者写入指令不具备相应访问权限的时候,发送加载指令对应的中断信号或者写入指令对应的中断信号至微处理核心,中断程序的运行,以保障程序运行的稳定性。通过权限验证和访问控制,可以减少非法的访问和潜在的安全威胁。对于不具备相应权限的指令,通过中断信号中止程序运行,保护了系统的稳定性。此外,由于中断信号包括了导致程序中断的指令信息和位置信息,因此,还提高了程序调试过程中,定位导致程序中断的指令或者数据的效率。
此外,本领域普通技术人员可以理解的是实现上述实施例的方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成。该计算机程序包括程序指令,计算机程序可以存储于一存储介质中,该存储介质为计算机可读存储介质。该程序指令被存储器的数据管理设备中的至少一个处理器执行,以实现上述方法的实施例的流程步骤。
因此,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质存储有存储器的数据管理程序,所述存储器的数据管理程序被处理器执行时实现如上实施例所述的存储器的数据管理方法的各个步骤。
其中,所述计算机可读存储介质可以是U盘、移动硬盘、只读存储器(Read-OnlyMemory,ROM)、磁碟或者光盘等各种可以存储程序代码的计算机可读存储介质。
需要说明的是,由于本申请实施例提供的存储介质,为实施本申请实施例的方法所采用的存储介质,故而基于本申请实施例所介绍的方法,本领域所属人员能够了解该存储介质的具体结构及变形,故而在此不再赘述。凡是本申请实施例的方法所采用的存储介质都属于本申请所欲保护的范围。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
应当注意的是,在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的部件或步骤。位于部件之前的单词“一”或“一个”不排除存在多个这样的部件。本发明可以借助于包括有若干不同部件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二以及第三等的使用不表示任何顺序。可将这些单词解释为名称。
尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。

Claims (10)

1.一种存储器的数据管理方法,其特征在于,所述存储器的数据管理方法包括以下步骤:
当微处理核心从存储器加载指令时,确定所述微处理核心加载的目标指令对应的目标地址;
基于所述目标地址,加载所述目标指令,并对所述目标指令执行校验动作;
在所述目标指令校验通过时,将所述目标指令传递至所述微处理核心;
在所述目标指令未通过校验时,传递所述目标指令对应的中断信号至所述微处理核心。
2.如权利要求1所述的存储器的数据管理方法,其特征在于,所述在所述目标指令校验通过时,将所述目标指令传递至所述微处理核心的步骤之后,还包括:
当所述微处理核心执行所述目标指令之后,向所述存储器写入数据时,加载所述微处理核心的待写入数据;
对所述待写入数据附加校验码;
将携带校验码的待写入数据写入所述存储器。
3.如权利要求1所述的存储器的数据管理方法,其特征在于,所述基于所述目标地址,加载所述目标指令,并对所述目标指令执行校验动作的步骤之前,还包括:
当所述微处理核心从所述存储器加载指令时,确定加载指令所属的代码段;
读取所述加载指令所属的代码端的读权限标识;
基于所述读权限标识,确定所述加载指令是否具有加载所述目标指令的权限;
若是,执行所述基于所述目标地址,加载所述目标指令,并对所述目标指令执行校验动作的步骤;
若否,发送所述加载指令对应的中断信号至所述微处理核心。
4.如权利要求2所述的存储器的数据管理方法,其特征在于,所述当所述微处理核心执行所述目标指令之后,向所述存储器写入数据时,加载所述微处理核心的待写入数据的步骤包括:
当所述微处理核心向所述存储器写入数据时,确定写入指令对应的目标写入地址,并确定写入指令所属的代码段;
读取所述写入指令所属的代码段的写权限标识;
基于所述写权限标识,确定所述写入指令是否具有向所述目标写入地址写入数据的权限;
若是,加载所述微处理核心的待写入数据;
若否,发送所述写入指令对应的中断信号至所述微处理核心。
5.如权利要求3至4中任一项所述的存储器的数据管理方法,其特征在于,所述当微处理核心从存储器加载指令时,确定所述微处理核心加载的目标指令对应的目标地址的步骤之前,还包括:
在程序启动时,读取所述程序中的权限配置代码;
执行所述权限配置代码,对寄存器进行配置动作,以配置所述程序中各个代码段的读权限和写权限。
6.如权利要求2所述的存储器的数据管理方法,其特征在于,所述对所述待写入数据附加校验码的步骤包括:
基于每管理单元长度的待写入数据,生成循环冗余校验码;
每间隔所述管理单元长度,对所述待写入数据附加所述循环冗余校验码。
7.如权利要求1所述的存储器的数据管理方法,其特征在于,所述基于所述目标地址,加载所述目标指令,并对所述目标指令执行校验动作的步骤包括:
基于所述目标地址,加载所述目标指令所在的管理单元;
读取所述管理单元的校验码;
基于所述校验码执行所述校验动作。
8.如权利要求7所述的存储器的数据管理方法,其特征在于,所述基于所述校验码执行所述校验动作的步骤包括:
调用所述管理单元对应的标准校验码;
当所述管理单元的校验码与所述标准校验码匹配时,判定所述目标指令校验通过;
当所述管理单元的校验码与所述标准校验码不匹配时,判断所述目标指令未通过校验。
9.一种存储器的数据管理设备,其特征在于,所述存储器的数据管理设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的存储器的数据管理程序,所述存储器的数据管理程序配置为实现如权利要求1至8中任一项所述的存储器的数据管理方法的步骤。
10.一种可读存储介质,其特征在于,所述可读存储介质上存储有存储器的数据管理程序,所述存储器的数据管理程序被处理器执行时实现如权利要求1至8任一项所述的存储器的数据管理方法的步骤。
CN202311838078.6A 2023-12-28 2023-12-28 存储器的数据管理方法、设备以及可读存储介质 Pending CN117850689A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202311838078.6A CN117850689A (zh) 2023-12-28 2023-12-28 存储器的数据管理方法、设备以及可读存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202311838078.6A CN117850689A (zh) 2023-12-28 2023-12-28 存储器的数据管理方法、设备以及可读存储介质

Publications (1)

Publication Number Publication Date
CN117850689A true CN117850689A (zh) 2024-04-09

Family

ID=90537382

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202311838078.6A Pending CN117850689A (zh) 2023-12-28 2023-12-28 存储器的数据管理方法、设备以及可读存储介质

Country Status (1)

Country Link
CN (1) CN117850689A (zh)

Similar Documents

Publication Publication Date Title
US8364973B2 (en) Dynamic generation of integrity manifest for run-time verification of software program
US8601273B2 (en) Signed manifest for run-time verification of software program identity and integrity
JP5973196B2 (ja) 1553バス動作の自己検査のためのシステムおよび方法
US20080034350A1 (en) System and Method for Checking the Integrity of Computer Program Code
US8225189B2 (en) Data error detection
EP4116851A1 (en) Trusted measurement method and related apparatus
CN114329653A (zh) 用于安全防护的方法、装置、电子设备及存储介质
US11531769B2 (en) Information processing apparatus, information processing method, and computer program product
CN110334515B (zh) 一种基于可信计算平台生成度量报告的方法及装置
CN112558884B (zh) 数据保护方法以及基于NVMe的存储设备
EP1843250A1 (en) System and method for checking the integrity of computer program code
CN108959915B (zh) 一种rootkit检测方法、装置及服务器
CN117850689A (zh) 存储器的数据管理方法、设备以及可读存储介质
US10691586B2 (en) Apparatus and method for software self-test
CN112086119B (zh) 存储器设备
US10565076B2 (en) Device for supervising and initializing ports
US20150032992A1 (en) Data processing arrangement and method for data processing
CN112133356B (zh) eMMC中RPMB的功能测试方法、装置和计算机设备
CN111625784B (zh) 一种应用的反调试方法、相关装置及存储介质
CN117687833A (zh) 测试数据安全的方法、装置及存储介质
CN118051919A (zh) 数据处理方法、芯片、电子设备以及存储介质
CN113791936A (zh) 数据备份方法、装置及存储介质
CN117234967A (zh) 数据处理方法、装置、存储节点及存储介质
CN117744160A (zh) 用于嵌入式系统的数据写入的方法、装置和嵌入式系统
CN116341011A (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