用户数据搬移的恢复方法、装置、电子设备及存储介质制造方法及图纸

技术编号:27225049 阅读:46 留言:0更新日期:2021-02-04 11:46
本发明专利技术实施例公开了一种用户数据搬移的恢复方法、装置、电子设备及存储介质。该方法包括:获取自由存储块链表,查找自由存储块链表,确定是否存在写入数据的第一用户数据存储块和第二用户数据存储块;若仅存在第二用户数据存储块,则将第二用户数据存储块对应的逻辑地址与用户数据存储块信息表中有效数据量最多的第三用户数据存储块对应的逻辑地址进行比对;其中,第三用户存储块与第一用户存储块为同种类型的存储块;若存在相同的逻辑地址,则确定第三用户数据存储块为数据搬移的源存储块,第二用户数据存储块为数据搬移的目标存储块,根据源存储块和目标存储块的存储数据恢复数据搬移。本发明专利技术实施例简化了GC复建过程,缩短了复建时间。短了复建时间。短了复建时间。

【技术实现步骤摘要】
用户数据搬移的恢复方法、装置、电子设备及存储介质


[0001]本专利技术实施例涉及数据存储技术,尤其涉及一种用户数据搬移的恢复方法、装置、电子设备及存储介质。

技术介绍

[0002]EMMC(Embedded Multi Media Card,嵌入式多媒体卡)是MMC协会订立的,主要针对手机或者平板电脑等产品的内嵌式存储器标准规格,带有MMC多媒体接口、快闪存储器(例如NAND flash)以及EMMC控制器。越来越多的移动设备采用EMMC芯片作为存储单元。
[0003]EMMC中用户数据存储块用于存放用户数据,例如设定当可使用的用户数据存储块只剩全部的用户数据存储块约10%,需要启动数据搬移(Garbage collection,GC)。GC主要是将用户数据存储块中的有效数据进行搬移后,擦除该有效数据及其他无效数据,并回收该用户数据存储块以供再次使用,从而提高EMMC对NAND Flash存储块的使用效率。当GC尚未完成,发生断电,再次上电时需要复建GC断电前最新的系统数据和用户数据,保证存储设备能够在上次系统最新状态基础上继续运行,不丢失系统数据和用户数据。
[0004]然而现有的GC复建过程需要大量查表以及数据比对,造成GC复建时间较长。

技术实现思路

