[发明专利]用户数据搬移的恢复方法、装置、电子设备及存储介质有效
申请号: | 201910708171.2 | 申请日: | 2019-08-01 |
公开(公告)号: | CN112306375B | 公开(公告)日: | 2023-03-14 |
发明(设计)人: | 吴春晓 | 申请(专利权)人: | 兆易创新科技集团股份有限公司 |
主分类号: | G06F3/06 | 分类号: | G06F3/06;G06F11/14 |
代理公司: | 北京品源专利代理有限公司 11332 | 代理人: | 孟金喆 |
地址: | 100094 北京市海淀*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 用户 数据 搬移 恢复 方法 装置 电子设备 存储 介质 | ||
本发明实施例公开了一种用户数据搬移的恢复方法、装置、电子设备及存储介质。该方法包括:确定数据搬移的目标存储块和源存储块;读取所述目标存储块中最后一个有效数据存储页中的有效数据;若读取错误,则根据该有效数据对应的物理地址从源存储块中获取源数据,并将所述源数据写入目标存储块中所述最后一个有效数据存储页的下一存储页;根据写入结果继续用户数据搬移。本发明实施例的方案实现了缩短GC复建时间。
技术领域
本发明实施例涉及数据存储技术,尤其涉及一种用户数据搬移的恢复方法、装置、电子设备及存储介质。
背景技术
EMMC(Embedded Multi Media Card,嵌入式多媒体卡)是MMC协会订立的,主要针对手机或者平板电脑等产品的内嵌式存储器标准规格,带有MMC多媒体接口、快闪存储器(例如NAND flash)以及EMMC控制器。越来越多的移动设备采用EMMC芯片作为存储单元。
EMMC中用户数据存储块用于存放用户数据,例如设定当可使用的用户数据存储块只剩全部的用户数据存储块约10%,需要启动数据搬移(Garbage collection,GC)。GC主要是将用户数据存储块中的有效数据进行搬移后,擦除该有效数据及其他无效数据,并回收该用户数据存储块以供再次使用,从而提高EMMC对NAND Flash存储块的使用效率。当GC尚未完成,发生断电,再次上电时需要复建GC断电前最新的系统数据和用户数据,保证存储设备能够在上次系统最新状态基础上继续运行,不丢失系统数据和用户数据。
现有的GC复建过程通常会进行大量的擦写操作,导致GC复建时间较长。
发明内容
本发明提供一种用户数据搬移的恢复方法、装置、电子设备及存储介质,以实现缩短GC复建时间。
第一方面,本发明实施例提供了一种用户数据搬移的恢复方法,包括:
确定数据搬移的目标存储块和源存储块;
读取所述目标存储块中最后一个有效数据存储页中的有效数据;
若读取错误,则根据该有效数据对应的物理地址从源存储块中获取源数据,并将所述源数据写入目标存储块中所述最后一个有效数据存储页的下一存储页;
根据写入结果继续用户数据搬移。
可选的,根据写入结果继续用户数据搬移,包括:
若写入失败,则从自由存储块链表中获取一自由存储块作为新目标存储块;
将当前的目标存储块中的所有有效数据搬移至所述新目标存储块。
可选的,将当前的目标存储块中的所有有效数据搬移至所述新目标存储块之后,还包括:
更新所述自由存储块链表。
可选的,确定数据搬移的目标存储块和源存储块包括:
获取自由存储块链表,其中,所述自由存储块链表存储有每一自由存储块的类型、有效数据量以及逻辑地址,且数据搬移的目标存储块由所述自由存储块链表中存储的自由存储块中选取,以及数据搬移的源存储块在搬移完成后回收到所述自由存储块链表;
查找所述自由存储块链表,确定是否存在写入数据的用户数据存储块和缓存存储块;所述目标存储块为缓存存储块,所述源存储块为用户数据存储块;
若所述自由存储块链表中仅存在缓存存储块,则将所述缓存存储块对应的逻辑地址与用户存储块信息表中有效数据量最少的用户数据存储块对应的逻辑地址进行比对;
若存在相同的逻辑地址,则确定所述用户数据存储块为数据搬移的源存储块,所述缓存存储块为数据搬移的目标存储块。
可选的,该方法还包括:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于兆易创新科技集团股份有限公司,未经兆易创新科技集团股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910708171.2/2.html,转载请声明来源钻瓜专利网。
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置