本发明涉及一种数据配置方法,尤其涉及一种移动终端中重要数据的部署保存、获取及仲裁方法。
背景技术:
对于一个完整的计算机应用软件来说,软件配置是一个重要组成部分,它增强了软件的通用性、灵活性、可维护性和可操作性,有助于实现软件各种功能的组合与控制,它已成为软件的功能、界面,甚至是代码的一部分;随着互联网的发展,它已成为众多软件之间协同工作的纽带和桥梁。
而在嵌入式应用系统中,数据和代码紧密的联系在一起,它需要对每种可能情况都编一段程序单独处理,不但造成程序量庞大,而且升级和维护的复杂度大,尤其需要控制过程中进行建模,把一些比较复杂、各种参数不易理解的过程,进行分类、归纳,把数据从程序分离出来,对于提高整机系统中数据和程序的独立性、数据冗余以及数据安全等具有重要意义。
文献cn104572146b提供了一种钻机参数的配置系统,可以实现对钻机参数的快速查询,从而有助于提高板件的生产效率,简化操作步骤;文献cn105005633b发明一种高速列车配置平台及配置方法,提供了一种需求信息具有较好的映射关系,产品需求和设计参数之间具有明确映射关系的高速列车产品配置平台及方法;文献cn104714825b发明了统一策略配置的方法,实现对企业内部共有的特征进行统一设定,对特有特征进行分组设定的计算机策略快速设定,将计算机策略设置的软件开发同具体策略配置分离开,降低修改的繁琐程度,提高策略配置效率;文献cn105786578a公开了一种参数配置系统及配置方法,通过在上位机软件设计通用的框架,根据自动获取设备类型信息,便利地实现了同一款软件对多款设备参数的配置,灵活性高、通用型强,同时,减小了软件的开发难度和维护难度;文献cn106303429b发明了远程配置方法及装置,本地监控客户端只是将配置参数发送给远程监控客户端,可以解决时延较大的问题,并且远程设备也不需要将自身的控制权交给本地设备,避免了安全风险的问题;文献cn107733682a公开了一种远程配置方法、设备配置方法及远程指导配置设备方法,可完成待配置智能设备接入网络的复杂配置,降低了现场技术支持的必须性,提升了人力资源的利用效率;文献cn109739805a公开了一种配置模块的参数的方法和配置模块的参数的装置,通过将芯片的多个模块的参数配置信息以链表形式存储,并且由链表控制器读取芯片的模块的参数配置信息并对模块的参数进行配置,可以缓解cpu处理的实时性要求;2006年5月《遥测遥控》第27卷第3期p54-57发表了“单片机软件死锁问题及配置技术设计探讨”,详细介绍了从eeprom中读取配置数据的三种情况,或读取默认配置,或从eeprom读取配置,或写默认配置再读取;文献cn101515259b发明了一种嵌入式设备配置数据保护方法,采用flash分块保存配置数据,使用双配置区和默认配置区保存特定配置数据,通过校验配置数据正确性,使用正确的配置数据,并恢复错误配置区的配置数据的读数据过程,和使用刷新配置数据时双配置区逐一刷新的写数据过程的方法,保证嵌入式设备配置数据的完整性和可恢复性。
对一个存储器分若干块来保存配置数据、以及对配置数据进行校验等方法,可以降低嵌入式系统因flash刷新操作过程中异常掉电导致的配置数据清空、不完整等而出现异常的概率;但对于移动终端中一些极重要的配置数据如服务器ip、端口号、通讯号码等,在进行修改、保存和读取时还需要更多考量进行部署保存、获取及仲裁,才能更有效地降低移动终端因丢失重要配置数据而失联的可能性,从而保障移动终端的通讯成功率。
技术实现要素:
本发明的目的是提供一种移动终端中重要数据的部署保存、获取及仲裁方法,能保障移动终端在极端情况下仍然可以获得重要配置数据,提高移动终端通讯成功率。
本发明的目的是采用以下技术方案实现的:移动终端由嵌入式微处理器、储存器1、存储器2和其他功能电路组成,其中,嵌入式微处理器分别和存储器1、存储器2和其他功能电路相连,存储器1和存储器2是两个各自独立的、可编程的非易失性存储器。所述的移动终端中,嵌入式微处理器的程序存储器保存了由nt_config定义的默认配置数据,存储器1的指定地址保存了由nt_config定义的配置数据,存储器2的指定地址保存了由nt_config定义的配置数据。
所述嵌入式微处理器,内部设置有线性序列的、固定长度的极重要配置数据结构体nt_config,nt_config由固定字节的特征字符块、服务器ip数据块、服务器端口号数据块、其他重要数据块、配置数据版本号(ver)和校验数据块组成;配置数据版本号,是一个约定的意义表达,指示其新旧状态;校验数据块保存的是对nt_config除校验数据块以外其他所有字节进行crc校验计算的结果。
所述的嵌入式微处理器,设置有由nt_config定义config0、config1、config2三个变量,移动终端上电启动时,从嵌入式微处理器程序存储器读取的默认配置数据保存在config0,从储存器1读取的配置数据保存config1,从储存器2读取的配置数据保存config2。
所述的嵌入式微处理器,首先读取存储器0的配置数据,其次读取存储器1的配置数据,然后读取存储器2的配置数据,最后进行配置数据仲裁判断。
所述的配置数据仲裁判断,操作步骤如下:
1)检查config1校验是否正确,如果正确,就继续检查config2校验是否正确,如果正确,即两者校验都正确,才对config1和config2中版本数据(ver)对比,如果版本数据相等,则仲裁使用config1配置数据,如果版本数据不相等,则使用新版本的配置数据更新另外一个配置数据,最后仲裁使用config1配置数据;
2)检查config1校验是否正确,如果正确,就继续检查config2校验是否正确,如果不正确,即只有config1校验正确,此时将config1赋值给config2,然后将config2写入存储器2保存,最后仲裁使用config1配置数据;
3)检查config1校验是否正确,如果不正确,就继续检查config2校验是否正确,如果正确,即只有config2校验正确,此时将config2赋值给config1,然后将config1写入存储器1保存,最后仲裁使用config1配置数据;
4)检查config1校验是否正确,如果不正确,就继续检查config2校验是否正确,如果不正确,即两者校验都不正确,此时将config0赋值给config1,然后将config1写入存储器1保存,将config0赋值给config2,然后将config2写入存储器2保存,最后仲裁使用config1配置数据。
与现有技术方法相比,本发明的有益效果是:移动终端中的极重要数据部署保存得当,获取与仲裁管理合理,能有效地降低移动终端因丢失重要配置数据而失联的可能性。
附图说明
图1是本发明所述的移动终端硬件结构框图;
图2是极重要配置数据结构体组成示意图;
图3是本发明所述的配置数据读取流程图;
图4是本发明所述的配置数据仲裁流程图。
具体实施方式
图1中,1是嵌入式微处理器,内置有程序存储器,2是eeprom芯片,3是flash芯片,4是其他功能电路,其中1分别和2、3、4相连。
图2中,201是特征字符块,202是服务器ip数据块,203是服务器端口号数据块,204是其他数据块,205是配置数据版本号(ver),206是校验数据块。
为了更详细的描述本发明,下面结合图3、图4作进一步说明:
步骤301:读取配置数据流程开始,执行步骤302;
步骤302:读取程序存储器中的配置数据,保存到config0,执行步骤303;
步骤303:读取存储器1中的配置数据,保存到config1,执行步骤304;
步骤304:读取存储器2中的配置数据,保存到config2,执行步骤305;
步骤305:执行配置数据仲裁判断,执行步骤306;
步骤306:配置数据读取完成。
步骤401:配置数据仲裁开始,执行步骤402;
步骤402:对config1进行校验检查,如果正确,执行步骤405,否则错误,执行步骤403;
步骤403:对config2进行校验检查,如果正确,执行步骤409,否则错误,执行步骤404;
步骤404:用config0对config1赋值,写入存储器1保存,用config0对config2赋值,写入存储器2保存,执行步骤410;
步骤405:对config2进行校验检查,如果正确,执行步骤406,否则错误,执行步骤408;
步骤406:检查config1中版本信息和config2中版本信息是否一致,如果相等一致,执行步骤410,否则不一致,执行步骤407;
步骤407:检查config1中版本信息是否比config2中版本信息更新,如果是更新,执行步骤408,否则config2中版本信息更新,执行步骤409;
步骤408:将config1赋值给config2,写入存储器2保存,然后执行步骤410;
步骤409:将config2赋值给config1,写入存储器1保存,然后执行步骤410;
步骤410:config1生效,执行步骤411;
步骤411:配置数据仲裁结束。
虽然以上描述了本发明的具体实施方式,但是熟悉本技术领域的技术人员应该理解,我们所描述的具体实施例只是说明性的,而不是用于对本发明范围的限定,任何受本发明技术路线启发所作的等效修饰以及变化,都应当涵盖在本发明权利要求所保护的范围内。
本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一计算机可读取存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:rom、ram、磁碟或者光盘等各种可以存储程序代码的介质。
1.一种移动终端中重要数据的部署保存、获取及仲裁方法,移动终端由嵌入式微处理器、储存器1、存储器2和其他功能电路组成,其特征是:
1)嵌入式微处理器分别和存储器1、存储器2和其他功能电路相连,存储器1和存储器2是两个各自独立的、可编程的非易失性存储器;
2)部署保存、获取及配置数据仲裁判断,操作步骤是:
检查config1校验是否正确,如果正确,就继续检查config2校验是否正确,如果正确,即两者校验都正确,才对config1和config2中版本数据(ver)对比,如果版本数据相等,则仲裁使用config1配置数据,如果版本数据不相等,则使用新版本的配置数据更新另外一个配置数据,最后仲裁使用config1配置数据;
检查config1校验是否正确,如果正确,就继续检查config2校验是否正确,如果不正确,即只有config1校验正确,此时将config1赋值给config2,然后将config2写入存储器2保存,最后仲裁使用config1配置数据;
检查config1校验是否正确,如果不正确,就继续检查config2校验是否正确,如果正确,即只有config2校验正确,此时将config2赋值给config1,然后将config1写入存储器1保存,最后仲裁使用config1配置数据;
检查config1校验是否正确,如果不正确,就继续检查config2校验是否正确,如果不正确,即两者校验都不正确,此时将config0赋值给config1,然后将config1写入存储器1保存,将config0赋值给config2,然后将config2写入存储器2保存,最后仲裁使用config1配置数据。
2.根据权利要求1所述的一种移动终端中重要数据的部署保存、获取及仲裁方法,其特征是:所述的移动终端中,嵌入式微处理器的程序存储器保存了由nt_config定义的默认配置数据,存储器1的指定地址保存了由nt_config定义的配置数据,存储器2的指定地址保存了由nt_config定义的配置数据。
3.根据权利要求1所述的一种移动终端中重要数据的部署保存、获取及仲裁方法,其特征是:所述嵌入式微处理器,内部设置有线性序列的、固定长度的极重要配置数据结构体nt_config,nt_config由固定字节的特征字符块、服务器ip数据块、服务器端口号数据块、其他重要数据块、配置数据版本号ver和校验数据块组成;配置数据版本号,是一个约定的意义表达,指示其新旧状态;校验数据块保nt_config除校验数据块以外其他所有字节进行crc校验计算的结果。
4.根据权利要求1所述的一种移动终端中重要数据的部署保存、获取及仲裁方法,其特征是:所述的嵌入式微处理器,设置有由nt_config定义config0、config1、config2三个变量,移动终端上电启动时,从嵌入式微处理器程序存储器读取的默认配置数据保存在config0,从储存器1读取的配置数据保存config1,从储存器2读取的配置数据保存config2。
5.根据权利要求1所述的一种移动终端中重要数据的部署保存、获取及仲裁方法,其特征是:所述的嵌入式微处理器,首先读取存储器0的配置数据,其次读取存储器1的配置数据,然后读取存储器2的配置数据,最后进行配置数据仲裁判断。
技术总结