WO2016054899A1 - 闪存文件的数据恢复方法、装置和计算机存储介质 - Google Patents

闪存文件的数据恢复方法、装置和计算机存储介质 Download PDF

Info

Publication number
WO2016054899A1
WO2016054899A1 PCT/CN2015/075805 CN2015075805W WO2016054899A1 WO 2016054899 A1 WO2016054899 A1 WO 2016054899A1 CN 2015075805 W CN2015075805 W CN 2015075805W WO 2016054899 A1 WO2016054899 A1 WO 2016054899A1
Authority
WO
WIPO (PCT)
Prior art keywords
file
black tree
red
data
version number
Prior art date
Application number
PCT/CN2015/075805
Other languages
English (en)
French (fr)
Inventor
么爱利
Original Assignee
中兴通讯股份有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 中兴通讯股份有限公司 filed Critical 中兴通讯股份有限公司
Publication of WO2016054899A1 publication Critical patent/WO2016054899A1/zh

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor

Definitions

  • Flash Flash combines the advantages of Read Only Memory (ROM) and Random Access Memory (RAM), not only with Electronically Erasable Programmable (EEPROM) performance, but also with non-volatile randomness.
  • ROM Read Only Memory
  • RAM Random Access Memory
  • EEPROM Electronically Erasable Programmable
  • NVRAM Non-Volatile Random Access Memory
  • Flash has completely replaced the position of ROM/EPROM in embedded systems, and is used as a bootloader before the booting of the storage system (Bootloader). ), operating system and program code; or, directly when a hard disk such as a solid state drive (SSD) is used.
  • SSD solid state drive
  • embodiments of the present invention are expected to provide a data recovery method and apparatus for a flash file, and a computer storage medium capable of performing file data recovery for a JFFS2-based flash memory.
  • FIG. 1 is a schematic flowchart of an implementation process of a flash file data recovery method according to an embodiment of the present invention
  • Step 103 Determine a maximum version number of the file according to a kernel descriptor corresponding to the file and a temporary red-black tree.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

本发明实施例公开了一种闪存文件的数据恢复方法,包括:扫描闪存存储区域,为文件数据节点创建对应的数据节点描述符,为文件创建对应的内核描述符,所述文件数据节点包括已被标记为无效节点的数据节点,所述文件包括已被标记为删除文件的文件;根据数据节点描述符,为文件建立对应的临时红黑树,所述临时红黑树中包含文件的已被标记为无效节点在内的全部数据节点所对应的数据节点描述符;根据文件对应的内核描述符和临时红黑树,确定文件的最大版本号;当文件的最大版本号为N时,遍历所述文件对应的临时红黑树,建立所述文件的N个版本所对应的N个文件红黑树;其中,N为正整数。还公开了一种闪存文件的数据恢复装置及计算机存储介质。

Description

