[发明专利]一种掉电安全的数据存储及快速检索方法在审
申请号: | 201711277014.8 | 申请日: | 2017-12-06 |
公开(公告)号: | CN108052457A | 公开(公告)日: | 2018-05-18 |
发明(设计)人: | 吕翔;梁有超;石甫 | 申请(专利权)人: | 吉旗(成都)科技有限公司 |
主分类号: | G06F12/06 | 分类号: | G06F12/06;G06F12/14;G06F12/16 |
代理公司: | 北京权智天下知识产权代理事务所(普通合伙) 11638 | 代理人: | 刘玉欣 |
地址: | 610000 四川省*** | 国省代码: | 四川;51 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 掉电 安全 数据 存储 快速 检索 方法 | ||
本发明公开了一种掉电安全的数据存储及快速检索方法,通过特定的存储结构实现数据的掉电安全存储及快速检索;本存储检索方式具备数据掉电安全、检索速度块、体积小、支持几乎所有静态存储器等特点。
技术领域
本发明涉及数据存储及检索技术领域,具体为一种掉电安全的数据存储及快速检索方法。
背景技术
现今嵌入式系统的主流数据、文件存储方式主要有:FAT、NFS、EXT3、 EXT4等;上述文件系统具备存储功能强大、检索快速等特点,但是针对嵌入式系统其缺点也是非常明显的:1).对系统依赖性较强,如:NFS文件系统仅支持 Windows系统,EXT3和EXT4文件系统仅支持Linux系统,无法适用于无操作系统或植入简单操作系统(如:FreeRtos、uCos)的嵌入式产品;2).基于FAT 表设计容错性较差,FAT损坏或丢失即意味着整个文件数据丢失;3).体积庞大,移植到存储空间仅有几兆的嵌入式系统几乎不可能。
发明内容
本发明的目的在于提供一种掉电安全的数据存储及快速检索方法,以解决上述背景技术中提出的问题。
为实现上述目的,本发明提供如下技术方案:一种掉电安全的数据存储及快速检索方法,包括以下步骤:
A、数据存储:将静态存储器划分指定大小的块,再将块划分为指定大小的行;
a、块数据的写入:B0-Bn按环形进行覆盖存储,即按B0、B1、B2、Bn的顺序顺序相存储器中写入数据,当写到Bn块时,重新从B0块开始重新存储;当数据开始写入块第一行前,先擦除当前块的下一块,保证B0-Bn所有块中存在一个块为空块,用于表示数据结尾;
b、行数据的写入:L0行及每行第一字节不用于存储实际数据,数据按L1、 L2、L3、L127的顺序写入;L0行的第1字节、第2字节、第3字节与L1、L2、 L3行的第0字节一一对应,把这些再接成为标记字节,用于标识每行的数据类型;
c、数据单元的写入:数据单元长度可以是任意数据长度;数据单元由数据单元头及数据内容组成,数据单元头包含数据单元长度、CRC校验等字段,用于标识数据内容属性;为便于存储和搜索数据的单元长度,如果不是行长度的倍数,对其进行进入处理,即不满一行按一行处理;
B、数据的快速搜索:
a、数据结尾的搜索,遍历所有块的L0行,因L0行的第1字节、第2字节、第3字节与L1、L2、L3行的第0字节一一对应,只需依次判断L0内的字节即可判断对应行是否为空,如果L0行全部为空即可判断当前块为空,即搜索到数据结尾;
b、搜索某个类型的数据,与搜索数据结尾相同原理,搜索L0即可搜索到相应的数据单元;L0行的引入可以在不读取数据内容的情况下就能快速搜索到数据结尾和数据单元,减少CPU操作存储的次数,大大提高搜索效率,达到快速搜索的目的。
优选的,还包括掉电保护方法:
a、数据结尾保护措施:当数据开始写入块第一行L0前,先擦除当前块的下一块;
b、数据结尾丢失错误保护措施:强制B0为数据结尾,清空B0,出B0数据丢失外,其它块数据依然存在且可用,可最大限度减少数据丢失量,同时确保系统不至于因为数据结构破块而导致完全瘫痪,提高系统容灾性能;
c、数据未完全写入掉电保护措施:等待数据单元完全写入后,再写入 MARK-FirstL标志,如果数据未完全写入,该数据单元不会被搜索到且不会影响整个系统正常运行。
优选的,还包括文件的支持,包括以下步骤:
A、文件创建:根据指定的文件大小占用对应个数的数据单元,第一个数据单元用于存储文件信息,后面的数据单元用于存储文件内容;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于吉旗(成都)科技有限公司,未经吉旗(成都)科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201711277014.8/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种金属加工用压铸装置
- 下一篇:一种废气脱硫除尘装置
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置