一种信息处理方法、装置及计算机可读存储介质与流程

文档序号:17287752发布日期:2019-04-03 03:42阅读:128来源:国知局
一种信息处理方法、装置及计算机可读存储介质与流程

本发明实施例涉及计算机技术领域,尤其涉及一种信息处理方法、装置及计算机可读存储介质。



背景技术:

原子写入操作是指满足原子性的写入操作,这种类型的写入操作需要保证在发生掉电异常情况下操作对象中数据的稳定性。因此在带电可擦可编程只读存储器(electricallyerasableprogrammablereadonlymemory,eeprom)中进行原子写入操作,当发生掉电并重新上电后,要保证eeprom中数据的稳定性,即从eeprom中首次读取到的数据和后续读取到的数据是一致的,且所读取到的数据要么是新写入的数据,要么是写入之前的原始数据,而不能是不可预期的随机数据。

相关技术中,eeprom中设置有原子写标识,原子写标识的信息表示eeprom中数据的原子写操作状态,因此当发生掉电并重新上电后,用于控制原子写的控制模块根据原子写标识的信息确定eeprom的原子写操作已开启,对eeprom中的数据作备份恢复处理并设置原子写标识的信息为用于表示eeprom的原子写操作已结束的信息,以使得后续读取eeprom时所读取到的数据都是eeprom的原始数据,而当根据原子写标识的信息确定eeprom的原子写操作已结束时,不作任何操作,以使得后续读取eeprom时所读取到的数据都是新数据,从而保证eeprom中数据的稳定性。

然而,这种方法默认了原子写标识的信息的稳定性,即没有考虑到掉电发生在原子写标识的信息写入阶段的情况,当掉电发生在原子写标识的信息的写入阶段,原子写标识的信息处于不稳定状态,因此原子写标识的信息读取相应的也处于不稳定状态,进而造成基于原子写标识的信息读取的eeprom中的数据也不稳定,从而无法保证eeprom中数据读取的一致性。



技术实现要素:

为了解决上述技术问题,本发明实施例提供一种信息处理方法、装置及计算机可读存储介质,能够避免由于原子写标识的信息读取不稳定而造成eeprom中数据的不稳定,从而保证数据读取的一致性。

为了达到本发明实施例目的,本发明实施例提供了一种信息处理方法,包括:

获取eeprom的原子写标识的信息和保护标识的信息;其中,所述保护标识的信息表示所述原子写标识的信息的原子写操作状态;

根据获得的原子写标识的信息和保护标识的信息确定所述eeprom的掉电发生阶段;

根据确定的掉电发生阶段处理获得的原子写标识的信息和保护标识的信息。

所述获取eeprom的原子写标识的信息和保护标识的信息之前,还包括:

获取携带有目标数据的原子写操作指令;

根据所述原子写操作指令将所述eeprom中的数据保存到预先指定的备份区;

设置所述保护标识的信息为表示原子写操作已启动的信息,并设置所述原子写标识的信息为表示原子写操作已启动的信息;

将所述目标数据写入所述eeprom;

更新所述原子写标识的信息为表示原子写操作已结束的信息,并更新所述保护标识的信息为表示原子写操作已结束的信息。

所述根据获得的原子写标识的信息和保护标识的信息确定eeprom的掉电发生阶段,包括:

如果所述原子写标识的信息是表示原子写操作已结束的信息,且所述保护标识的信息是表示原子写操作已启动的信息,确定所述eeprom的掉电发生在所述原子写标识的信息的写入阶段或者所述保护标识的信息的擦除阶段;

所述根据确定的掉电发生阶段处理获得的原子写标识的信息和保护标识的信息,包括:

设置所述原子写标识的信息为表示原子写操作已结束的信息,且设置所述保护标识的信息为表示原子写操作已结束的信息。

所述根据获得的原子写标识的信息和保护标识的信息确定eeprom的掉电发生阶段,包括:

如果所述原子写标识的信息是表示原子写操作已结束的信息,且所述保护标识的信息不是表示原子写操作已启动的信息和表示原子写操作已结束的信息,确定所述eeprom的掉电发生在所述保护标识的信息的擦除或者写入阶段;

所述根据确定的掉电发生阶段处理获得的原子写标识的信息和保护标识的信息,包括:

设置所述保护标识的信息为表示原子写操作已结束的信息。

所述根据获得的原子写标识的信息和保护标识的信息确定eeprom的掉电发生阶段,包括:

如果所述原子写标识的信息不是表示原子写操作已结束的信息,确定所述eeprom的掉电发生在所述eeprom的原子写操作已启动后的阶段;