闪存文件的数据恢复方法、装置和计算机存储介质 技术领域
本发明涉及存储技术领域,尤其涉及一种闪存文件的数据恢复方法、装置和计算机存储介质。
背景技术
闪存(Flash)结合了只读存储器(Read Only Memory,ROM)和随机存储器(Ramdom Access Memory,RAM)的长处,不仅具备电子可擦除可编程(EEPROM)的性能,还具有非易失性随机访问存储器(Non-Volatile Random Access Memory,NVRAM)的优势--可以快速读取数据,使数据不会因为断电而丢失。在过去的20年里,嵌入式系统一直使用ROM/EPROM作为它们的存储设备,然而,近年来Flash全面代替了ROM/EPROM在嵌入式系统中的地位,用作存储系统启动前引导程序(Bootloader)、操作系统和程序代码;或者,直接当硬盘如固体硬盘(SSD)使用。通常,Flash上存储有很多重要数据,一旦损坏或丢失都将造成严重后果。
存储技术发展多年,针对传统的机械硬盘即采用磁性介质的硬盘已有较为成熟的文件数据恢复技术,但目前还没有针对Flash具体可行的数据恢复方案。当前,许多闪存都采用第2版闪存日志型文件系统(Journalling Flash File System Version 2,JFFS2)将各种信息以文件的形式进行管理和存储。在JFFS2中,对于删除或者修改文件的指令,JFFS2并不实际删除或修改原有的文件数据,而是通过写入新的文件数据节点来实现,这就为针对闪存文件的数据恢复提供了可能。
发明内容
为解决现有存在的技术问题,本发明实施例期望提供一种闪存文件的数据恢复方法、装置和计算机存储介质,能够针对基于JFFS2的闪存进行文件的数据恢复。
本发明实施例的技术方案是这样实现的:
本发明实施例提供一种闪存文件的数据恢复方法,该方法包括:
扫描闪存存储区域,为文件数据节点创建对应的数据节点描述符,为文件创建对应的内核描述符,所述文件数据节点包括已被标记为无效节点的数据节点,所述文件包括已被标记为删除文件的文件;
根据数据节点描述符,为文件建立对应的临时红黑树,所述临时红黑树中包含文件的已被标记为无效节点在内的全部数据节点所对应的数据节点描述符;
根据文件对应的内核描述符和临时红黑树,确定文件的最大版本号;
当文件的最大版本号为N时,遍历所述文件对应的临时红黑树,建立所述文件的N个版本所对应的N个文件红黑树;其中,N为正整数。
上述方案中,在对文件数据节点创建对应的数据节点描述符之前,所述方法还包括:
对文件数据节点进行循环冗余校验。
上述方案中,,所述遍历所述文件对应的临时红黑树,建立所述文件的N个版本所对应的N个文件红黑树为:
按照版本号的降序或升序,建立所述文件的N个文件红黑树。
上述方案中,当为所述文件建立版本号n对应的文件红黑树时,所述方法包括:
遍历所述临时红黑树;
将所述临时红黑树中所有版本号小于或等于n的节点加入版本号n对 应的文件红黑树中;
其中,1≤n≤N,n为正整数。
上述方案中,当已建立文件的不同版本对应的文件红黑树时,所述方法还包括:
建立不同的结构体,以描述不同的文件版本,所述结构体中包括文件的版本号和指向所述版本号对应的文件红黑树的根节点指针。
本发明实施例还提供一种闪存文件的数据恢复装置,该装置包括:扫描模块、临时红黑树建立模块、版本号确定模块和文件红黑树建立模块;其中,
扫描模块,配置为扫描闪存存储区域,为文件数据节点创建对应的数据节点描述符,为文件创建对应的内核描述符,所述文件数据节点包括已被标记为无效节点的数据节点,所述文件包括已被标记为删除文件的文件;
临时红黑树建立模块,配置为根据数据节点描述符,为文件建立对应的临时红黑树,所述临时红黑树中包含文件的已被标记为无效节点在内的全部数据节点所对应的数据节点描述符;
版本号确定模块,配置为根据文件对应的内核描述符和临时红黑树,确定文件的最大版本号;
文件红黑树建立模块,配置为当文件的最大版本号为N时,遍历所述文件对应的临时红黑树,建立所述文件的N个版本所对应的N个文件红黑树;其中,N为正整数。
上述方案中,所述扫描模块包括:
校验子模块,配置为在对文件数据节点创建对应的数据节点描述符之前,对文件数据节点进行循环冗余校验。
上述方案中,所述文件红黑树建立模块包括:
排序子模块,配置为按照版本号的降序或升序,建立所述文件的N个 文件红黑树。
上述方案中,所述文件红黑树建立模块包括:
遍历子模块,配置为遍历所述临时红黑树;
文件红黑树建立子模块,配置为将所述临时红黑树中所有版本号小于或等于n的节点加入版本号n对应的文件红黑树中;
其中,1≤n≤N,n为正整数。
上述方案中,所述装置还包括:
结构体建立模块,配置为当已建立文件的不同版本对应的文件红黑树时,建立不同的结构体,以描述不同的文件版本,所述结构体中包括文件的版本号和指向所述版本号对应的文件红黑树的根节点指针。
本发明实施例还提供一种计算机存储介质,所述计算机存储介质中存储有计算机可执行指令,所述计算机可执行指令用于执行前述的闪存文件的数据恢复方法。
本发明实施例所提供的闪存文件的数据恢复方法、装置和计算机存储介质,针对基于JFFS2的闪存,利用JFFS2中的内存描述符和红黑树机制,通过为文件建立所有版本号对应的文件红黑树,在脏块回收破坏数据前,能恢复全部删除数据或者历史数据;即使有部分数据被破坏未通过校验,其余通过校验的部分删除数据或者历史数据也可以被恢复。
附图说明
图1为本发明实施例提供的闪存文件数据恢复方法的实现流程示意图;
图2为本发明实施例提供的闪存文件数据恢复装置的组成结构示意图。
具体实施方式
为了更清楚地说明本发明实施例和技术方案,下面将结合附图及实施例对本发明的技术方案进行更详细的说明,显然,所描述的实施例是本发 明的一部分实施例,而不是全部实施例。基本发明的实施例,本领域普通技术人员在不付出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
在本发明实施例中,闪存采用JFFS2管理所存储的信息。JFFS2是一个日志结构(log-structured)的文件系统,包含数据和原数据(meta-data)的节点在闪存上顺序的存储。JFFS2之所以选择日志结构的存储方式,是因为闪存的擦写块的擦写次数有限,因此,对闪存的更新应该是out-of-place的更新方式,即对文件数据的更新不在原存储区域,而是开辟新的存储区域存储更新后的数据,并以版本号来标识,以实现擦写块的磨损平衡(wear leveling)。
操作系统内核扫描闪存时,将为闪存中每个文件建立多个描述符,用以表述文件,其中最关键的是索引节点。索引节点可涵盖多种文件系统,只描述所有文件系统共有的普通信息。为了更具体的表述文件,索引节点中包含有一个指针(u域),指向具体文件系统的用以描述文件的结构体,对于JFFS2,u域指向结构体jffs2_inode_info。在现有的JFFS2中,一个文件对应一个结构体jffs2_inode_info,在结构体jffs2_inode_info中,包含对应文件的最高版本号、指向文件红黑树根结点的指针和指向jffs2_inode_cache的指针等信息。jffs2_inode_cache是系统内核为表述对应文件而建立的内核描述符,包含有对应文件的标识号(ino)、硬链接(hard link)数、指向jffs2_raw_node_ref链表的头指针(nodes)等信息。jffs2_raw_node_ref是系统内核为表述文件的数据节点而建立的内核描述符,以下简称数据节点描述符;文件的一个数据节点对应唯一的数据节点描述符。一个文件的所有数据节点描述符组成一个以nodes为头指针的双向链表,该双向链表中数据节点描述符的存储顺序由系统内核扫描闪存的顺序决定。此外,系统内核为每个文件建立一个对应的临时红黑树,此临时 红黑树中包含一个文件所有的数据节点描述符,且按照数据节点的版本号的降序/升序排列。通常,系统内核通过宏ref_obselete可判断一个数据节点是否为有效的数据节点,通过宏jffs2_first_valid_node可得到文件的数据节点描述符双向链表中第一个有效的数据节点的指针,从而JFFS2可将当前有效的数据节点所对应的数据节点描述符按照该数据节点在闪存中偏移的由小到大组成文件红黑树,该文件红黑树的根节点地址存储于文件对应的结构体jffs2_inode_info中。系统内核通过遍历jffs2_inode_info中所指向的文件红黑树,即可获取当前有效的文件数据。当jffs2_inode_cache中硬链接数为0时,表示该jffs2_inode_cache所对应的文件为删除文件,因此现有的JFFS2中不会为该文件建立对应的文件红黑树,即jffs2_inode_info中对应的指针为空。通过jffs2_raw_node_ref,系统内核可获取到对应的文件数据节点,从而获取该数据节点的版本号。当文件被修改时,JFFS2并不修改原有数据节点,而是在闪存上重新建立新的数据节点,将更新的数据写入,新建立的数据节点的版本号为:原数据节点版本号+1;因此,版本号越大表明该数据节点越新。当文件被删除时,JFFS2并不删除原有数据节点,而是写入一个与原硬链接对应的数据节点同名的数据节点,该数据节点类型设为无效,该数据节点的版本号在原数据节点版本号的基础上加1,将原来的硬链接节点设置为无效。
图1为本发明实施例提供的闪存文件的数据恢复方法的实现流程示意图,如图1所示,该方法包括:
步骤101,扫描闪存存储区域,为文件数据节点创建对应的数据节点描述符,为文件创建对应的内核描述符,所述文件数据节点包括已被标记为无效节点的数据节点,所述文件包括已被标记为删除文件的文件;
具体的,系统内核为文件数据节点创建对应的数据节点描述符jffs2_raw_node_ref,为文件创建对应的内核描述符jffs2_inode_cache,过程 与前述现有JFFS2的处理方法相同。
在一个实施例中,在对文件数据节点创建对应的数据节点描述符之前,本步骤中还包括:对文件数据节点进行循环冗余校验(CRC)。
具体的,JFFS2中,文件数据节点中都包含CRC字段,只有CRC校验有效的数据节点中的数据才是可能有恢复价值的数据,若某个文件数据节点不能通过CRC校验,则表明该文件数据节点中的数据已被破坏或污染,不再有进行恢复的价值。
步骤102,根据数据节点描述符为文件建立对应的临时红黑树,所述临时红黑树中包含文件的已被标记为无效节点在内的全部数据节点所对应的数据节点描述符。
具体的过程与前述现有JFFS2的处理方法相同。
步骤103,根据文件对应的内核描述符和临时红黑树,确定文件的最大版本号。
具体的,文件的内核描述符jffs2_inode_cache中包含有对应文件的标识号;由文件的标识号可获取文件的临时红黑树,临时红黑树的节点本身是按照节点对应的数据节点的版本号的降序/升序存储,因此只要获取临时红黑树的头节点或尾节点所对应数据节点的版本号即此临时红黑树对应的文件的最大版本号。例如:文件的标识号为A,临时红黑树节点对应的数据节点的最大版本号N为3,则文件A的最大版本号为3。
步骤104,当文件的最大版本号为N时,遍历所述文件对应的临时红黑树,建立所述文件的N个版本所对应的N个文件红黑树;其中,N为正整数。
在一个实施例中,本步骤中遍历所述文件对应的临时红黑树,建立所述文件的N个版本所对应的N个文件红黑树,可以是:
按照版本号的降序或升序,建立所述文件的N个文件红黑树。
具体的,当为所述文件建立版本号n对应的文件红黑树时,本步骤包括:
遍历所述临时红黑树;
将所述临时红黑树中所有版本号小于或等于n的节点加入版本号n对应的文件红黑树中;
其中,1≤n≤N,n为正整数。
在一个实施例中,文件A的最大版本号为3,即N=3,按照版本号的降序,步骤104具体可包括:
系统内核建立依次建立版本号3、2、1对应的文件红黑树,即遍历所述临时红黑树,将该临时红黑树中所有版本号小于或等于3的节点加入版本号3对应的文件红黑树中;将该临时红黑树中所有版本号小于或等于2的节点加入版本号2对应的文件红黑树中;将该临时红黑树中所有版本号小于或等于1的节点加入版本号1对应的文件红黑树中,具体过程与JFFS2现有建立文件红黑树的机制相同。
在一个实施例中,当已建立文件的不同版本对应的文件红黑树时,步骤104中还可包括:
建立不同的结构体,以描述不同的文件版本,所述结构体中包括文件的版本号和指向所述版本号对应的文件红黑树的根节点指针。
具体的,将文件的不同版本都视为新的文件,为所述新的文件建立对应的索引节点,并将该索引节点的U域指向一个新的结构体jffs2_inode_info,因此,每个jffs2_inode_info对应一个版本的文件,即在现有的JFFS2中对同一个文件的内核描述符jffs2_inode_cache对应不止一个结构体jffs2_inode_info,每个结构体jffs2_inode_info表述一个版本号的文件数据。
使用上述实施例提供的闪存文件的数据恢复方法,针对基于JFFS2的 闪存,利用JFFS2原有的内存描述符和红黑树机制,通过为文件建立所有版本号对应的文件红黑树,在脏块回收破坏数据前,可恢复全部删除数据或者历史数据;即使在部分数据被破坏后,也可恢复部分删除数据或者历史数据。
本发明实施例还提供了一种计算机存储介质,所述计算机存储介质中存储有计算机可执行指令,所述计算机可执行指令用于执行前述的闪存文件的数据恢复方法。
图2是本发明实施例提供的闪存文件的数据恢复装置的组成结构示意图,如图2所示,该数据恢复装置包括:扫描模块21、临时红黑树建立模块22、版本号确定模块23和文件红黑树建立模块24;其中,
扫描模块21,配置为扫描闪存存储区域,为文件数据节点创建对应的数据节点描述符,为文件创建对应的内核描述符,所述文件数据节点包括已被标记为无效节点的数据节点,所述文件包括已被标记为删除文件的文件;
临时红黑树建立模块22,配置为根据数据节点描述符,为文件建立对应的临时红黑树,所述临时红黑树中包含文件的已被标记为无效节点在内的全部数据节点所对应的数据节点描述符;
版本号确定模块23,配置为根据文件对应的内核描述符和临时红黑树,确定文件的最大版本号;
文件红黑树建立模块24,配置为当文件的最大版本号为N时,遍历所述文件对应的临时红黑树,建立所述文件的N个版本所对应的N个文件红黑树;其中,N为正整数。。
较佳的,在上述数据恢复装置中,扫描模块21包括:
校验子模块,配置为在对文件数据节点创建对应的数据节点描述符之前,对文件数据节点进行循环冗余校验。
在一个实施例中,在上述数据恢复装置中,文件红黑树建立模块24包括:
排序子模块,配置为按照版本号的降序或升序,建立所述文件的N个文件红黑树。
较佳的,在上述数据恢复装置中,文件红黑树建立模块24包括:
遍历子模块,配置为遍历所述临时红黑树;
文件红黑树建立子模块,配置为将所述临时红黑树中所有版本号小于或等于n的节点加入版本号n对应的文件红黑树中;
其中,1≤n≤N,n为正整数。
在一个实施例中,在上述数据恢复装置还可包括:
结构体建立模块,配置为当已建立文件的不同版本对应的文件红黑树时,建立不同的结构体,以描述不同的文件版本,所述结构体中包括文件的版本号和指向所述版本号对应的文件红黑树的根节点指针。
上述各个模块及各个子模块在实际应用中,均可由位于数据恢复装置的中央处理器(CPU)、微处理器(MPU)、数字信号处理器(DSP)、或现场可编程门阵列(FPGA)实现。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用硬件实施例、软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、 嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。
工业实用性
本发明实施例中,针对基于JFFS2的闪存,利用JFFS2中的内存描述符和红黑树机制,通过为文件建立所有版本号对应的文件红黑树,在脏块回收破坏数据前,能恢复全部删除数据或者历史数据;即使有部分数据被破坏未通过校验,其余通过校验的部分删除数据或者历史数据也可以被恢复。

