CN113626346A - 一种固态硬盘的数据保护方法、装置、设备及介质 - Google Patents
一种固态硬盘的数据保护方法、装置、设备及介质 Download PDFInfo
- Publication number
- CN113626346A CN113626346A CN202110744394.1A CN202110744394A CN113626346A CN 113626346 A CN113626346 A CN 113626346A CN 202110744394 A CN202110744394 A CN 202110744394A CN 113626346 A CN113626346 A CN 113626346A
- Authority
- CN
- China
- Prior art keywords
- data
- moved
- data block
- valid
- solid state
- Prior art date
- Legal status (The legal status 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 status listed.)
- Granted
Links
- 239000007787 solid Substances 0.000 title claims abstract description 70
- 238000000034 method Methods 0.000 title claims abstract description 58
- 230000002159 abnormal effect Effects 0.000 claims description 10
- 238000004590 computer program Methods 0.000 claims description 10
- 238000011084 recovery Methods 0.000 claims description 9
- 230000005856 abnormality Effects 0.000 description 7
- 238000005516 engineering process Methods 0.000 description 7
- 238000010586 diagram Methods 0.000 description 2
- 230000003247 decreasing effect Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/0223—User address space allocation, e.g. contiguous or non contiguous base addressing
- G06F12/023—Free address space management
- G06F12/0238—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
- G06F12/0246—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/0223—User address space allocation, e.g. contiguous or non contiguous base addressing
- G06F12/023—Free address space management
- G06F12/0253—Garbage collection, i.e. reclamation of unreferenced memory
- G06F12/0261—Garbage collection, i.e. reclamation of unreferenced memory using reference counting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/70—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
- G06F21/78—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure storage of data
- G06F21/79—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure storage of data in semiconductor storage media, e.g. directly-addressable memories
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- Storage Device Security (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请公开了一种固态硬盘的数据保护方法、装置、设备及介质,包括:对固态硬盘进行垃圾回收,并在垃圾回收过程中,每将待搬移脏数据块中任一有效数据帧搬移至新空闲数据块,则减少所述待搬移脏数据块对应的有效帧计数;当所述待搬移脏数据块中的有效数据帧全部被搬移至所述新空闲数据块中,则读取所述有效帧计数;判断所述有效帧计数是否为0,若所述有效帧计数不为0,则保持所述待搬移脏数据块中的数据。能够有效的保护没有正常搬移的数据。
Description
技术领域
本申请涉及存储技术领域,特别涉及一种固态硬盘的数据保护方法、装置、设备及介质。
背景技术
SSD(Solid State Drives,即固态硬盘)的垃圾回收相当于固态硬盘的碎片整理,是固态硬盘自身主控芯片的自动处理机制,不依赖于操作系统。由于SSD擦除是以block(数据块)为单位,所以垃圾回收也是以block为单位进行回收的,目前,SSD的垃圾回收过程为,根据SSD的FTL(即Flash Translation Layer,闪存转换层)表,将一个脏block中的所有有效数据帧搬移到一个新的空闲block中,并将脏block擦除重新利用,但是,存在有些数据没有正常搬移但被擦除的情况。
发明内容
有鉴于此,本申请的目的在于提供一种固态硬盘的数据保护方法、装置、设备及介质,能够有效的保护没有正常搬移的数据。其具体方案如下:
第一方面,本申请公开了一种固态硬盘的数据保护方法,包括:
对固态硬盘进行垃圾回收,并在垃圾回收过程中,每将待搬移脏数据块中任一有效数据帧搬移至新空闲数据块,则减少所述待搬移脏数据块对应的有效帧计数;
当所述待搬移脏数据块中的有效数据帧全部被搬移至所述新空闲数据块中,则读取所述有效帧计数;
判断所述有效帧计数是否为0,若所述有效帧计数不为0,则保持所述待搬移脏数据块中的数据。
可选的,所述判断所述有效帧计数是否为0之后,还包括:
若所述有效帧计数为0,则将所述待搬移脏数据块中的数据直接擦除。
可选的,在判定所述有效数据不为0之后,还包括:
生成异常提示信息,并将所述固态硬盘设置为只读模式。
可选的,还包括:
在所述固态硬盘的FTL表中创建每个数据块对应的有效帧计数字段;
相应的,所述更新所述待搬移脏数据块对应的有效帧计数,包括:
更新所述FTL表中所述待搬移脏数据块对应的所述有效帧计数字段中的有效帧计数。
可选的,所述在所述固态硬盘的FTL表中创建每个数据块对应的有效帧计数字段,包括:
在所述固态硬盘的FTL表的块信息表中创建每个数据块对应的有效帧计数字段。
可选的,还包括:
当新的有效数据写入所述待搬移脏数据块时,则增加所述有效帧计数。
可选的,还包括:
当所述待搬移脏数据块中的有效数据帧对应的LBA在其他数据块存在新的写入数据,则将该有效数据帧记为无效数据帧,并减少所述所述待搬移脏数据块的有效数据帧计数。
第二方面,本申请公开了一种固态硬盘的数据保护装置,包括:
垃圾回收模块,用于对固态硬盘进行垃圾回收,并在垃圾回收过程中,每将待搬移脏数据块中任一有效数据帧搬移至新空闲数据块,则减少所述待搬移脏数据块对应的有效帧计数;
有效帧计数读取模块,用于当所述待搬移脏数据块中的有效数据帧全部被搬移至所述新空闲数据块中,则读取所述有效帧计数;
有效帧计数判断模块,用于判断所述有效帧计数是否为0,若所述有效帧计数不为0,则保持所述待搬移脏数据块中的数据。
第三方面,本申请公开了一种电子设备,包括:
存储器,用于保存计算机程序;
处理器,用于执行所述计算机程序,以实现前述的固态硬盘的数据保护方法。
第四方面,本申请公开了一种计算机可读存储介质,用于保存计算机程序,所述计算机程序被处理器执行时实现前述的固态硬盘的数据保护方法。
可见,本申请对固态硬盘进行垃圾回收,并在垃圾回收过程中,每将待搬移脏数据块中任一有效数据帧搬移至新空闲数据块,则减少所述待搬移脏数据块对应的有效帧计数,当所述待搬移脏数据块中的有效数据帧全部被搬移至所述新空闲数据块中,则读取所述有效帧计数,然后判断所述有效帧计数是否为0,若所述有效帧计数不为0,则保持所述待搬移脏数据块中的数据。也即,在固态硬盘进行垃圾回收过程中,本申请添加了有效帧技术检查的步骤,在搬移完脏数据块中的全部有效数据帧时,若有效帧计数不为0,则表示出现异常,可能存在没被正常搬移的数据,此时,保持脏数据块中的数据而不是删除,能够有效的保护没有正常搬移的数据。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本申请公开的一种固态硬盘的数据保护方法流程图;
图2为本申请公开的一种具体的固态硬盘的数据保护方法流程图;
图3为本申请公开的一种固态硬盘的数据保护装置结构示意图;
图4为本申请公开的一种电子设备结构图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
目前,SSD的垃圾回收过程为,根据SSD的FTL表,将一个脏block中的所有有效数据帧搬移到一个新的空闲block中,并将脏block擦除重新利用,但是,存在有些数据没有正常搬移但被擦除的情况。为此,本申请提供了一种固态硬盘的数据保护方案,能够有效的保护没有正常搬移的数据。
参见图1所示,本申请实施例公开了一种固态硬盘的数据保护方法,包括:
步骤S11:对固态硬盘进行垃圾回收,并在垃圾回收过程中,每将待搬移脏数据块中任一有效数据帧搬移至新空闲数据块,则减少所述待搬移脏数据块对应的有效帧计数。
在具体的实施方式中,可以在所述固态硬盘的FTL表中创建每个数据块对应的有效帧计数字段;相应的,所述更新所述待搬移脏数据块对应的有效帧计数,包括:更新所述FTL表中所述待搬移脏数据块对应的所述有效帧计数字段中的有效帧计数。
并且,在一种具体的实施方式中,可以在所述固态硬盘的FTL表的块信息表中创建每个数据块对应的有效帧计数字段。当然,在其他的实施方式中,也可以在FTL表的其他位置创建有效帧计数字段。
需要指出的是,FTL表通常包括有效数据位图表、L2P(即Logical Address toPhysical address,逻辑地址到物理地址))映射表、trim表、坏块表、block info(块信息)表,块信息表中可以根据地质偏移确定对应的数据块,这样,将有效帧计数字段添加至块信息表,可以根据块信息表索引到相应的有效帧技术字段。
在具体的实施方式中,当新的有效数据写入所述待搬移脏数据块时,则增加所述有效帧计数。当所述待搬移脏数据块中的有效数据帧对应的LBA(即Logical BlockAddress,逻辑区块地址)在其他数据块存在新的写入数据,则将该有效数据帧记为无效数据帧,并减少所述所述待搬移脏数据块的有效数据帧计数。
需要指出的是,一个LBA对应的块只能为一个,一个LBA对应的数据写入一个块中,当对该LBA再写入数据,写入其他块时,则之前块的有效数据被无效。
步骤S12:当所述待搬移脏数据块中的有效数据帧全部被搬移至所述新空闲数据块中,则读取所述有效帧计数。
步骤S13:判断所述有效帧计数是否为0,若所述有效帧计数不为0,则保持所述待搬移脏数据块中的数据。
在具体的实施方式中,若所述有效帧计数为0,则将所述待搬移脏数据块中的数据直接擦除。
也即,本申请在FTL实现中,增加数据块中有效数据帧的个数统计字段,每个数据块的信息均会包含该字段,并且随块的实际有效数据帧个数而更新,当写入新的有效数据时,有效帧计数增加,当写入的有效数据帧被无效掉时,有效帧计数减少。在垃圾回收时,当需要被搬移的脏数据块有效数据帧被搬移完成时,会检查有效数据帧计数,若为0,则表示正常,被搬移完的脏数据块可以直接擦除,之后给新写入的数据使用,若不为0,则表示FTL表出现异常,可能有效的数据未被搬移,此脏数据块数据保持。
可见,本申请实施例对固态硬盘进行垃圾回收,并在垃圾回收过程中,每将待搬移脏数据块中任一有效数据帧搬移至新空闲数据块,则减少所述待搬移脏数据块对应的有效帧计数,当所述待搬移脏数据块中的有效数据帧全部被搬移至所述新空闲数据块中,则读取所述有效帧计数,然后判断所述有效帧计数是否为0,若所述有效帧计数不为0,则保持所述待搬移脏数据块中的数据。也即,在固态硬盘进行垃圾回收过程中,本申请添加了有效帧技术检查的步骤,在搬移完脏数据块中的全部有效数据帧时,若有效帧计数不为0,则表示出现异常,可能存在没被正常搬移的数据,此时,保持脏数据块中的数据而不是删除,能够有效的保护没有正常搬移的数据。
参见图2所示,本申请实施例公开了一种固态硬盘的数据保护方法,包括:
步骤S21:对固态硬盘进行垃圾回收,并在垃圾回收过程中,每将待搬移脏数据块中任一有效数据帧搬移至新空闲数据块,则减少所述待搬移脏数据块对应的有效帧计数。
步骤S22:当所述待搬移脏数据块中的有效数据帧全部被搬移至所述新空闲数据块中,则读取所述有效帧计数。
步骤S23:判断所述有效帧计数是否为0,若所述有效帧计数不为0,则保持所述待搬移脏数据块中的数据,生成异常提示信息,并将所述固态硬盘设置为只读模式。
也即,本申请实施例,若所述有效帧计数不为0,可以生成异常提示信息,并将固态硬盘设置为只读模式,将不再响应主机的写请求,只响应主机的读请求,进一步的保护固态硬盘中的数据。
需要指出的是,若所述有效帧计数为0,则表明存在异常,可能是FTL表或者垃圾回收读失败等,生成异常提示信息,以便相关人员进行问题定位。
例如,在具体的实施方式中,在FTL实现中,增加block中有效数据帧的个数统计字段,计为VDFC(即valid data frame count,有效数据帧计数),在block被写入过程中或搬移过程中更新VDFC,并在垃圾回收搬移完有效数据帧时,检查VDFC,VDFC异常时及时将盘置为read-only(只读)状态,从而最大限度保护用户数据,具体实现包括:在FTL表中添加上述VDFC字段,每个block的信息均包含上述VDFC字段,并且随block的实际有效数据帧个数而更新,当写入新的有效数据时,VDFC增加,当写入的有效数据帧被无效掉时,VDFC减少;垃圾回收时,当需要被搬移的脏数据块的有效数据帧被搬移完成时,检查VDFC,若VDFC为0,则表示正常,被搬移完的脏block可以直接擦除,之后给新写入的数据使用,若VDFC不为0,则表示出现异常,可能存在有效的数据未被搬移,此脏数据块数据保持,并告知SSD前端或上层模块此异常,前端模块收到上述异常通知后不再响应主机写请求,把盘置read-only状态,只响应主机读请求,以此保护用户数据。
参见图3所示,本申请实施例公开了一种固态硬盘的数据保护装置,包括:
垃圾回收模块11,用于对固态硬盘进行垃圾回收,并在垃圾回收过程中,每将待搬移脏数据块中任一有效数据帧搬移至新空闲数据块,则减少所述待搬移脏数据块对应的有效帧计数;
有效帧计数读取模块12,用于当所述待搬移脏数据块中的有效数据帧全部被搬移至所述新空闲数据块中,则读取所述有效帧计数;
有效帧计数判断模块13,用于判断所述有效帧计数是否为0,若所述有效帧计数不为0,则保持所述待搬移脏数据块中的数据。
可见,本申请实施例对固态硬盘进行垃圾回收,并在垃圾回收过程中,每将待搬移脏数据块中任一有效数据帧搬移至新空闲数据块,则减少所述待搬移脏数据块对应的有效帧计数,当所述待搬移脏数据块中的有效数据帧全部被搬移至所述新空闲数据块中,则读取所述有效帧计数,然后判断所述有效帧计数是否为0,若所述有效帧计数不为0,则保持所述待搬移脏数据块中的数据。也即,在固态硬盘进行垃圾回收过程中,本申请添加了有效帧技术检查的步骤,在搬移完脏数据块中的全部有效数据帧时,若有效帧计数不为0,则表示出现异常,可能存在没被正常搬移的数据,此时,保持脏数据块中的数据而不是删除,能够有效的保护没有正常搬移的数据。
其中,所述装置还包括数据擦除模块,用于若所述有效帧计数为0,则将所述待搬移脏数据块中的数据直接擦除。
并且,所述装置还包括:
异常提示信息生成模块,用于若所述有效帧计数不为0,生成异常提示信息
读写模式设置模块,用于若所述有效帧计数不为0,将所述固态硬盘设置为只读模式。
进一步的,所述装置还包括:
有效帧计数字段创建模块,用于在所述固态硬盘的FTL表中创建每个数据块对应的有效帧计数字段;
相应的,所述垃圾回收模块11,具体用于更新所述FTL表中所述待搬移脏数据块对应的所述有效帧计数字段中的有效帧计数。
在具体的实施方式中,所述有效帧计数字段创建模块,具体用于在所述固态硬盘的FTL表的块信息表中创建每个数据块对应的有效帧计数字段。
所述装置,还用于:
当新的有效数据写入所述待搬移脏数据块时,则增加所述有效帧计数。
当所述待搬移脏数据块中的有效数据帧对应的LBA在其他数据块存在新的写入数据,则将该有效数据帧记为无效数据帧,并减少所述所述待搬移脏数据块的有效数据帧计数。
参见图4所示,本申请实施例公开了一种电子设备20,包括处理器21和存储器22;其中,所述存储器22,用于保存计算机程序;所述处理器21,用于执行所述计算机程序,以实现以下步骤:
对固态硬盘进行垃圾回收,并在垃圾回收过程中,每将待搬移脏数据块中任一有效数据帧搬移至新空闲数据块,则减少所述待搬移脏数据块对应的有效帧计数;当所述待搬移脏数据块中的有效数据帧全部被搬移至所述新空闲数据块中,则读取所述有效帧计数;判断所述有效帧计数是否为0,若所述有效帧计数不为0,则保持所述待搬移脏数据块中的数据。
可见,本申请实施例对固态硬盘进行垃圾回收,并在垃圾回收过程中,每将待搬移脏数据块中任一有效数据帧搬移至新空闲数据块,则减少所述待搬移脏数据块对应的有效帧计数,当所述待搬移脏数据块中的有效数据帧全部被搬移至所述新空闲数据块中,则读取所述有效帧计数,然后判断所述有效帧计数是否为0,若所述有效帧计数不为0,则保持所述待搬移脏数据块中的数据。也即,在固态硬盘进行垃圾回收过程中,本申请添加了有效帧技术检查的步骤,在搬移完脏数据块中的全部有效数据帧时,若有效帧计数不为0,则表示出现异常,可能存在没被正常搬移的数据,此时,保持脏数据块中的数据而不是删除,能够有效的保护没有正常搬移的数据。
本实施例中,所述处理器21执行所述存储器22中保存的计算机子程序时,可以具体实现以下步骤:若所述有效帧计数为0,则将所述待搬移脏数据块中的数据直接擦除。
本实施例中,所述处理器21执行所述存储器22中保存的计算机子程序时,可以具体实现以下步骤:在判定所述有效数据不为0之后,生成异常提示信息,并将所述固态硬盘设置为只读模式。
本实施例中,所述处理器21执行所述存储器22中保存的计算机子程序时,可以具体实现以下步骤:在所述固态硬盘的FTL表中创建每个数据块对应的有效帧计数字段;更新所述FTL表中所述待搬移脏数据块对应的所述有效帧计数字段中的有效帧计数。
本实施例中,所述处理器21执行所述存储器22中保存的计算机子程序时,可以具体实现以下步骤:在所述固态硬盘的FTL表的块信息表中创建每个数据块对应的有效帧计数字段。
本实施例中,所述处理器21执行所述存储器22中保存的计算机子程序时,可以具体实现以下步骤:当新的有效数据写入所述待搬移脏数据块时,则增加所述有效帧计数。
本实施例中,所述处理器21执行所述存储器22中保存的计算机子程序时,可以具体实现以下步骤:当所述待搬移脏数据块中的有效数据帧对应的LBA在其他数据块存在新的写入数据,则将该有效数据帧记为无效数据帧,并减少所述所述待搬移脏数据块的有效数据帧计数。
进一步的,本申请实施例还公开了一种计算机可读存储介质,用于保存计算机程序,其中,所述计算机程序被处理器执行时实现以下步骤:
对固态硬盘进行垃圾回收,并在垃圾回收过程中,每将待搬移脏数据块中任一有效数据帧搬移至新空闲数据块,则减少所述待搬移脏数据块对应的有效帧计数;当所述待搬移脏数据块中的有效数据帧全部被搬移至所述新空闲数据块中,则读取所述有效帧计数;判断所述有效帧计数是否为0,若所述有效帧计数不为0,则保持所述待搬移脏数据块中的数据。
可见,本申请实施例对固态硬盘进行垃圾回收,并在垃圾回收过程中,每将待搬移脏数据块中任一有效数据帧搬移至新空闲数据块,则减少所述待搬移脏数据块对应的有效帧计数,当所述待搬移脏数据块中的有效数据帧全部被搬移至所述新空闲数据块中,则读取所述有效帧计数,然后判断所述有效帧计数是否为0,若所述有效帧计数不为0,则保持所述待搬移脏数据块中的数据。也即,在固态硬盘进行垃圾回收过程中,本申请添加了有效帧技术检查的步骤,在搬移完脏数据块中的全部有效数据帧时,若有效帧计数不为0,则表示出现异常,可能存在没被正常搬移的数据,此时,保持脏数据块中的数据而不是删除,能够有效的保护没有正常搬移的数据。
本实施例中,所述计算机可读存储介质中保存的计算机子程序被处理器执行时,可以具体实现以下步骤:若所述有效帧计数为0,则将所述待搬移脏数据块中的数据直接擦除。
本实施例中,所述计算机可读存储介质中保存的计算机子程序被处理器执行时,可以具体实现以下步骤:在判定所述有效数据不为0之后,生成异常提示信息,并将所述固态硬盘设置为只读模式。
本实施例中,所述计算机可读存储介质中保存的计算机子程序被处理器执行时,可以具体实现以下步骤:在所述固态硬盘的FTL表中创建每个数据块对应的有效帧计数字段;更新所述FTL表中所述待搬移脏数据块对应的所述有效帧计数字段中的有效帧计数。
本实施例中,所述计算机可读存储介质中保存的计算机子程序被处理器执行时,可以具体实现以下步骤:在所述固态硬盘的FTL表的块信息表中创建每个数据块对应的有效帧计数字段。
本实施例中,所述计算机可读存储介质中保存的计算机子程序被处理器执行时,可以具体实现以下步骤:当新的有效数据写入所述待搬移脏数据块时,则增加所述有效帧计数。
本实施例中,所述计算机可读存储介质中保存的计算机子程序被处理器执行时,可以具体实现以下步骤:当所述待搬移脏数据块中的有效数据帧对应的LBA在其他数据块存在新的写入数据,则将该有效数据帧记为无效数据帧,并减少所述所述待搬移脏数据块的有效数据帧计数。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
以上对本申请所提供的一种固态硬盘的数据保护方法、装置、设备及介质进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。
Claims (10)
1.一种固态硬盘的数据保护方法,其特征在于,包括:
对固态硬盘进行垃圾回收,并在垃圾回收过程中,每将待搬移脏数据块中任一有效数据帧搬移至新空闲数据块,则减少所述待搬移脏数据块对应的有效帧计数;
当所述待搬移脏数据块中的有效数据帧全部被搬移至所述新空闲数据块中,则读取所述有效帧计数;
判断所述有效帧计数是否为0,若所述有效帧计数不为0,则保持所述待搬移脏数据块中的数据。
2.根据权利要求1所述的固态硬盘的数据保护方法,其特征在于,所述判断所述有效帧计数是否为0之后,还包括:
若所述有效帧计数为0,则将所述待搬移脏数据块中的数据直接擦除。
3.根据根据权利要求1所述的固态硬盘的数据保护方法,其特征在于,在判定所述有效数据不为0之后,还包括:
生成异常提示信息,并将所述固态硬盘设置为只读模式。
4.根据权利要求1所述的固态硬盘的数据保护方法,其特征在于,还包括:
在所述固态硬盘的FTL表中创建每个数据块对应的有效帧计数字段;
相应的,所述更新所述待搬移脏数据块对应的有效帧计数,包括:
更新所述FTL表中所述待搬移脏数据块对应的所述有效帧计数字段中的有效帧计数。
5.根据权利要求4中的所述固态硬盘的数据保护方法,其特征在于,所述在所述固态硬盘的FTL表中创建每个数据块对应的有效帧计数字段,包括:
在所述固态硬盘的FTL表的块信息表中创建每个数据块对应的有效帧计数字段。
6.根据权利要求1所述的固态硬盘的数据保护方法,其特征在于,还包括:
当新的有效数据写入所述待搬移脏数据块时,则增加所述有效帧计数。
7.根据权利要求1所述的固态硬盘的数据保护方法,其特征在于,还包括:
当所述待搬移脏数据块中的有效数据帧对应的LBA在其他数据块存在新的写入数据,则将该有效数据帧记为无效数据帧,并减少所述所述待搬移脏数据块的有效数据帧计数。
8.一种固态硬盘的数据保护装置,其特征在于,包括:
垃圾回收模块,用于对固态硬盘进行垃圾回收,并在垃圾回收过程中,每将待搬移脏数据块中任一有效数据帧搬移至新空闲数据块,则减少所述待搬移脏数据块对应的有效帧计数;
有效帧计数读取模块,用于当所述待搬移脏数据块中的有效数据帧全部被搬移至所述新空闲数据块中,则读取所述有效帧计数;
有效帧计数判断模块,用于判断所述有效帧计数是否为0,若所述有效帧计数不为0,则保持所述待搬移脏数据块中的数据。
9.一种电子设备,其特征在于,包括:
存储器,用于保存计算机程序;
处理器,用于执行所述计算机程序,以实现如权利要求1至7任一项所述的固态硬盘的数据保护方法。
10.一种计算机可读存储介质,其特征在于,用于保存计算机程序,所述计算机程序被处理器执行时实现如权利要求1至7任一项所述的固态硬盘的数据保护方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110744394.1A CN113626346B (zh) | 2021-06-30 | 2021-06-30 | 一种固态硬盘的数据保护方法、装置、设备及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110744394.1A CN113626346B (zh) | 2021-06-30 | 2021-06-30 | 一种固态硬盘的数据保护方法、装置、设备及介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113626346A true CN113626346A (zh) | 2021-11-09 |
CN113626346B CN113626346B (zh) | 2023-07-14 |
Family
ID=78378819
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110744394.1A Active CN113626346B (zh) | 2021-06-30 | 2021-06-30 | 一种固态硬盘的数据保护方法、装置、设备及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113626346B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023284379A1 (zh) * | 2021-07-16 | 2023-01-19 | 深圳大普微电子科技有限公司 | 缓存管理方法、固态硬盘控制器及固态硬盘 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150026390A1 (en) * | 2013-07-17 | 2015-01-22 | Lite-On It Corporation | Garbage collection control method for solid state drive |
CN111045956A (zh) * | 2019-12-22 | 2020-04-21 | 北京浪潮数据技术有限公司 | 一种基于多核cpu的固态硬盘垃圾回收方法以及装置 |
CN111090398A (zh) * | 2019-12-13 | 2020-05-01 | 北京浪潮数据技术有限公司 | 固态硬盘的垃圾回收方法、装置、设备及可读存储介质 |
-
2021
- 2021-06-30 CN CN202110744394.1A patent/CN113626346B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150026390A1 (en) * | 2013-07-17 | 2015-01-22 | Lite-On It Corporation | Garbage collection control method for solid state drive |
CN111090398A (zh) * | 2019-12-13 | 2020-05-01 | 北京浪潮数据技术有限公司 | 固态硬盘的垃圾回收方法、装置、设备及可读存储介质 |
CN111045956A (zh) * | 2019-12-22 | 2020-04-21 | 北京浪潮数据技术有限公司 | 一种基于多核cpu的固态硬盘垃圾回收方法以及装置 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023284379A1 (zh) * | 2021-07-16 | 2023-01-19 | 深圳大普微电子科技有限公司 | 缓存管理方法、固态硬盘控制器及固态硬盘 |
Also Published As
Publication number | Publication date |
---|---|
CN113626346B (zh) | 2023-07-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11068391B2 (en) | Mapping table updating method for data storage device | |
CN106471478B (zh) | 用于在非易失性数据存储设备内以原子的方式执行多个写事务的设备控制器和方法 | |
KR100843543B1 (ko) | 플래시 메모리 장치를 포함하는 시스템 및 그것의 데이터복구 방법 | |
TWI492051B (zh) | 資料儲存裝置與快閃記憶體控制方法 | |
EP2955633B1 (en) | Data erasing method and device for flash memory | |
US9996462B1 (en) | Data storage device and data maintenance method thereof | |
CN109933545B (zh) | 数据储存装置与存储器装置的数据处理方法 | |
TW201802683A (zh) | 用於資料儲存裝置的損耗平均方法 | |
TWI633428B (zh) | 資料儲存裝置與記憶體裝置之資料處理方法 | |
CN103995784A (zh) | 快闪存储器控制器与存储装置以及快闪存储器控制方法 | |
TWI671631B (zh) | 記憶體管理方法以及儲存控制器 | |
WO2023206968A1 (zh) | 一种数据存储方法、系统及计算机可读存储介质 | |
CN115495025B (zh) | 一种管理异常存储块的方法和装置 | |
US20200327066A1 (en) | Method and system for online recovery of logical-to-physical mapping table affected by noise sources in a solid state drive | |
CN114237984A (zh) | 异常掉电下Trim数据的恢复方法、系统及固态硬盘 | |
CN115705152A (zh) | 使用存储器内日志在非易失性存储器装置中的元数据管理 | |
US10248526B2 (en) | Data storage device and data maintenance method thereof | |
CN115705153A (zh) | 有条件更新和延迟的查找 | |
CN113626346A (zh) | 一种固态硬盘的数据保护方法、装置、设备及介质 | |
CN113220221B (zh) | 存储器控制器与数据处理方法 | |
JP2013214154A (ja) | 情報処理装置、情報処理装置制御方法及び情報処理装置制御プログラム | |
TWI639112B (zh) | 儲存裝置及其控制單元、可用於儲存裝置的資料儲存方法 | |
JP5541194B2 (ja) | フラッシュメモリに対してデータの読み出しおよび書き込みを行う制御装置 | |
CN109324929B (zh) | 一种快照创建方法、装置、设备及可读存储介质 | |
JP2012252557A (ja) | メモリコントローラ |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |