一种嵌入式系统的数据存取方法及计算机可读存储介质技术方案

技术编号:21298612 阅读:23 留言:0更新日期:2019-06-12 07:41
本发明专利技术提供了一种嵌入式系统的数据存取方法,步骤包括:S1文件系统执行在目标存储介质中存储数据任务,包括获取目标数据的数据长度,确定写顺序号,及进行目标数据的校验计算,以定义目标数据身份,形成关键数据;S2根据第一存取规则,分别写入关键数据至目标存储介质的第一及第二文件数据中;S3文件系统执行在目标存储介质中读取数据任务,包括依次对第一及第二文件数据中的关键数据进行合法性检验及校验计算;S4根据第二存取规则,读取第一及第二文件数据中的其一,从而在无需增加额外存储介质的条件下,提高了此类嵌入式系统的可靠性。

A Data Access Method for Embedded System and Computer Readable Storage Media

The invention provides a data access method for an embedded system, which comprises the following steps: the S1 file system performs the task of storing data in the target storage medium, including acquiring the data length of the target data, determining the writing sequence number, and checking and calculating the target data to define the target data identity and form the key data; the S2 file system writes the key data according to the first access rule, respectively. To the first and second file data of the target storage medium; S3 file system performs the task of reading data in the target storage medium, including validation and verification calculation of key data in the first and second file data in turn; S4 reads one of the first and second file data according to the second access rule, thus without additional storage medium. It improves the reliability of this kind of embedded system.

【技术实现步骤摘要】
一种嵌入式系统的数据存取方法及计算机可读存储介质
本专利技术涉及一种嵌入式系统的数据存取技术,尤其涉及在采用传统文件系统的环境下,为防止意外掉电对系统中的数据造成破坏,而设计的嵌入式系统的数据存取方法及计算机可读存储介质。
技术介绍
嵌入式系统在应用过程中,不可避免地会出现突然掉电等意外情况发生,造成系统中当前读写数据的损坏,而现有技术中为解决此类问题,通常会以增加“备份”的方式,额外增加存储介质备份相关系统数据,从而实现对系统的备份恢复。但相应的此类系统的硬件成本便会上升。
技术实现思路
本专利技术的主要目的在于提供一种嵌入式系统的数据存取方法及计算机可读存储介质,以实现在无需增加额外存储介质的条件下,确保嵌入式系统断电后目标数据的有效性,以对嵌入式系统进行恢复,避免断电后系统奔溃。为了实现上述目的,根据本专利技术的一个方面,提供了一种嵌入式系统的数据存取方法,步骤包括:S1文件系统执行在目标存储介质中存储数据任务,包括获取目标数据的数据长度,确定写顺序号,及进行目标数据的校验计算,以定义目标数据身份,形成关键数据;S2根据第一存取规则,分别写入关键数据至目标存储介质的第一及第二文件数据中;S3文件系统执行在目标存储介质中读取数据任务,包括依次对第一及第二文件数据中的关键数据进行合法性检验及校验计算;S4根据第二存取规则,读取第一及第二文件数据中的其一。在优选实施方式中,该关键数据包括:校验数据及目标数据,该校验数据包括:目标数据的数据长度、校验值及写顺序号数据。在优选实施方式中,该第一存取规则包括:文件系统读取各文件数据,择一做出判断:当发现有其中一个文件数据无效时,定义其为第一文件数据;当发现所有文件数据都有效但写顺序号不同时,以写顺序号较小的文件数据作为第一文件数据;当发现所有文件数据都无效或都有效时,任选其一定义为第一文件数据。在优选实施方式中,该第二存取规则包括:文件系统对各文件数据的有效性进行判断,择一读取:当仅有一个文件数据有效的,则读取该文件数据;当各个文件数据都有效的,根据顺序号择一读取;当各个文件数据都有效的,顺序号相同的,择任一读取;当各个文件数据都无效的,执行S2,S3,S4步骤。在优选实施方式中,该合法性检验及校验计算步骤包括:检查校验数据中的数据长度字段的合法性;对目标数据进行校验计算,验证校验值。在优选实施方式中,该校验计算为CRC循环冗余校验计算。在优选实施方式中,该数据长度、校验值及写顺序号数据为4字节。在优选实施方式中,该校验数据还包括:4字节的保留字段。在优选实施方式中,该校验数据中的,该数据长度、校验值、保留字段及写顺序号数据采用大端方法保存,以高位字节数据在前,低位字节数据在后排列。为了实现上述目的,根据本专利技术的另一方面,还提供了一种计算机可读存储介质,其上存储有计算机程序,其中,该计算机程序被处理器执行时,实现如上述该嵌入式系统的数据存取方法的步骤。通过本专利技术提供的该嵌入式系统的数据存取方法及计算机可读存储介质,解决了相关技术中需要额外增加存储介质的问题,进而降低了此类嵌入式系统的生产成本,从而在无需增加额外存储介质的条件下,确保了此类嵌入式系统断电后目标数据的有效性,以对嵌入式系统进行恢复,解决了断电后系统奔溃的问题,提高了此类嵌入式系统的可靠性。附图说明构成本申请的一部分的附图用来提供对本专利技术的进一步理解,本专利技术的示意性实施例及其说明用于解释本专利技术,并不构成对本专利技术的不当限定。在附图中:图1为本专利技术的嵌入式系统的数据存取方法构架示意图;图2为本专利技术的嵌入式系统的数据存取方法流程示意图;文中表1为关键数据的数据结构表。具体实施方式需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本专利技术。为了使本领域的技术人员更好的理解本专利技术方案,下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分的实施例,而不是全部的实施例。基于本专利技术中的实施例,在本领域普通技术人员没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本专利技术的保护范围。需要说明的是,本专利技术的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“S1”、“S2”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本专利技术的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含。本专利技术提供的该嵌入式系统的数据存取方法,主要解决在嵌入式系统中,在采用通用文件系统的环境下,防止突然掉电对系统中的目标数据的破坏问题,从而给出了一种对该目标数据采取校验加特定步骤的双文件保存方案,来实现既能检测出文件中数据是否有效,又能确保至少有一个文件数据中保存的关键数据的有效性。具体来说,请参阅图1至图2,本专利技术提供的该嵌入式系统的数据存取方法,主要步骤包括:S1文件系统执行在目标存储介质中存储数据任务,包括获取目标数据的数据长度,确定写顺序号,及进行目标数据的校验计算,以定义目标数据身份,形成关键数据。请参阅表1,其中该关键数据主要包括:校验数据及目标数据,该校验数据主要包括:4字节的目标数据的数据长度、4字节的校验值及4字节的写顺序号数据。而在优选实施方式下,为了提高该关键数据的可识别性及扩展性,还可以包括4字节的保留字段,从而形成16个字节的校验数据。而在优选实施方案中,该校验数据中的,该数据长度、校验值、保留字段及写顺序号数据采用大端方法保存,以高位字节数据在前,低位字节数据在后排列。表1为关键数据的数据示例结构:表1其中该校验数据中的该4字节的数据长度是该目标数据的长度。而该校验值数据在计算时,则是以校验值数据字段为0时,对该校验数据及目标数据进行校验计算后得出,具体来说,本专利技术的校验计算优选以循环冗余校验计算(CRC)来进行示例说明,本领域技术人员应当理解,该示例仅用于说明本专利技术方案的可实现性,因此任何可以实现该校验计算相同目的的校验算法皆属于本专利技术的揭示范围。因此在本实施例中,该校验数据和目标数据一起以CRC-32方式进行计算,同时在计算CRC-32时要将CRC字段本身的值默认为0,由此正确得出该CRC校验值;而该写顺序号初始化时值应设为1,之后每写一次目标数据则在原值的基础上增加1;而该保留字段可以由用户指定使用,而在本实施例中以不使用为例进行说明,因此该4字节的保留字段可以设置为0。籍此,该文件系统在执行上述S1的步骤后,即可获取对应的关键数据,从而根据上述处理步骤获取的该校验数据,则可以证明与之对应的目标数据的身份,并为后续存取步骤提供判断依据。S2根据第一存取规则,分别写入关键数据至目标存储介质的第一及第二文件数据中。具体来说,该第一存取规则的执行步骤主要包括:由文件系统读取存储介质中已存在的各文件数据,择一做出判断:i.当发现有其中一个文件数据无效时,定义其为第一文件数据;ii.当发现所有文件数据都有效但写顺序号不同时,以写顺序号较小的文件数据作为第一文件数据;iii.当发现所有文件数据都无效或都有效时,任选其一定义为第一文件数据。需要本文档来自技高网...

【技术保护点】
1.一种嵌入式系统的数据存取方法,步骤包括:S1文件系统执行在目标存储介质中存储数据任务,包括获取目标数据的数据长度,确定写顺序号,及进行目标数据的校验计算,以定义目标数据身份,形成关键数据;S2根据第一存取规则,分别写入关键数据至目标存储介质的第一及第二文件数据中;S3文件系统执行在目标存储介质中读取数据任务,包括依次对第一及第二文件数据中的关键数据进行合法性检验及校验计算;S4根据第二存取规则,读取第一及第二文件数据中的其一。

【技术特征摘要】
1.一种嵌入式系统的数据存取方法,步骤包括:S1文件系统执行在目标存储介质中存储数据任务,包括获取目标数据的数据长度,确定写顺序号,及进行目标数据的校验计算,以定义目标数据身份,形成关键数据;S2根据第一存取规则,分别写入关键数据至目标存储介质的第一及第二文件数据中;S3文件系统执行在目标存储介质中读取数据任务,包括依次对第一及第二文件数据中的关键数据进行合法性检验及校验计算;S4根据第二存取规则,读取第一及第二文件数据中的其一。2.根据权利要求1所述嵌入式系统的数据存取方法,所述关键数据包括:校验数据及目标数据,所述校验数据包括:目标数据的数据长度、校验值及写顺序号数据。3.根据权利要求1所述嵌入式系统的数据存取方法,所述第一存取规则包括:文件系统读取各文件数据,择一做出判断:当发现有其中一个文件数据无效时,定义其为第一文件数据;当发现所有文件数据都有效但写顺序号不同时,以写顺序号较小的文件数据作为第一文件数据;当发现所有文件数据都无效或都有效时,任选其一定义为第一文件数据。4.根据权利要求1所述嵌入式系统的数据存取方法,所述第二存取规则包括:文件系统对各文件数据的...

【专利技术属性】
技术研发人员:聂咸彧
申请(专利权)人:上海仰歌电子科技有限公司
类型:发明
国别省市:上海,31

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1