Claims (11)

  1. 一种闪存文件的数据恢复方法,所述方法包括:
    扫描闪存存储区域,为文件数据节点创建对应的数据节点描述符,为文件创建对应的内核描述符,所述文件数据节点包括已被标记为无效节点的数据节点,所述文件包括已被标记为删除文件的文件;
    根据数据节点描述符,为文件建立对应的临时红黑树,所述临时红黑树中包含文件的已被标记为无效节点在内的全部数据节点所对应的数据节点描述符;
    根据文件对应的内核描述符和临时红黑树,确定文件的最大版本号;
    当文件的最大版本号为N时,遍历所述文件对应的临时红黑树,建立所述文件的N个版本所对应的N个文件红黑树;其中,N为正整数。
  2. 根据权利要求1所述的数据恢复方法,其中,在对文件数据节点创建对应的数据节点描述符之前,所述方法还包括:
    对文件数据节点进行循环冗余校验。
  3. 根据权利要求1所述的数据恢复方法,其中,所述遍历所述文件对应的临时红黑树,建立所述文件的N个版本所对应的N个文件红黑树为:
    按照版本号的降序或升序,建立所述文件的N个文件红黑树。
  4. 根据权利要求1所述的数据恢复方法,其中,当为所述文件建立版本号n对应的文件红黑树时,所述方法包括:
    遍历所述临时红黑树;
    将所述临时红黑树中所有版本号小于或等于n的节点加入版本号n对应的文件红黑树中;
    其中,1≤n≤N,n为正整数。
  5. 根据权利要求1所述的数据恢复方法,其中,当已建立文件的不同 版本对应的文件红黑树时,所述方法还包括:
    建立不同的结构体,以描述不同的文件版本,所述结构体中包括文件的版本号和指向所述版本号对应的文件红黑树的根节点指针。
  6. 一种闪存文件的数据恢复装置,所述装置包括:扫描模块、临时红黑树建立模块、版本号确定模块和文件红黑树建立模块;其中,
    扫描模块,配置为扫描闪存存储区域,为文件数据节点创建对应的数据节点描述符,为文件创建对应的内核描述符,所述文件数据节点包括已被标记为无效节点的数据节点,所述文件包括已被标记为删除文件的文件;
    临时红黑树建立模块,配置为根据数据节点描述符,为文件建立对应的临时红黑树,所述临时红黑树中包含文件的已被标记为无效节点在内的全部数据节点所对应的数据节点描述符;
    版本号确定模块,配置为根据文件对应的内核描述符和临时红黑树,确定文件的最大版本号;
    文件红黑树建立模块,配置为当文件的最大版本号为N时,遍历所述文件对应的临时红黑树,建立所述文件的N个版本所对应的N个文件红黑树;其中,N为正整数。
  7. 根据权利要求6所述的数据恢复装置,其中,所述扫描模块包括:
    校验子模块,配置为在对文件数据节点创建对应的数据节点描述符之前,对文件数据节点进行循环冗余校验。
  8. 根据权利要求6所述的数据恢复装置,其中,所述文件红黑树建立模块包括:
    排序子模块,配置为按照版本号的降序或升序,建立所述文件的N个文件红黑树。
  9. 根据权利要求6所述的数据恢复装置,其中,所述文件红黑树建立模块包括:
    遍历子模块,配置为遍历所述临时红黑树;
    文件红黑树建立子模块,配置为将所述临时红黑树中所有版本号小于或等于n的节点加入版本号n对应的文件红黑树中;
    其中,1≤n≤N,n为正整数。
  10. 根据权利要求6所述的数据恢复装置,其中,所述装置还包括:
    结构体建立模块,配置为当已建立文件的不同版本对应的文件红黑树时,建立不同的结构体,以描述不同的文件版本,所述结构体中包括文件的版本号和指向所述版本号对应的文件红黑树的根节点指针。
  11. 一种计算机存储介质,所述计算机存储介质中存储有计算机可执行指令,所述计算机可执行指令用于执行权利要求1至5任一项所述的方法。
