[发明专利]一种异常掉电后的数据修复方法及装置在审
申请号: | 202110333293.5 | 申请日: | 2021-03-29 |
公开(公告)号: | CN113126916A | 公开(公告)日: | 2021-07-16 |
发明(设计)人: | 黎兴建;胡胜发 | 申请(专利权)人: | 广州安凯微电子股份有限公司 |
主分类号: | G06F3/06 | 分类号: | G06F3/06 |
代理公司: | 广州三环专利商标代理有限公司 44202 | 代理人: | 郭浩辉;颜希文 |
地址: | 510000 广东省广州市广州高新技术产业开发*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 异常 掉电 数据 修复 方法 装置 | ||
本发明公开了一种异常掉电后的数据修复方法,上述方法包括:在设备重新上电时,对分区上的所有块进行扫描,获取分区内的所有数据块;对所有所述数据块内的数据页进行读取,并将读取失败的数据页进行删除。通过实施本发明实施例能够在不对系统文件进行备份的前提下,解决设备异常掉电后的数据修复问题,使得设备重新上电后能够正常开机启动,节约设备的存储空间。
技术领域
本发明涉及计算机技术领域,尤其涉及一种异常掉电后的数据修复方法及装置。
背景技术
对于目前消费电子产品中,经常将SPI NAND FLASH作为存储介质;基于SPI NANDFLASH的存储介质的嵌入式系统,所应用的文件系统,基本上都会有垃圾回收的设计,而且这个垃圾回收的是一个后台执行的线程,只要后台空闲,或可用的数据块比较少时,垃圾回收的线程就会执行,对SPINAND上的数据进行搬移的操作,此时若出现异常断点,而消费的电品产品中,总会有碰到有异常断电的可能,如果刚好这些文件在系统执行垃圾回收过程中搬移数据写到另一个块上时,此时断电了,那么此页就会可能因数据没有写完整,比如OOB的ECC数据没有写下去,那么此页就会出现ECC出错的问题,导致文件损坏,这样在重新上电时,会读取到损坏的文件而导致异常,无法正常启动。
为解决上述问题,现有技术采用文件备份的方式对异常掉电时所损坏的数据进行修复,具体做法为:将所有文件都进行备份当异常掉电后,重新上电时,系统在扫描文件的过程中若发现有文件数据损坏,则将对应备份的文件复制到损坏的文件上,再重新读取文件;但采用这一方法需要占用多一倍的存储空间,很容易造成设备存储空间不足的问题。
发明内容
本发明实施例提供一种异常掉电的数据修复方法及装置,能够在不进行数据备份的前提下,在异常掉电后进行数据修复使设备正常运行。
本发明一实施例提供了一种异常掉电后的数据修复方法,适用于设置有SPI NANDFLASH的设备,其特征在于,包括:
在设备重新上电时,对分区上的所有块进行扫描,获取分区内的所有数据块;
对所有所述数据块内的数据页进行读取,并将读取失败的数据页进行删除。
进一步的,所述对分区上的所有块进行扫描,获取分区内的所有数据块,具体包括:
扫描一所述块,从所扫描的块的初始数据页开始读取数据页中的OOB数据;
在读取成功时,根据所读取的OOB数据判断所扫描的块是否为数据块;若是,则将所扫描的块标识为数据块;
在读取失败时,判断当前所读取的数据页是否为所扫描的块中的最后一页,若是,则将所扫描的块进行擦除;若否,则对当前所读取的数据页的下一数据页的OOB数据进行读取;
在扫描完所述分区内的所有块后,获取所述分区内的所有数据块。
进一步的,对所有所述数据块内的数据页进行读取,并将读取失败的数据页进行删除,具体包括:
从一所述数据块内的最后一数据页开始读取数据块内的数据页;
在当前的数据页读取成功时,判断当前数据块内的所有数据页是否读取完毕;若是,则读取下一个数据块,若否,则对当前所读取的数据页的上一数据页进行读取;
在当前的数据页读取失败时,将当前所读取的数据页删除后,对当前所读取的数据页的上一数据页进行读取;
在将所有所述数据块的数据页读取完毕时,完成所述设备的数据修复。
进一步的,还包括:若根据所读取的OOB数据判断所扫描的块不为数据块,则继续判读所扫描的块是否为坏块,若是,则将所扫描的块标识为坏块,若否则判定所扫描的块为空块并将所扫描的块标识为空块。
在上述方法项实施例的基础上,本发明对应提供了装置项实施例;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于广州安凯微电子股份有限公司,未经广州安凯微电子股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110333293.5/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种耐高温行程开关
- 下一篇:一种可抑制火势蔓延的建筑外墙保温板
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置