本发明涉及计算机,尤其涉及一种数据升级方法、装置、设备及存储介质。
背景技术:
1、在pc通信模块中,有些运营商配置文件、用户参数配置文件,模块自身的应用数据需要存储在flash中支持掉电保存,这类数据我们统称为nv数据。当通信模块版本有改动时,比如新增功能需求等,就需要对通信模块进行版本升级。如果升级后的版本nv数据结构有修改,比如有新增用户配置项时,就需要考虑版本升级后的nv数据兼容。需要保证新的nv数据结构能够生效,同时尽量避免原nv数据丢失或者被修改。相关技术中采用的方案为在原nv数据中新增全新的nv结构使用,但是项目在长期维护过程中,修改nv结构或者新增客户配置的场景很多,如果每次修改都新增一个nv结构,后期会有很多小nv结构,不方便研发后期维护,且如果修改nv结构的同时修改n v版本号,升级后模块会根据nv版本号重新初始化nv数据,这样会导致n v数据恢复默认值,修改了客户配置参数,影响用户体验。因此,如何在数据升级时保留原nv数据,提高数据升级效率成为了亟待解决的技术问题。
技术实现思路
1、本发明的主要目的在于提供了一种数据升级方法、装置、设备及存储介质,旨在解决现有技术nv数据升级效率较低,原nv数据会丢失的技术问题。
2、为实现上述目的,本发明提供了一种数据升级方法,所述数据升级方法应用于nv文件系统,所述nv文件系统中设置有用于存放默认nv数据的第一数据文件和用于存放生效nv数据的第二数据文件;
3、所述方法包括以下步骤:
4、在接收到数据更新指令时,从所述数据更新指令中提取nv配置文件;
5、根据所述nv配置文件对所述第一数据文件中的默认nv数据和/或所述第二数据文件中的生效nv数据进行修改,得到目标默认nv数据和/或目标生效nv数据;
6、基于所述目标默认nv数据解析所述目标生效nv数据。
7、可选地,所述根据所述nv配置文件对所述第一数据文件中的默认nv数据和/或所述第二数据文件中的生效nv数据进行修改,得到目标默认nv数据和/或目标生效nv数据的步骤,包括:
8、获取所述nv配置文件中的第一nv数据和/或第二nv数据;
9、根据所述第一nv数据对所述第一数据文件中的默认nv数据进行修改,得到目标默认nv数据;
10、和/或,
11、根据所述第二nv数据对所述第二数据文件中的生效nv数据进行修改,得到目标生效nv数据。
12、可选地,所述第一nv数据包括nv数据结构,所述第二nv数据包括n v数据的名称与数值的键值对;
13、所述根据所述第一nv数据对所述第一数据文件中的默认nv数据进行修改,得到目标默认nv数据,包括:
14、利用所述nv数据结构修改所述第一数据文件中的默认nv数据;
15、所述根据所述第二nv数据对所述第二数据文件中的生效nv数据进行修改,得到目标生效nv数据,包括:
16、利用所述键值对作为索引对所述第二数据文件中的生效nv数据进行修改。
17、可选地,所述基于所述目标默认nv数据解析所述目标生效nv数据的步骤,包括:
18、对所述第一数据文件中的所述目标默认nv数据进行解析,得到默认nv数据结构体;
19、基于所述默认nv数据结构体对所述第二数据文件中的所述目标生效nv数据进行解析。
20、可选地,所述基于所述默认nv数据结构体对所述第二数据文件中的所述目标生效nv数据进行解析的步骤,包括:
21、根据所述默认nv数据结构体解析所述第二数据文件中的所述目标生效nv数据;
22、在存在无法解析的目标参数时,读取所述默认nv数据结构体中所述目标参数对应的参数信息;
23、将所述参数信息添加至所述目标生效nv数据中。
24、可选地,所述对所述第一数据文件中的所述目标默认nv数据进行解析,得到默认nv数据结构体的步骤,包括:
25、通过预设数据交换格式对所述第一数据文件中的所述目标默认nv数据进行解析,得到默认nv数据结构体。
26、可选地,所述根据所述nv配置文件对所述第一数据文件中的默认nv数据和/或所述第二数据文件中的生效nv数据进行修改的步骤之前,还包括:
27、确定所述nv配置文件的文件类型;
28、根据所述文件类型确定待修改的默认nv数据和/或生效nv数据。
29、此外,为实现上述目的,本发明还提供一种数据升级装置,所述数据升级装置中设置有用于存放默认nv数据的第一数据文件和用于存放生效nv数据的第二数据文件,所述数据升级装置包括:
30、提取模块,用于在接收到数据更新指令时,从所述数据更新指令中提取n v配置文件;
31、修改模块,用于根据所述nv配置文件对所述第一数据文件中的默认nv数据和/或所述第二数据文件中的生效nv数据进行修改,得到目标默认nv数据和/或目标生效nv数据;
32、解析模块,用于基于所述目标默认nv数据解析所述目标生效nv数据。
33、此外,为实现上述目的,本发明还提出一种数据升级设备,所述设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的数据升级程序,所述数据升级程序配置为实现如上文所述的数据升级方法的步骤。
34、此外,为实现上述目的,本发明还提出一种存储介质,所述存储介质上存储有数据升级程序,所述数据升级程序被处理器执行时实现如上文所述的数据升级方法的步骤。
35、本发明应用于nv文件系统,所述nv文件系统中设置有用于存放默认n v数据的第一数据文件和用于存放生效nv数据的第二数据文件;包括:在接收到数据更新指令时,从所述数据更新指令中提取nv配置文件;根据所述nv配置文件对所述第一数据文件中的默认nv数据和/或所述第二数据文件中的生效nv数据进行修改,得到目标默认nv数据和/或目标生效nv数据;基于所述目标默认nv数据解析所述目标生效nv数据。由于本发明nv文件系统中设置有用于存放默认nv数据的第一数据文件和用于存放生效nv数据的第二数据文件,在进行nv数据更新时,可分别更新默认nv数据和/或生效nv数据,相对于现有的在升级nv数据后,会丢失原有的nv数据的方式,本发明上述方式能够避免升级后原有nv数据的丢失。
1.一种数据升级方法,其特征在于,所述数据升级方法应用于nv文件系统,所述nv文件系统中设置有用于存放默认nv数据的第一数据文件和用于存放生效nv数据的第二数据文件;
2.根据权利要求1所述的数据升级方法,其特征在于,所述根据所述nv配置文件对所述第一数据文件中的默认nv数据和/或所述第二数据文件中的生效nv数据进行修改,得到目标默认nv数据和/或目标生效nv数据的步骤,包括:
3.根据权利要求2所述的数据升级方法,其特征在于,所述第一nv数据包括nv数据结构,所述第二nv数据包括nv数据的名称与数值的键值对;
4.根据权利要求1所述的数据升级方法,其特征在于,所述基于所述目标默认nv数据解析所述目标生效nv数据的步骤,包括:
5.根据权利要求4所述的数据升级方法,其特征在于,所述基于所述默认nv数据结构体对所述第二数据文件中的所述目标生效nv数据进行解析的步骤,包括:
6.根据权利要求4所述的数据升级方法,其特征在于,所述对所述第一数据文件中的所述目标默认nv数据进行解析,得到默认nv数据结构体的步骤,包括:
7.根据权利要求1-6任一项所述的数据升级方法,其特征在于,所述根据所述nv配置文件对所述第一数据文件中的默认nv数据和/或所述第二数据文件中的生效nv数据进行修改的步骤之前,还包括:
8.一种数据升级装置,其特征在于,所述数据升级装置中设置有用于存放默认nv数据的第一数据文件和用于存放生效nv数据的第二数据文件,所述数据升级装置包括:
9.一种数据升级设备,其特征在于,所述设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的数据升级程序,所述数据升级程序配置为实现如权利要求1至7中任一项所述的数据升级方法的步骤。
10.一种存储介质,其特征在于,所述存储介质上存储有数据升级程序,所述数据升级程序被处理器执行时实现如权利要求1至7任一项所述的数据升级方法的步骤。