PCT/CN2015/075805 2014-10-10 2015-04-02 闪存文件的数据恢复方法、装置和计算机存储介质 WO2016054899A1 (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201410530972.1A CN105487939A (zh) 2014-10-10 2014-10-10 一种闪存文件的数据恢复方法和装置
CN201410530972.1 2014-10-10

Publications (1)

Publication Number Publication Date
WO2016054899A1 true WO2016054899A1 (zh) 2016-04-14

Family

ID=55652535

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2015/075805 WO2016054899A1 (zh) 2014-10-10 2015-04-02 闪存文件的数据恢复方法、装置和计算机存储介质

Country Status (2)

Country Link
CN (1) CN105487939A (zh)
WO (1) WO2016054899A1 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112000482A (zh) * 2020-08-25 2020-11-27 北京金山云网络技术有限公司 一种内存管理的方法、装置、电子设备及存储介质
CN112948528A (zh) * 2021-03-02 2021-06-11 北京秒针人工智能科技有限公司 一种基于关键词的数据归类方法及系统

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107678892B (zh) * 2017-11-07 2021-05-04 黄淮学院 基于跳跃恢复链的连续数据保护方法
CN108196980B (zh) * 2017-12-28 2022-04-12 深圳市得一微电子有限责任公司 误删除数据恢复方法、闪存设备及计算机可读存储介质
CN111143130B (zh) * 2019-12-25 2021-05-25 腾讯科技(深圳)有限公司 数据恢复方法、装置、计算机可读存储介质和计算机设备

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101127034A (zh) * 2006-08-18 2008-02-20 国际商业机器公司 面向变化的电子表格应用
CN101162469A (zh) * 2007-11-09 2008-04-16 清华大学 基于快照的细粒度文件与目录版本管理方法
CN103870364A (zh) * 2014-03-31 2014-06-18 北京工业大学 一种基于时间戳的yaffs2文件最终版恢复方法

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8452929B2 (en) * 2005-04-21 2013-05-28 Violin Memory Inc. Method and system for storage of data in non-volatile media
CN101477482B (zh) * 2008-10-14 2011-01-19 深圳市共进电子有限公司 一种嵌入式Linux系统中的断电时恢复闪存数据的方法
WO2011023134A1 (en) * 2009-08-28 2011-03-03 Beijing Innovation Works Technology Company Limited Method and system for managing distributed storage system through virtual file system
US8706701B1 (en) * 2010-11-18 2014-04-22 Emc Corporation Scalable cloud file system with efficient integrity checks
CN102289524B (zh) * 2011-09-26 2013-01-30 深圳市万兴软件有限公司 一种数据恢复方法及系统

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101127034A (zh) * 2006-08-18 2008-02-20 国际商业机器公司 面向变化的电子表格应用
CN101162469A (zh) * 2007-11-09 2008-04-16 清华大学 基于快照的细粒度文件与目录版本管理方法
CN103870364A (zh) * 2014-03-31 2014-06-18 北京工业大学 一种基于时间戳的yaffs2文件最终版恢复方法

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112000482A (zh) * 2020-08-25 2020-11-27 北京金山云网络技术有限公司 一种内存管理的方法、装置、电子设备及存储介质
CN112000482B (zh) * 2020-08-25 2024-03-05 北京金山云网络技术有限公司 一种内存管理的方法、装置、电子设备及存储介质
CN112948528A (zh) * 2021-03-02 2021-06-11 北京秒针人工智能科技有限公司 一种基于关键词的数据归类方法及系统

Also Published As

Publication number Publication date
CN105487939A (zh) 2016-04-13

Similar Documents

Publication Publication Date Title
WO2016054899A1 (zh) 闪存文件的数据恢复方法、装置和计算机存储介质
US10936441B2 (en) Write-ahead style logging in a persistent memory device
KR101035178B1 (ko) 데이터 모델에서 엔티티의 자동 유지관리 및 수리를 위한시스템 및 방법
KR101840996B1 (ko) 파일 시스템에 대한 체크포인트
TWI630494B (zh) 用於原子儲存作業之系統、裝置及方法
TWI659318B (zh) 用於儲存一致性之系統、設備及方法
US10108503B2 (en) Methods and systems for updating a recovery sequence map
US11334521B2 (en) System and method that determines a size of metadata-based system snapshots
JP6854885B2 (ja) 重複排除ストレージ内のイメージを修復するためのシステム及び方法
US10019323B1 (en) Method and system for container data recovery in a storage system
JP2016526720A (ja) クラスタベースの記憶システムにおけるデータスクラビング
JP2007012058A (ja) フラッシュ様媒体におけるトランザクションレコードを格納するファイルシステム
US20200192590A1 (en) Key-value store using journaling with selective data storage format
JP2007012054A (ja) ファイルシステム保全の最適化されたスタートアップ認証
JP2007012056A (ja) データ保全の先送りされた認証を有するファイルシステム
JP2007012060A (ja) 逆階層構造を有するファイルシステム
WO2014117337A1 (zh) 数据更新方法及装置和产品
US11593015B2 (en) Method to enhance the data invulnerability architecture of deduplication systems by optimally doing read-verify and fix of data moved to cloud tier
US8990589B1 (en) System and method for robust full-drive encryption
US11436200B2 (en) Fault tolerant parallel journaling for file systems
WO2019037587A1 (zh) 一种数据恢复方法及装置
US8595271B1 (en) Systems and methods for performing file system checks
CN111143130A (zh) 数据恢复方法、装置、计算机可读存储介质和计算机设备
CN109144766B (zh) 一种数据存储、重构方法和装置、及电子设备
US9946480B2 (en) Disk image deletion with failure resistant data erasure

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 15848509

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 15848509

Country of ref document: EP

Kind code of ref document: A1