[0005]本专利技术提供一种用户数据搬移的恢复方法、装置、电子设备及存储介质称,以实现简化GC复建过程,缩短复建时间。
[0006]第一方面,本专利技术实施例提供了一种用户数据搬移的恢复方法,该方法包括:
[0007]获取自由存储块链表,其中,所述自由存储块链表存储有每一自由存储块的类型、有效数据量以及逻辑地址,且数据搬移的目标存储块由所述自由存储块链表中存储的自由存储块中选取,以及数据搬移的源存储块在搬移完成后回收到所述自由存储块链表;
[0008]查找所述自由存储块链表,确定是否存在写入数据的第一用户数据存储块和第二用户数据存储块;其中,所述第一用户数据存储块的存储容量小于所述第二用户数据存储块的存储容量,所述第一用户数据存储块为第一类型用户数据存储块,所述第二用户数据存储块为第二类型用户数据存储块;
[0009]若所述自由存储块链表中仅存在第二用户数据存储块,且所述第二用户数据存储块未被写满,则将所述第二用户数据存储块对应的逻辑地址与用户数据存储块信息表中有效数据量最多的第三用户数据存储块对应的逻辑地址进行比对;其中,所述第三用户数据存储块与所述第一用户数据存储块为同种类型的存储块;
[0010]若存在相同的逻辑地址,则确定所述第三用户数据存储块为数据搬移的源存储块,所述第二用户数据存储块为数据搬移的目标存储块,根据所述源存储块和所述目标存储块的存储数据恢复数据搬移。
[0011]可选的,该方法还包括:
[0012]若所述自由存储块链表中同时存在第一用户数据存储块和第二用户数据存储块,
则将所述第一用户数据存储块中的数据擦除,将所述第二用户数据存储块移至用户数据存储块信息表中,并更新所述自由存储块链表和所述户数据存储块信息表。
[0013]可选的,根据所述源存储块和所述目标存储块的存储数据恢复数据搬移,包括:
[0014]比较所述源存储块与所述目标存储块中的有效数据的逻辑地址,判断数据搬移是否完成;
[0015]若未完成,则继续将所述源存储块中的有效数据搬移至所述目标存储块中。
[0016]可选的,将所述源存储块中的有效数据搬移至所述目标存储块中之后,还包括:
[0017]将所述源存储块移至所述自由存储块链表中,并将所述目标存储块移至用户数据存储块信息表中。
[0018]可选的,查找所述自由存储块链表,确定是否存在写入数据的第一用户数据存储块和第二用户数据存储块,包括:
[0019]由所述自由存储块链表的末尾开始依次检测每一存储块;
[0020]若存储块为写入数据的存储块,则继续检测,直至检测出未被写入数据的存储块;
[0021]查询写入数据的存储块的类型,并根据所述类型确定其是否为第一用户数据存储块和第二用户数据存储块。
[0022]可选的,所述第一类型用户数据存储块为单层存储单元存储块,所述第二类型用户数据存储块为多层存储单元存储块。
[0023]第二方面,本专利技术实施例还提供了一种用户数据搬移的恢复装置,包括:
[0024]信息表获取模块,用于获取自由存储块链表,其中,所述自由存储块链表存储有每一自由存储块的类型、有效数据量以及逻辑地址,且数据搬移的目标存储块由所述自由存储块链表中存储的自由存储块中选取,以及数据搬移的源存储块在搬移完成后回收到所述自由存储块链表;
[0025]查表模块,用于查找所述自由存储块链表,确定是否存在写入数据的第一用户数据存储块和第二用户数据存储块;其中,所述第一用户数据存储块的存储容量小于所述第二用户数据存储块的存储容量,所述第一用户数据存储块为第一类型用户数据存储块,所述第二用户数据存储块为第二类型用户数据存储块;
[0026]逻辑地址比对模块,用于若所述自由存储块链表中仅存在第二用户数据存储块,且所述第二用户数据存储块未被写满,则将所述第二用户数据存储块对应的逻辑地址与用户数据存储块信息表中有效数据量最多的第三用户数据存储块对应的逻辑地址进行比对;其中,所述第三用户存储块与所述第一用户存储块为同种类型的存储块;
[0027]搬移恢复模块,用于若存在相同的逻辑地址,则确定所述第三用户数据存储块为数据搬移的源存储块,所述第二用户数据存储块为数据搬移的目标存储块,根据所述源存储块和所述目标存储块的存储数据恢复数据搬移。
[0028]可选的,该装置还包括:
[0029]数据擦除模块,用于若所述自由存储块链表中同时存在第一用户数据存储块和第二用户数据存储块时,则将所述第一用户数据存储块中的数据擦除;
[0030]存储表更新模块,用于将所述第二用户数据存储块移至用户数据存储块信息表中,并更新所述自由存储块链表和所述户数据存储块信息表。
[0031]第三方面,本专利技术实施例还提供了一种电子设备,包括存储器、处理器及存储在存
储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现本专利技术任意实施例所述的用户数据搬移的恢复方法。
[0032]第四方面,本专利技术实施例还提供了一种包含计算机可执行指令的存储介质,所述计算机可执行指令在由计算机处理器执行时实现本专利技术任意实施例所述的用户数据搬移的恢复方法。
[0033]本专利技术实施例的方案仅需通过查找自由存储块链表,并根据自由存储块链表中查到的写入数据的第二用户数据存储块与用户数据存储块信息表中有效数据量最多的第三用户数据存储块对应的逻辑地址进行比对,当存在相同的逻辑地址时,确定第三用户数据存储块为数据搬移的源存储块,第二用户数据存储块为数据搬移的目标存储块,根据所述源存储块和所述目标存储块的存储数据恢复数据搬移。本实施例的方案数据查找量少,且数据比对量少,实本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种用户数据搬移的恢复方法,其特征在于,包括:获取自由存储块链表,其中,所述自由存储块链表存储有每一自由存储块的类型、有效数据量以及逻辑地址,且数据搬移的目标存储块由所述自由存储块链表中存储的自由存储块中选取,以及数据搬移的源存储块在搬移完成后回收到所述自由存储块链表;查找所述自由存储块链表,确定是否存在写入数据的第一用户数据存储块和第二用户数据存储块;其中,所述第一用户数据存储块的存储容量小于所述第二用户数据存储块的存储容量,所述第一用户数据存储块为第一类型用户数据存储块,所述第二用户数据存储块为第二类型用户数据存储块;若所述自由存储块链表中仅存在第二用户数据存储块,且所述第二用户数据存储块未被写满,则将所述第二用户数据存储块对应的逻辑地址与用户数据存储块信息表中有效数据量最多的第三用户数据存储块对应的逻辑地址进行比对;其中,所述第三用户数据存储块与所述第一用户数据存储块为同种类型的存储块;若存在相同的逻辑地址,则确定所述第三用户数据存储块为数据搬移的源存储块,所述第二用户数据存储块为数据搬移的目标存储块,根据所述源存储块和所述目标存储块的存储数据恢复数据搬移。2.根据权利要求1所述的方法,其特征在于,还包括:若所述自由存储块链表中同时存在第一用户数据存储块和第二用户数据存储块,则将所述第一用户数据存储块中的数据擦除,将所述第二用户数据存储块移至用户数据存储块信息表中,并更新所述自由存储块链表和所述户数据存储块信息表。3.根据权利要求1所述的方法,其特征在于,根据所述源存储块和所述目标存储块的存储数据恢复数据搬移,包括:比较所述源存储块与所述目标存储块中的有效数据的逻辑地址,判断数据搬移是否完成;若未完成,则继续将所述源存储块中的有效数据搬移至所述目标存储块中。4.根据权利要求3所述的方法,其特征在于,将所述源存储块中的有效数据搬移至所述目标存储块中之后,还包括:将所述源存储块移至所述自由存储块链表中,并将所述目标存储块移至用户数据存储块信息表中。5.根据权利要求1所述的方法,其特征在于,查找所述自由存储块链表,确定是否存在写入数据的第一用户数据存储块和第二用户数据存储块,包括:由所述自由存储块链表的末尾开始依次检测每一存储块;若存储块为写入数据的存储块,则继续检测,直至检测出未被写入数据的存储块;查询写入...

【专利技术属性】
技术研发人员:吴春晓
申请(专利权)人:北京兆易创新科技股份有限公司
类型:发明
国别省市:

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

1