本发明属于数据存储的,尤其涉及一种存储区域的擦除方法、存储区域的擦除装置及终端设备。
背景技术:
1、目前,多数嵌入式软件往往通过flash存储器进行存储,并通过上电时加载flash存储器实现嵌入式软件的载入。其中,为了实现嵌入式软件的升级功能,多数嵌入式软件中集成有升级功能模块(升级功能模块中包括擦除操作代码段和写入代码段等),无需连接外部设备即可实现自升级。
2、然而,较难察觉的是,由于升级功能模块集成于嵌入式软件中,而在flash存储器上电和断电过程时处于非稳态的状态,因此擦除操作代码段在小概率情况下会执行擦除操作(嵌入式软件处于非稳态时,可能会随机执行任意代码段),导致嵌入式软件损坏,进而导致系统完全崩溃。
3、虽然对于大部分应用场景下,上述小概率事件无关紧要。但对于某些场景中,上述小概率事件也易导致重大事故,尤其在一些对可靠性要求较高的场景下(例如:航天航空领域)。故如何防止擦除操作代码段在小概率情况执行擦除操作,成为了一个亟需解决的技术问题。
技术实现思路
1、有鉴于此,本申请实施例提供了一种存储区域的擦除方法、擦除装置及终端设备,以解决擦除操作代码段在小概率情况执行擦除操作的技术问题。
2、本申请实施例的第一方面提供了一种存储区域的擦除方法,所述存储区域的擦除方法包括:
3、获取上级设备发送的擦除指令;
4、提取所述擦除指令中的目标参数,并将所述目标参数存储至动态存储区;
5、基于所述擦除指令,调用初始程序段,并提取所述动态存储区中的所述目标参数;
6、将所述初始程序段与所述目标参数组合,得到目标程序段,并通过所述目标程序段擦除所述擦除指令指定的存储区域。
7、进一步地,所述动态存储区在未写入所述目标参数时存储随机参数。
8、进一步地,在所述获取上级设备发送的擦除指令的步骤之前,还包括:
9、基于非擦除指令,调用初始程序段,并提取所述动态存储区中的所述随机参数;
10、将所述初始程序段与所述随机参数组合,得到非目标程序段;其中,所述非目标程序段无法擦除所述存储区域。
11、进一步地,所述目标参数包括第一参数、第二参数、第三参数、第四参数、第五参数和第六参数。
12、进一步地,所述将所述初始程序段与所述目标参数组合,得到目标程序段,并通过所述目标程序段擦除所述擦除指令指定的存储区域的步骤,包括:
13、获取初始程序地址与存储区域地址;
14、将所述第一参数写入所述初始程序段中的第一初始程序地址;
15、将所述第二参数写入所述初始程序段中的第二初始程序地址;
16、将所述第三参数写入所述初始程序段中的第三初始程序地址;
17、将所述第四参数写入所述初始程序段中的第四初始程序地址;
18、将所述第五参数写入所述初始程序段中的第五初始程序地址,得到所述目标程序段;
19、将所述第六参数写入所述存储区域中的所述存储区域地址,并通过所述目标程序段擦除所述擦除指令指定的存储区域。
20、进一步地,在所述将所述初始程序段与所述目标参数组合,得到目标程序段,并通过所述目标程序段擦除所述擦除指令指定的存储区域的步骤之后,还包括:
21、删除所述动态存储区中的所述目标参数。
22、进一步地,在所述将所述初始程序段与所述目标参数组合,得到目标程序段,并通过所述目标程序段擦除所述擦除指令指定的存储区域的步骤之后,还包括:
23、向所述上级设备发送成功删除消息。
24、本申请实施例的第二方面提供了一种存储区域的擦除装置,包括:
25、获取单元,用于获取上级设备发送的擦除指令;
26、存储单元,用于提取所述擦除指令中的目标参数,并将所述目标参数存储至动态存储区;
27、提取单元,用于基于所述擦除指令,调用初始程序段,并提取所述动态存储区中的所述目标参数;
28、擦除单元,用于将所述初始程序段与所述目标参数组合,得到目标程序段,并通过所述目标程序段擦除所述擦除指令指定的存储区域。
29、本申请实施例的第三方面提供了一种终端设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述第一方面所述方法的步骤。
30、本申请实施例的第四方面提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述第一方面所述方法的步骤。
31、本申请实施例与现有技术相比存在的有益效果是:本申请通过获取上级设备发送的擦除指令;提取所述擦除指令中的目标参数,并将所述目标参数存储至动态存储区;基于所述擦除指令,调用初始程序段,并提取所述动态存储区中的所述目标参数;将所述初始程序段与所述目标参数组合,得到目标程序段,并通过所述目标程序段擦除所述擦除指令指定的存储区域。上述方案,通过将执行擦除操作的目标程序段划分为两部分,一部分由本地存储(即初始程序段),一部分以参数的方式由上级设备传入(即目标参数)。并在每次执行擦除操作前,在动态存储区中获取相应参数,进而实现擦除操作。当接收到擦除指令后,需将擦除指令中的目标参数存储至动态存储区,故可基于动态存储区中的目标参数与初始程序段执行擦除操作。然而,当擦除操作代码段在小概率情况执行擦除操作时(即flash存储器上电和断电过程时处于非稳态的状态),由于在动态存储区中无法获取正确的目标参数,故无法执行擦除操作,进而避免了擦除操作代码段在小概率情况下执行擦除操作。
1.一种存储区域的擦除方法,其特征在于,所述存储区域的擦除方法包括:
2.如权利要求1所述的存储区域的擦除方法,其特征在于,所述动态存储区在未写入所述目标参数时存储随机参数。
3.如权利要求2所述的存储区域的擦除方法,其特征在于,在所述获取上级设备发送的擦除指令的步骤之前,还包括:
4.如权利要求1所述的存储区域的擦除方法,其特征在于,所述目标参数包括第一参数、第二参数、第三参数、第四参数、第五参数和第六参数。
5.如权利要求4所述的存储区域的擦除方法,其特征在于,所述将所述初始程序段与所述目标参数组合,得到目标程序段,并通过所述目标程序段擦除所述擦除指令指定的存储区域的步骤,包括:
6.如权利要求1所述的存储区域的擦除方法,其特征在于,在所述将所述初始程序段与所述目标参数组合,得到目标程序段,并通过所述目标程序段擦除所述擦除指令指定的存储区域的步骤之后,还包括:
7.如权利要求1所述的存储区域的擦除方法,其特征在于,在所述将所述初始程序段与所述目标参数组合,得到目标程序段,并通过所述目标程序段擦除所述擦除指令指定的存储区域的步骤之后,还包括:
8.一种存储区域的擦除装置,其特征在于,所述存储区域的擦除装置包括:
9.一种终端设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至7任一项所述方法的步骤。
10.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至7任一项所述方法的步骤。