所述根据确定的掉电发生阶段处理获得的原子写标识的信息和保护标识的信息,包括:

设置所述原子写标识的信息为表示原子写操作已启动的信息;

恢复保存在所述备份区中的数据;

设置所述原子写标识的信息为表示原子写操作已结束的信息,并设置所述保护的标识为表示原子写操作已结束的信息。

所述表示原子写操作已启动的保护标识的信息、所述表示原子写操作已启动的原子写标识的信息、所述表示原子写标识操作已结束的原子写标识的信息,以及所述表示原子写操作已结束的保护标识的信息均为比特位数超过预设位数的信息。

本发明实施例还提供了一种信息处理装置,包括:处理器和存储器,其中,存储器中存储有以下可被处理器执行的命令:

获取eeprom的原子写标识的信息和保护标识的信息;其中,所述保护标识的信息表示所述原子写标识的信息的原子写操作状态;

根据获得的原子写标识的信息和保护标识的信息确定所述eeprom的掉电发生阶段;

根据确定的掉电发生阶段处理获得的原子写标识的信息和保护标识的信息。

所述存储器中还存储有以下可被处理器执行的命令:

获取携带有目标数据的原子写操作指令;

根据所述原子写操作指令将所述eeprom中的数据保存到预先指定的备份区;

设置所述保护标识的信息为表示原子写操作已启动的信息,并设置所述原子写标识的信息为表示原子写操作已启动的信息;

将所述目标数据写入所述eeprom;

更新所述原子写标识的信息为表示原子写操作已结束的信息,并更新所述保护标识的信息为表示原子写操作已结束的信息。

本发明实施例还提供了一种计算机可读存储介质,所述存储介质上存储有计算机可执行命令,所述计算机可执行命令用于执行以下步骤:

获取eeprom的原子写标识的信息和保护标识的信息;其中,所述保护标识的信息表示所述原子写标识的信息的原子写操作状态;

根据获得的原子写标识的信息和保护标识的信息确定所述eeprom的掉电发生阶段;

根据确定的掉电发生阶段处理获得的原子写标识的信息和保护标识的信息。

所述计算机可执行命令还用于执行以下步骤:

获取携带有目标数据的原子写操作指令;

根据所述原子写操作指令将所述eeprom中的数据保存到预先指定的备份区;

设置所述保护标识的信息为表示原子写操作已启动的信息,并设置所述原子写标识的信息为表示原子写操作已启动的信息;

将所述目标数据写入所述eeprom;

更新所述原子写标识的信息为表示原子写操作已结束的信息,并更新所述保护标识的信息为表示原子写操作已结束的信息。

与现有技术相比,本发明实施例至少包括:获取eeprom的原子写标识的信息和保护标识的信息;其中,保护标识的信息表示原子写标识的信息的原子写操作状态;根据获得的原子写标识的信息和保护标识的信息确定eeprom的掉电发生阶段;根据确定的掉电发生阶段处理获得的原子写标识的信息和保护标识的信息。从本发明实施例提供的技术方案可见,由于根据原子写标识的信息和保护标识的信息确定了eeprom的掉电发生阶段,进而对原子写标识的信息和保护标识的信息进行处理以保证信息的稳定性,从而避免了由于原子写标识的信息读取不稳定而造成eeprom中数据的不稳定,保证了数据读取的一致性。

本发明实施例的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明实施例而了解。本发明实施例的目的和其他优点可通过在说明书、权利要求书以及附图中所特别指出的结构来实现和获得。

附图说明

附图用来提供对本发明实施例技术方案的进一步理解,并且构成说明书的一部分,与本申请的实施例一起用于解释本发明实施例的技术方案,并不构成对本发明实施例技术方案的限制。

图1为本发明实施例提供的一种信息处理方法的流程示意图;

图2为本发明实施例提供的另一种信息处理方法的流程示意图;

图3为本发明实施例提供的又一种信息处理方法的流程示意图。

具体实施方式

为使本发明实施例的目的、技术方案和优点更加清楚明白,下文中将结合附图对本发明实施例的实施例进行详细说明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互任意组合。

相关技术中,主机对eeprom进行原子写操作包括以下步骤:

步骤1、主机获取携带有目标数据的原子写操作指令。

步骤2、主机将eeprom中的原始数据及相关信息(原始数据的位置和长度信息)保存到预先指定的备份区。

步骤3、主机将eeprom中的原子写标识的信息由clear_flag设置为start_flag,以表示原子写操作已启动;clear_flag和start_flag具体可以以十六进制数表示,例如clear_flag表示为0x5a,start_flag表示为0xa5。

步骤4、写入新数据。

需要说明的是,由于eeprom的特性,新数据写入的过程实际是先将原始数据擦除,在eeprom的擦除和写入还没有稳定前,由于硬件的电特性,这时的数据是随机数据,然后再写入新数据。

步骤5、新数据写入完毕后,将原子写的标识由start_flag设置为clear_flag,以表示原子写操作已结束。

需要说明的是,根据eeprom擦写数据的电气特性,数据写入需要经过一定的时间,一般是2~4ms左右。若在这个阶段掉电,上电后读取的数据是不可预期的。经测试分析,eeprom擦写过程存在两种阶段,分别是:

1、擦除阶段,即从原始数据变为随机数据(也可称为中间状态数据)的阶段。在这个阶段掉电,首次读取时可能读取到的是中间状态数据,而由于数据不稳定,经过一些时间后中间状态数据就可能恢复到原始数据,后续再进行读取时读取到的就是原始数据,因此数据的读取结果不稳定。

2、写入阶段,从中间状态数据变为写入数据的阶段。在这个阶段掉电,首次读取时可能读取到的是新写入的数据,而由于数据不稳定,经过一些时间后新写入的数据就可能恢复到中间状态数据,后续再进行读取时读取到的就是中间状态数据,因此数据的读取结果不稳定。

因此,相关技术在进行数据具体写入(即上述过程中的步骤4)时发生掉电、上电后需要检查原子写标识的信息,若不是clear_flag,就将备份数据恢复到eeprom中,同时将原子写标识的信息设置为clear_flag,以保证后续从eeprom中读取的数据都是相同的数据,即原始数据,避免了读取到随机数据的情况发生,实现了数据读取的一致性。然而,相关技术却没有考虑掉电发生在原子写标识的信息写入阶段的情况,当掉电发生在原子写标识的信息的写入阶段,原子写标识的信息处于不稳定状态因此原子写标识的信息读取相应的也处于不稳定状态。举例来说,假设将用户消费的余额从org_cash变为new_cash需要采用原子写操作,如果在原子写标识的信息变为clear_flag前掉电,掉电之后的第1次上电后读取的标识值可能为clear_flag,因此不作恢复数据操作,这时在eeprom中读取到的数据消费金额为new_cash,若正常掉电再上电后,由于原子写标识的信息处于不稳定状态,读取到的原子写标识的信息可能就不是clear_flag,因此做恢复数据操作,这时在eeprom中读取到的数据消费金额为org_cash,数据读取缺乏一致性。

本发明实施例提供一种信息处理方法,如图1所示,该方法包括:

步骤101、获取eeprom的原子写标识的信息和保护标识的信息。

其中,保护标识的信息表示原子写标识的信息的原子写操作状态。

步骤102、根据获得的原子写标识的信息和保护标识的信息确定eeprom的掉电发生阶段。

需要说明的是,只有确定了eeprom的掉电发生阶段才能知晓原子写标识的信息和保护标识的信息是否处于稳定状态,进而对原子写标识的信息和保护标识的信息进行处理。

步骤103、根据确定的掉电发生阶段处理获得的原子写标识的信息和保护标识的信息。

需要说明的是,根据确定的掉电发生阶段处理获得的原子写标识的信息和保护标识的信息能够使得处于非稳定状态的信息处于稳定状态,从而使得eeprom中的数据稳定。

本发明实施例所提供的信息处理方法,获取eeprom的原子写标识的信息和保护标识的信息;其中,保护标识的信息表示原子写标识的信息的原子写操作状态;根据获得的原子写标识的信息和保护标识的信息确定eeprom的掉电发生阶段;根据确定的掉电发生阶段处理获得的原子写标识的信息和保护标识的信息。从本发明实施例提供的技术方案可见,由于根据原子写标识的信息和保护标识的信息确定了eeprom的掉电发生阶段,进而对原子写标识的信息和保护标识的信息进行处理以保证信息的稳定性,从而避免了由于原子写标识的信息读取不稳定而造成eeprom中数据的不稳定,保证了数据读取的一致性。

可选地,获取eeprom的原子写标识的信息和保护标识的信息之前,还包括:

步骤104、获取携带有目标数据的原子写操作指令。

步骤105、根据原子写操作指令将eeprom中的数据保存到预先指定的备份区。

步骤106、设置保护标识的信息为表示原子写操作已启动的信息,并设置原子写标识的信息为表示原子写操作已启动的信息。

步骤107、将目标数据写入eeprom。

步骤108、更新原子写标识的信息为表示原子写操作已结束的信息,并更新保护标识的信息为表示原子写操作已结束的信息。

具体的,步骤104~108的流程示意图可以如图2所示。

可选地,根据获得的原子写标识的信息和保护标识的信息确定eeprom的掉电发生阶段,包括:

如果原子写标识的信息是表示原子写操作已结束的信息,且保护标识的信息是表示原子写操作已启动的信息,确定eeprom的掉电发生在原子写标识的信息的写入阶段或者保护标识的信息的擦除阶段。

根据确定的掉电发生阶段处理获得的原子写标识的信息和保护标识的信息,包括:

设置原子写标识的信息为表示原子写操作已结束的信息,且设置保护标识的信息为表示原子写操作已结束的信息。

需要说明的是,在本发明实施例中,设置原子写标识的信息为表示原子写操作已结束的信息指的是:设置原子写标识的信息为表示eeprom中数据的原子写操作已结束的信息,设置保护标识的信息为表示原子写操作已结束的信息指的是:设置保护标识的信息为表示原子写标识的信息的原子写操作已结束的信息。

具体的,如果eeprom的掉电发生在原子写标识的信息的写入阶段或者保护标识的信息的擦除阶段,那么原子写标识的信息处于不稳定状态,因此此时需要重新设置原子写标识的信息为表示原子写操作已结束的信息,以保证原子写标识的信息处于稳定状态,并设置保护标识的信息为表示原子写操作已结束的信息,以表示原子写标识的信息的原子写操作已结束。

可选地,根据获得的原子写标识的信息和保护标识的信息确定eeprom的掉电发生阶段,包括:

如果原子写标识的信息是表示原子写操作已结束的信息,且保护标识的信息不是表示原子写操作已启动的信息和表示原子写操作已结束的信息,确定eeprom的掉电发生在保护标识的信息的擦除或者写入阶段。

根据确定的掉电发生阶段处理获得的原子写标识的信息和保护标识的信息,包括:

设置保护标识的信息为表示原子写操作已结束的信息。

具体的,如果eeprom的掉电发生在保护标识的信息的擦除或者写入阶段,说明原子写标识的信息应该处于稳定状态,因此只需设置保护标识的信息为表示原子写操作已结束的信息,以表示原子写标识的信息的原子写操作已结束即可。

可选地,根据获得的原子写标识的信息和保护标识的信息确定eeprom的掉电发生阶段,包括:

如果原子写标识的信息不是表示原子写操作已结束的信息,确定eeprom的掉电发生在eeprom的原子写操作已启动后的阶段。

根据确定的掉电发生阶段处理获得的原子写标识的信息和保护标识的信息,包括:

设置原子写标识的信息为表示原子写操作已启动的信息。

恢复保存在备份区中的数据。

设置原子写标识的信息为表示原子写操作已结束的信息,并设置保护的标识为表示原子写操作已结束的信息。

可选地,表示原子写操作已启动的保护标识的信息、表示原子写操作已启动的原子写标识的信息、表示原子写标识操作已结束的原子写标识的信息,以及表示原子写操作已结束的保护标识的信息均为比特位数超过预设位数的信息。

具体的,表示原子写操作已启动的保护标识的信息可以为valid_flag,表示原子写操作已启动的原子写标识的信息可以为start_flag,表示原子写标识操作已结束的原子写标识的信息可以为clear_flag,表示原子写操作已结束的保护标识的信息可以为invalid_flag。valid_flag、start_flag、clear_flag和invalid_flag具体可以以十六进制数表示,例如clear_flag表示为0xa55aaa55a55aaa55,start_flag表示为0xa55aaa55a55aaa55,clear_flag表示为0x5aa555aa5aa555aa,invalid_flag标识为0x5aa555aa5aa555aa。

需要说明的是,使用多字节有规律特征数据表示原子写标识的信息和保护标识的信息,可以避免eeprom擦写中间状态数据与标识的信息出现重复,从而有效降低标识的信息的误判。

具体的,本发明实施例提供的信息处理方法可以如图3所示,其过程在上述实施例中已详细说明,再此不再赘述。

本发明实施例还提供一种信息处理装置,包括存储器和处理器,其中,存储器中存储有以下可被处理器执行的命令:

获取eeprom的原子写标识的信息和保护标识的信息。其中,保护标识的信息表示原子写标识的信息的原子写操作状态。

根据获得的原子写标识的信息和保护标识的信息确定eeprom的掉电发生阶段。

根据确定的掉电发生阶段处理获得的原子写标识的信息和保护标识的信息。

可选地,存储器中还存储有以下可被处理器执行的命令:

获取携带有目标数据的原子写操作指令。

根据原子写操作指令将eeprom中的数据保存到预先指定的备份区。

设置保护标识的信息为表示原子写操作已启动的信息,并设置原子写标识的信息为表示原子写操作已启动的信息。

将目标数据写入eeprom。

更新原子写标识的信息为表示原子写操作已结束的信息,并更新保护标识的信息为表示原子写操作已结束的信息。

可选地,存储器中具体存储有以下可被处理器执行的命令:

如果原子写标识的信息是表示原子写操作已结束的信息,且保护标识的信息是表示原子写操作已启动的信息,确定eeprom的掉电发生在原子写标识的信息的写入阶段或者保护标识的信息的擦除阶段。

设置原子写标识的信息为表示原子写操作已结束的信息,且设置保护标识的信息为表示原子写操作已结束的信息。

可选地,存储器中具体存储有以下可被处理器执行的命令:

如果原子写标识的信息是表示原子写操作已结束的信息,且保护标识的信息不是表示原子写操作已启动的信息和表示原子写操作已结束的信息,确定eeprom的掉电发生在保护标识的信息的擦除或者写入阶段。

设置保护标识的信息为表示原子写操作已结束的信息。

可选地,存储器中具体存储有以下可被处理器执行的命令:

如果原子写标识的信息不是表示原子写操作已结束的信息,确定eeprom的掉电发生在eeprom的原子写操作已启动后的阶段。

设置原子写标识的信息为表示原子写操作已启动的信息。

恢复保存在备份区中的数据。

设置原子写标识的信息为表示原子写操作已结束的信息,并设置保护的标识为表示原子写操作已结束的信息。

可选地,表示原子写操作已启动的保护标识的信息、表示原子写操作已启动的原子写标识的信息、表示原子写标识操作已结束的原子写标识的信息,以及表示原子写操作已结束的保护标识的信息均为比特位数超过预设位数的信息。

本发明实施例还提供一种计算机可读存储介质,存储介质上存储有计算机可执行命令,计算机可执行命令用于执行以下步骤:

获取eeprom的原子写标识的信息和保护标识的信息。其中,保护标识的信息表示原子写标识的信息的原子写操作状态。

根据获得的原子写标识的信息和保护标识的信息确定eeprom的掉电发生阶段。

根据确定的掉电发生阶段处理获得的原子写标识的信息和保护标识的信息。

可选地,计算机可执行命令还用于执行以下步骤:

获取携带有目标数据的原子写操作指令。

根据原子写操作指令将eeprom中的数据保存到预先指定的备份区。

设置保护标识的信息为表示原子写操作已启动的信息,并设置原子写标识的信息为表示原子写操作已启动的信息。

将目标数据写入eeprom。

更新原子写标识的信息为表示原子写操作已结束的信息,并更新保护标识的信息为表示原子写操作已结束的信息。

可选地,计算机可执行命令具体用于执行以下步骤:

如果原子写标识的信息是表示原子写操作已结束的信息,且保护标识的信息是表示原子写操作已启动的信息,确定eeprom的掉电发生在原子写标识的信息的写入阶段或者保护标识的信息的擦除阶段。

设置原子写标识的信息为表示原子写操作已结束的信息,且设置保护标识的信息为表示原子写操作已结束的信息。

可选地,计算机可执行命令具体用于执行以下步骤:

如果原子写标识的信息是表示原子写操作已结束的信息,且保护标识的信息不是表示原子写操作已启动的信息和表示原子写操作已结束的信息,确定eeprom的掉电发生在保护标识的信息的擦除或者写入阶段。

设置保护标识的信息为表示原子写操作已结束的信息。

可选地,计算机可执行命令具体用于执行以下步骤:

如果原子写标识的信息不是表示原子写操作已结束的信息,确定eeprom的掉电发生在eeprom的原子写操作已启动后的阶段。

设置原子写标识的信息为表示原子写操作已启动的信息。

恢复保存在备份区中的数据。

设置原子写标识的信息为表示原子写操作已结束的信息,并设置保护的标识为表示原子写操作已结束的信息。

可选地,表示原子写操作已启动的保护标识的信息、表示原子写操作已启动的原子写标识的信息、表示原子写标识操作已结束的原子写标识的信息,以及表示原子写操作已结束的保护标识的信息均为比特位数超过预设位数的信息。

虽然本发明实施例所揭露的实施方式如上,但所述的内容仅为便于理解本发明实施例而采用的实施方式,并非用以限定本发明实施例。任何本发明实施例所属领域内的技术人员,在不脱离本发明实施例所揭露的精神和范围的前提下,可以在实施的形式及细节上进行任何的修改与变化,但本发明实施例的专利保护范围,仍须以所附的权利要求书所界定的范围为准。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1