CN107678684B - 存储器的无效数据清除方法、装置和存储器 - Google Patents
存储器的无效数据清除方法、装置和存储器 Download PDFInfo
- Publication number
- CN107678684B CN107678684B CN201710726995.3A CN201710726995A CN107678684B CN 107678684 B CN107678684 B CN 107678684B CN 201710726995 A CN201710726995 A CN 201710726995A CN 107678684 B CN107678684 B CN 107678684B
- Authority
- CN
- China
- Prior art keywords
- data
- memory
- physical block
- storage area
- invalid data
- 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.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0608—Saving storage space on storage systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0638—Organizing or formatting or addressing of data
- G06F3/064—Management of blocks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0646—Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
- G06F3/0652—Erasing, e.g. deleting, data cleaning, moving of data to a wastebasket
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0673—Single storage device
Abstract
本发明公开了一种存储器的无效数据清除方法,存储器的无效数据清除方法包括:在接收到数据的写入请求时,根据所述写入请求确定所述数据写入的物理块存储区域,并获取所述物理块存储区域的写入条件;当所述数据匹配所述物理块存储区域的写入条件,检测所述物理块存储区域的存储空间;当所述物理块存储区域的存储空间达到第一预设阈值时,确定所述物理块存储区域中各个物理块的有效数据和无效数据;移除所述物理块的有效数据,且擦除所述物理块的无效数据。本发明还提供了一种存储器的无效数据清除装置和存储器。本发明提高了存储器的无效数据的清除效率。
Description
技术领域
本发明涉及存储器技术领域,尤其涉及一种存储器的无效数据清除方法、装置和存储器。
背景技术
存储器是现代信息技术中用于保存信息的记忆设备,它主要是用来存储设备的数据。存储器的存储空间都是有限的,每当存储器存储空间消耗殆尽时,需要对存储器内的无效数据进行清除,以腾出存储空间。
现有技术中,在当存储器存储空间达到上限时,存储器对其所有的数据块进行无效数据的计算,当存储器内所有的数据块的无效数据计算完毕后再对存储器的无效数据进行清除。因存储器需计算所有数据块的无效数据,使得存储器的无效数据计算时长增长,从而使得存储器的无效数据清除效率低。
发明内容
本发明的主要目的在于提供存储器的无效数据清除方法、装置和存储器,旨在解决存储器无效数据清除效率低的问题。
为实现上述目的,本发明提供的一种存储器的无效数据清除方法,所述存储器的无效数据清除方法包括以下步骤:
在接收到数据的写入请求时,根据所述写入请求确定所述数据写入的物理块存储区域,并获取所述物理块存储区域的写入条件;
当所述数据匹配所述物理块存储区域的写入条件,检测所述物理块存储区域的存储空间;
当所述物理块存储区域的存储空间达到第一预设阈值时,确定所述物理块存储区域中各个物理块的有效数据和无效数据;
移除所述物理块的有效数据,且擦除所述物理块的无效数据。
优选地,所述数据匹配所述物理块存储区域的写入条件的步骤包括:
根据所述写入请求获取所述数据的容量;
当所述数据的容量大于或等于第二预设阈值时,判定所述数据匹配所述物理块存储区域的写入条件。
优选地,所述根据所述写入请求获取所述数据的容量的步骤之后,还包括:
当所述数据的容量大于或等于第二预设阈值时,根据所述写入请求确定所述数据写入的物理块;
当所述物理块内页偏移未被写入数据时,执行所述判定所述数据匹配所述物理块存储区域的写入条件的步骤。
优选地,所述存储器的无效数据清除方法,还包括:
当所述物理块存储区域的存储空间达到第一预设阈值时,计算所述物理块存储区域内各个物理块的有效数据占比;
标记有效数据小于预设占比的物理块;
移除标记的物理块中的有效数据,且擦除所述标记的物理块中的无效数据。
优选地,所述根据所述写入请求确定所述数据写入的物理块存储区域的步骤之后,还包括:
当所述数据不匹配所述物理块存储区域的写入条件时,根据所述物理块存储区域确定日志块存储区域;
检测所述日志块块存储区域的存储空间;
当所述日志块存储区域的存储空间达到第三预设阈值时,确定所述日志块存储区域中各个日志块的有效数据和无效数据;
移除所述日志块的有效数据,且擦除所述日志块的无效数据。
优选地,所述存储器的无效数据清除方法,还包括:
当所述日志块存储区域的存储空间达到第三预设阈值时,计算所述日志块存储区域内各个日志块的有效数据占比;
标记有效数据占比小于所述预设占比的日志块;
移除标记的日志块中的有效数据,且擦除所述标记的日志块中的无效数据。
优选地,在接收到所述数据的删除操作时,将所述数据对应的目录项的状态设置为无效。
优选地,在当所述处于存储器空闲时,获取状态为有效的目录项,并获取与有效的目录项对应的数据;
确定小于所述第二预设阈值的数据对应的日志块;
确定所述日志块的无效数据和有效数据;
移除所述日志块的有效数据,且擦除所述日志块的无效数据。
为实现上述目的,本发明还提供一种存储器的无效数据清除装置,所述存储器的无效数据清除装置包括存储器、处理器和存储在所述存储器并可在所述处理器上运行的存储器的无效数据清除程序,所述存储器的无效数据清除程序被所述处理器执行时实现如上任一项所述的存储器的无效数据清除方法的步骤。
为实现上述目的,本发明还提供一种存储器,所述存储器上存储的存储器的无效数据清除程序被处理器执行时实现如上任一项所述的存储器的无效数据清除方法的步骤。
本发明提供的存储器的无效数据清除方法、装置和存储器,在当存储器接收到数据写入请求时,根据写入请求确定数据写入的物理块存储区域,在当数据匹配物理块的存储区域的写入条件时,检测物理块存储器的存储空间,若物理块存储空间达到一定值时,确定物理块存储区域的各个物理块的有效数据和无效数据,从而清除物理块存储区域的无效数据;因存储器只需确定数据写入的存储区域的有效数据和无效数据,所以节省了计算有效数据和无效数据的时间,从而提高了存储器的无效数据的清除效率。
附图说明
图1是本发明实施例方案涉及的硬件运行环境的终端结构示意图;
图2为本发明存储器的无效数据清除方法第一实施例的流程示意图;
图3为本发明存储器的无效数据清除方法第一实施例中判定数据匹配物理块存储区域的写入条件的流程示意图;
图4为本发明存储器的无效数据清除方法第一实施例中数据不匹配物理块存储区域写入条件时,存储器无效数据清除的流程示意图;
图5为本发明存储器的无效数据清除方法的第二实施例的流程示意图;
图6为本发明存储器的无效数据清除方法的第三实施例的流程示意图。
图7为本发明存储器的无效数据清除方法的第四实施例的流程示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
本发明实施例的主要解决方案是:在接收到数据的写入请求时,根据所述写入请求确定所述数据写入的物理块存储区域,并获取所述物理块存储区域的写入条件;当所述数据匹配所述物理块存储区域的写入条件,检测所述物理块存储区域的存储空间;当所述物理块存储区域的存储空间达到第一预设阈值时,确定所述物理块存储区域中各个物理块的有效数据和无效数据;移除所述物理块的有效数据,且擦除所述物理块的无效数据。
现有技术中,在当存储器存储空间达到上限时,存储器对其所有的数据块进行无效数据的计算,当存储器内所有的数据块的无效数据计算完毕后再对存储器的无效数据进行清除。因存储器需计算所有数据块的无效数据,使得存储器的无效数据计算时长增长,从而使得存储器的无效数据清除效率低。
本发明提供一种解决方案:本解决方案中,因存储器只需确定数据写入的存储区域的有效数据和无效数据,所以节省了计算有效数据和无效数据的时间,从而提高了存储器的无效数据的清除效率。
如图1所示,图1是本发明实施例方案涉及的硬件运行环境的终端结构示意图。
本发明实施例终端可以是PC,也可以是智能手机、平板电脑、电子书阅读器、MP3(Moving Picture Experts Group Audio Layer III,动态影像专家压缩标准音频层面3)播放器、MP4(Moving Picture Experts Group Audio Layer IV,动态影像专家压缩标准音频层面3)播放器、便携计算机等具有显示功能的可移动式终端设备。
如图1所示,该终端可以包括:处理器1001,例如CPU,网络接口1004,用户接口1003,存储器1005,通信总线1002。其中,通信总线1002用于实现这些组件之间的连接通信。用户接口1003可以包括显示屏(Display)、输入单元比如键盘(Keyboard),可选用户接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如WI-FI接口)。
存储器1005可以是高速RAM存储器,也可以是稳定的存储器(non-volatilememory),例如磁盘存储器。存储器1005可选的还可以是独立于前述处理器1001的存储装置。
如图1所示,作为一种计算机存储介质的存储器1005中含有存储器的无效数据清除程序。
在图1所示的终端中,网络接口1004主要用于连接后台服务器,与后台服务器进行数据通信;用户接口1003主要用于连接客户端(用户端),与客户端进行数据通信;而处理器1001可以用于调用存储器1005中存储的存储器的无效数据清除程序,并执行以下操作:
在接收到数据的写入请求时,根据所述写入请求确定所述数据写入的物理块存储区域,并获取所述物理块存储区域的写入条件;
当所述数据匹配所述物理块存储区域的写入条件,检测所述物理块存储区域的存储空间;
当所述物理块存储区域的存储空间达到第一预设阈值时,确定所述物理块存储区域中各个物理块的有效数据和无效数据;
移除所述物理块的有效数据,且擦除所述物理块的无效数据。
进一步的,处理器1001可以用于调用存储器1005中存储的存储器的无效数据清除程序,并执行以下操作:
根据所述写入请求获取所述数据的容量;
当所述数据的容量大于或等于第二预设阈值时,判定所述数据匹配所述物理块存储区域的写入条件。
进一步的,处理器1001可以用于调用存储器1005中存储的存储器的无效数据清除程序,并执行以下操作:
当所述数据的容量大于或等于第二预设阈值时,根据所述写入请求确定所述数据写入的物理块;
当所述物理块内页偏移未被写入数据时,执行所述判定所述数据匹配所述物理块存储区域的写入条件的步骤。
进一步的,处理器1001可以用于调用存储器1005中存储的存储器的无效数据清除程序,并执行以下操作:
当所述物理块存储区域的存储空间达到第一预设阈值时,计算所述物理块存储区域内各个物理块的有效数据占比;
标记有效数据小于预设占比的物理块;
移除标记的物理块中的有效数据,且擦除所述标记的物理块中的无效数据。
进一步的,处理器1001可以用于调用存储器1005中存储的存储器的无效数据清除程序,并执行以下操作:
当所述数据不匹配所述物理块存储区域的写入条件时,根据所述物理块存储区域确定日志块存储区域;
检测所述日志块块存储区域的存储空间;
当所述日志块存储区域的存储空间达到第三预设阈值时,确定所述日志块存储区域中各个日志块的有效数据和无效数据;
移除所述日志块的有效数据,且擦除所述日志块的无效数据。
进一步的,处理器1001可以用于调用存储器1005中存储的存储器的无效数据清除程序,并执行以下操作:
当所述日志块存储区域的存储空间达到第三预设阈值时,计算所述日志块存储区域内各个日志块的有效数据占比;
标记有效数据占比小于所述预设占比的日志块;
移除标记的日志块中的有效数据,且擦除所述标记的日志块中的无效数据。
进一步的,处理器1001可以用于调用存储器1005中存储的存储器的无效数据清除程序,并执行以下操作:
在接收到所述数据的删除操作时,将所述数据对应的目录项的状态设置为无效。
进一步的,处理器1001可以用于调用存储器1005中存储的存储器的无效数据清除程序,并执行以下操作:
在当所述处于存储器空闲时,获取状态为有效的目录项,并获取与有效的目录项对应的数据;
确定小于所述第二预设阈值的数据对应的日志块;
确定所述日志块的无效数据和有效数据;
移除所述日志块的有效数据,且擦除所述日志块的无效数据。
本实施例根据上述方案,在当存储器接收到数据写入请求时,根据写入请求确定数据写入的物理块存储区域,在当数据匹配物理块的存储区域的写入条件时,检测物理块存储器的存储空间,若物理块存储空间达到一定值时,确定物理块存储区域的各个物理块的有效数据和无效数据,从而清除物理块存储区域的无效数据;因存储器只需确定数据写入的存储区域的有效数据和无效数据,所以节省了计算有效数据和无效数据的时间,从而提高了存储器的无效数据的清除效率。
基于上述硬件构架,提出本发明存储器的无效数据清除方法的实施例。
参照图2,图2为本发明存储器的无效数据清除方法的第一实施例,所述存储器的无效数据清除方法包括以下步骤:
步骤S10,在接收到数据的写入请求时,根据所述写入请求确定所述数据写入的物理块存储区域,并获取所述物理块存储区域的写入条件;
存储器可以为Flash存储器,也可以为其他任意存储器。本发明中存储器对其物理空间进行定义,根据存储器的物理结构划分多个块,划分的块可称作物理块,各个物理块的大小相同,存储器按照物理块的起始地址从小到大的顺序给每个物理块进行标序,其物理块号由物理块英文缩写PNB加数字表示,比如初始地址的物理块号为PBN0,然后将每个物理块划分为一个以上的页,即物理页,各个物理页的大小相同,物理块中的物理页按照它在物理块内起始偏移位置从小到大的顺序给每个物理页指定一个在该物理块中唯一的标号;存储器还可将其中的部分物理块定义为日志块,并按照日志块的起始地址从小到大的顺序给日志块进行标序,日志块号由日志块英文缩写DJB加数字表示,比如初始地址的日志块号为DJB0;存储器中还含有逻辑块,逻辑块为存储器的一个逻辑存储区,存储器按照逻辑块的起始地址从小到大的顺序给每个逻辑块进行标序,其逻辑块号由逻辑块英文缩写LBN加数字表示,比如初始地址的逻辑块号为LBN0;逻辑块也含有多页逻辑页,各个逻辑页的大小相同,逻辑块中的逻辑页按照它在逻辑块内起始偏移位置从小到大的顺序给每个逻辑页指定一个在该逻辑块中唯一的标号。存储器内的逻辑块与物理块实行块映射,每个逻辑块都会映射到唯一的一个物理块中,但不是每一个物理块都会映射到一个逻辑块,存储器可将部分物理块用作为坏块的替换或者传输块或存储配置管理数据或者用作存储有效数据的空白块。可选的,存储器含有4096个物理块,以及对应的4096个逻辑块,还含有256个日志块,存储器还含有少量的空白块,在本实施例中,将4096个物理块分为分为16个物理块存储区域,每个存储区域含有256个物理块;将256个日志块分为16个日志块存储区域,每个物理块存储区域对应一个日志块存储区域,即这个物理块存储区域的每个物理块对应16个日志块。
在本实施例中,数据会首先写入逻辑块,逻辑块在根据与物理块的映射关系将数据传输至对应的物理块中,所以在存储器接收到数据的写入请求时,根据数据的写入请求(有些数据需要写入制定的物理块区域,写入请求包括数据指定写入的物理块存储区域)确定物理块存储区域。
步骤S20,当所述数据匹配所述物理块存储区域的写入条件,检测所述物理块存储区域的存储空间;
在本实施例中,设定物理块存储区域的写入条件。在当检测物理块存储区间的存储空间时,先要判断数据是否符合物理块存储区域的写入条件,可参照图3,图3为判定数据匹配物理块存储区域的写入条件的流程示意图,具体步骤如下:
步骤S21,根据所述写入请求获取所述数据的容量;
步骤S22,当所述数据的容量大于或等于第二预设阈值时,根据所述写入请求确定所述数据写入的物理块;
步骤S23,当所述物理块内页偏移未被写入数据时,判定所述数据匹配所述物理块存储区域的写入条件;
在本实施例中,会将大容量的数据写入物理块中,而将小容量的数据写入与物理块对应的日志块中,所以存储器的内置程序会首先判断数据的容量的大小,在当数据的容量大于第二预设阈值(第二预设阈值可以为任意合适的数值,比如第二预设阈值为物理块的存储容量)时,内置程序继续判断该物理块是否为空白,即判断物理块内的物理页是否写入其他的数据,若是写有其他数据,该数据会被写入与物理块对应的日志块中。在当数据满足上述二个条件时,存储器会判定数据匹配物理块存储区域的写入条件,若数据不满足上述任一条件,存储器会判定数据不匹配物理块存储区域的写入条件,从而将数据写入与物理块存储区域对应的日志块存储区域。
步骤S30,当所述物理块存储区域的存储空间达到第一预设阈值时,确定所述物理块存储区域中各个物理块的有效数据和无效数据;
在当数据匹配物理块存储区域的写入条件时,检测该物理块存储区域的存储空间,若检测到该物理块存储区域的存储空间达到上限值(第一预设阈值)时,需要清除该物理块存储区域的无效数据,即需要确定该存储区域的有效数据和无效数据。
存储器上设有目录,每个目录记录存储器上各个文件(数据以文件的形式存在)的属性,比如该文件是否为无效状态或者有效状态,目录中还记录了该文件所在的存储区域,所以在需要确定物理块内数据的状态,只需查找目录中对应数据的状态,既可以确定物理块内的有效数据和无效数据。在当存储器接收到数据的删除操作时,会将数据对应的目录项的状态设置为无效,并且将记录数据的FAT表项清除。
步骤S40,移除所述物理块的有效数据,且擦除所述物理块的无效数据;
在确定存储区域内的有效数据和无效数据后,存储器的内置程序将存储区域的有效数据搬移至存储器预存的空白块,然后对搬移了有效数据的日志块进行无效数据的擦除,以去除存储区域(以物理块或数据块为擦出单位)中的无效数据,当存储区域的无效数据被擦除后,空白块存储的有效数据可以通过空白块中的物理页与存储区域的日志块或物理块的物理页的页映射再次存储到存储区域中。
本实施例中,在存储器判断数据匹配物理块存储区域的写入条件,当所述数据的容量小于于第二预设阈值或当所述物理块的物理页被写入数据时,存储器会将数据写入与物理块存储区域对应的日志块存储区域,具体可参照图4,图4为数据不匹配物理块存储区域写入条件时,存储器无效数据清除的流程示意图,包括如下步骤:
步骤S50,当所述数据不匹配所述物理块存储区域的写入条件时,根据所述物理块存储区域确定日志块存储区域;
步骤S60,检测所述日志块块存储区域的存储空间;
步骤S70,当所述日志块存储区域的存储空间达到第三预设阈值时,确定所述日志块存储区域中各个日志块的有效数据和无效数据;
步骤S80,移除所述日志块的有效数据,且擦除所述日志块的无效数据;
需要说明的是,本实施例中,是当存储区域的存储空间达到上限值或者接近上限值时,再对存储区域内的所有日志块或物理块的无效数据进行清除,以腾出更多的存储空间。而现有技术中,在当日志块或物理块存储满即进行无效数据的清除。相较于现有技术,本实施例的日志块或物理块的数据搬移与擦除次数远远小于现有技术中日志块的数据搬移与擦除次数,本发明提供的存储器的无效数据清除方法相较于现有技术中的存储器的无效数据清除方法具有减小写放大的优点。另外,本发明中,物理块或日志块的数据由逻辑块通过块映射存储于物理块或日志块中,即物理块或日志块中的数据必然是具有逻辑关系的数据,在物理块或日志块中的有效数据向空白块进行搬移时,空白块中有效数据可根据逻辑关系相互之间进行简单的数据整合,避免数据碎片化。
本实施例提供的技术方案中,在当存储器的存储区域的容量达到一定值时,通过确定存储区域的有效数据与无效数据,在对存储区域的有效数据进行搬移,且清除所述存储区域的无效数据;因只需确定存储区域内的有效数据与无效数据,而不需要确定存储器内所有数据块的无效数据与有效数据,节省了有效数据以及无效数据的计算时间,从而提高了存储器的无效数据清除效率。
参照图5,图5为本发明存储器的无效数据清除方法的第二实施例,基于上述实施例,所述步骤S20之后,还包括:
步骤S90,当所述物理块存储区域的存储空间达到第一预设阈值时,计算所述物理块存储区域内各个物理块的有效数据占比;
步骤S100,标记有效数据小于预设占比的物理块;
步骤S110,移除标记的物理块中的有效数据,且擦除所述标记的物理块中的无效数据;
在当存储器内物理块的有效数据被查找确定后,存储器会统计物理块内的有效数据占比,在当物理块内的有效数据占比小于预设占比时,即意味着该物理块内的无效数据占比大,存储器将该物理块的有效数据进行标记,者直接标记该物理块需要搬移有效数据。预设占比可以为任意合适的数值。
在本实施例中,当物理块中的有效数据占比低于预设占比,存储器对该物理块内的有效数据不进行搬移,这样能够减少物理块内数据的搬移次数,减少物理块的写放大,进一步减少了存储器的写放大。
本实施例提供的技术方案中,当物理块的有效数据占比较大时,不对该物理块的有效数据进行搬移,减少了物理块内数据的搬移次数,减少了存储器的写放大。
参照图6,图6为本发明存储器的无效数据清除方法的第三实施例,基于第一实施例,所述步骤S60之后,还包括:
步骤S120,当所述日志块存储区域的存储空间达到第三预设阈值时,计算所述日志块存储区域内各个日志块的有效数据占比;
步骤S130,标记有效数据占比小于所述预设占比的日志块;
步骤S140,移除标记的日志块中的有效数据,且擦除所述标记的日志块中的无效数据;
在当存储器内日志块的有效数据被查找确定后,存储器会统计日志块内的有效数据占比,在当日志块内的有效数据占比小于预设占比时,即意味着该日志块内的无效数据占比大,存储器将该日志块的有效数据进行标记,者直接标记该日志块需要搬移有效数据。预设占比可以为任意合适的数值。
在本实施例中,当日志块中的有效数据占比低于预设占比,存储器对该日志块内的有效数据不进行搬移,这样能够减少日志块内数据的搬移次数,减少的写放大,进一步减少了存储器的写放大。
本实施例提供的技术方案中,当日志块的有效数据占比较大时,不对该日志块的有效数据进行搬移,减少了日志块内数据的搬移次数,减少了存储器的写放大。
参照图7,图7为本发明存储器的无效数据清除方法的第四实施例,基于第一至第三实施例,所述存储器的无效数据清除方法,还包括:
步骤S150,在当所述处于存储器空闲时,获取状态为有效的目录项,并获取与有效的目录项对应的数据;
步骤S160,确定小于所述第二预设阈值的数据对应的日志块;
步骤S170,确定所述日志块的无效数据和有效数据;
步骤S180,移除所述日志块的有效数据,且擦除所述日志块的无效数据;
在当存储器空闲的时候,存储器可对日志块进行清除。存储器首先会查找有效的目录项,读取有效目录项对应的数据的容量,从而筛选出小容量数据(数据容量小于或等于第二预设阈值定义为小容量数据),小容量数据处于日志块中,存储器根据小容量数据查找对应的日志块,再确定日志块内的有效数据和无效数据,从而对日志块内的数据进行清除。
本实施例提供的技术方案中,存储器在空闲时,通过查找有效的目录项,确定对应的数据,然后确定小容量数据,最后根据小容量数据确定对应的日志块,从而对日志块的数据进行清除整理,使得存储器能够保持日志块的可存储数据的存储空间。
本发明还提供一种存储器的无效数据清除装置,所述存储器的无效数据清除装置包括存储器、处理器和存储在所述存储器并可在所述处理器上运行的存储器的无效数据清除程序,所述存储器的无效数据清除程序被所述处理器执行时实现如上实施例所述的存储器的无效数据清除方法的各个步骤。
为实现上述目的,本发明还提供一种存储器,所述存储器上存储的存储器的无效数据清除程序被处理器执行时实现如上实施例所述的存储器的无效数据清除方法的各个步骤。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在如上所述的一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (10)
1.一种存储器的无效数据清除方法,其特征在于,所述存储器的无效数据清除方法包括以下步骤:
在接收到数据的写入请求时,根据所述写入请求确定所述数据写入的物理块存储区域,并获取所述物理块存储区域的写入条件;
当所述数据匹配所述物理块存储区域的写入条件,检测所述物理块存储区域的存储空间;
当所述物理块存储区域的存储空间达到第一预设阈值时,确定所述物理块存储区域中各个物理块的有效数据和无效数据,其中,所述存储器上设有目录,每个所述目录记录存储器上各个文件的属性以及所述文件所处的物理块存储区域,所述属性包括无效状态和有效状态;
移除所述物理块的有效数据,且擦除所述物理块的无效数据。
2.如权利要求1所述的存储器的无效数据清除方法,其特征在于,所述数据匹配所述物理块存储区域的写入条件的步骤包括:
根据所述写入请求获取所述数据的容量;
当所述数据的容量大于或等于第二预设阈值时,判定所述数据匹配所述物理块存储区域的写入条件。
3.如权利要求2所述的存储器的无效数据清除方法,其特征在于,所述根据所述写入请求获取所述数据的容量的步骤之后,还包括:
当所述数据的容量大于或等于第二预设阈值时,根据所述写入请求确定所述数据写入的物理块;
当所述物理块内页偏移未被写入数据时,执行所述判定所述数据匹配所述物理块存储区域的写入条件的步骤。
4.如权利要求3所述的存储器的无效数据清除方法,其特征在于,所述存储器的无效数据清除方法,还包括:
当所述物理块存储区域的存储空间达到第一预设阈值时,计算所述物理块存储区域内各个物理块的有效数据占比;
标记有效数据小于预设占比的物理块;
移除标记的物理块中的有效数据,且擦除所述标记的物理块中的无效数据。
5.如权利要求1所述的存储器的无效数据清除方法,其特征在于,所述根据所述写入请求确定所述数据写入的物理块存储区域的步骤之后,还包括:
当所述数据不匹配所述物理块存储区域的写入条件时,根据所述物理块存储区域确定日志块存储区域;
检测所述日志块存储区域的存储空间;
当所述日志块存储区域的存储空间达到第三预设阈值时,确定所述日志块存储区域中各个日志块的有效数据和无效数据;
移除所述日志块的有效数据,且擦除所述日志块的无效数据。
6.如权利要求5所述的存储器的无效数据清除方法,其特征在于,所述存储器的无效数据清除方法,还包括:
当所述日志块存储区域的存储空间达到第三预设阈值时,计算所述日志块存储区域内各个日志块的有效数据占比;
标记有效数据占比小于预设占比的日志块;
移除标记的日志块中的有效数据,且擦除所述标记的日志块中的无效数据。
7.如权利要求1-6任一项所述的存储器的无效数据清除方法,其特征在于,所述存储器的无效数据清除方法,还包括:
在接收到所述数据的删除操作时,将所述数据对应的目录项的状态设置为无效。
8.如权利要求3所述的存储器的无效数据清除方法,其特征在于,所述的存储器的无效数据清除方法,还包括:
在当所述存储器处于空闲时,获取状态为有效的目录项,并获取与有效的目录项对应的数据;
确定小于所述第二预设阈值的数据对应的日志块;
确定所述日志块的无效数据和有效数据;
移除所述日志块的有效数据,且擦除所述日志块的无效数据。
9.一种存储器的无效数据清除装置,其特征在于,所述存储器的无效数据清除装置包括存储器、处理器和存储在所述存储器并可在所述处理器上运行的存储器的无效数据清除程序,所述存储器的无效数据清除程序被所述处理器执行时实现如权利要求1-8任一项所述的存储器的无效数据清除方法的步骤。
10.一种存储器,其特征在于,所述存储器上存储的存储器的无效数据清除程序被处理器执行时实现如权利要求1至8中任一项所述的存储器的无效数据清除方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710726995.3A CN107678684B (zh) | 2017-08-22 | 2017-08-22 | 存储器的无效数据清除方法、装置和存储器 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710726995.3A CN107678684B (zh) | 2017-08-22 | 2017-08-22 | 存储器的无效数据清除方法、装置和存储器 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107678684A CN107678684A (zh) | 2018-02-09 |
CN107678684B true CN107678684B (zh) | 2020-11-10 |
Family
ID=61135488
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710726995.3A Active CN107678684B (zh) | 2017-08-22 | 2017-08-22 | 存储器的无效数据清除方法、装置和存储器 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107678684B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111221468B (zh) * | 2018-11-26 | 2023-10-13 | 杭州海康威视系统技术有限公司 | 存储块数据删除方法、装置、电子设备及云存储系统 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101526923A (zh) * | 2009-04-02 | 2009-09-09 | 成都市华为赛门铁克科技有限公司 | 一种数据处理方法、装置和闪存存储系统 |
CN103608866A (zh) * | 2013-03-15 | 2014-02-26 | 华为技术有限公司 | 用于闪存存储器的数据擦除方法及装置 |
CN103688247A (zh) * | 2011-06-15 | 2014-03-26 | 苹果公司 | 混合slc/mlc存储器中的块管理方案 |
CN105278876A (zh) * | 2015-09-23 | 2016-01-27 | 华为技术有限公司 | 一种固态硬盘的数据擦除方法及装置 |
CN106227471A (zh) * | 2016-08-19 | 2016-12-14 | 深圳大普微电子科技有限公司 | 固态硬盘和应用于固态硬盘的数据存取方法 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2005029311A1 (ja) * | 2003-09-18 | 2005-03-31 | Matsushita Electric Industrial Co., Ltd. | 半導体メモリカード、半導体メモリ制御装置及び半導体メモリ制御方法 |
US7984084B2 (en) * | 2005-08-03 | 2011-07-19 | SanDisk Technologies, Inc. | Non-volatile memory with scheduled reclaim operations |
US9104546B2 (en) * | 2010-05-24 | 2015-08-11 | Silicon Motion Inc. | Method for performing block management using dynamic threshold, and associated memory device and controller thereof |
-
2017
- 2017-08-22 CN CN201710726995.3A patent/CN107678684B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101526923A (zh) * | 2009-04-02 | 2009-09-09 | 成都市华为赛门铁克科技有限公司 | 一种数据处理方法、装置和闪存存储系统 |
CN103688247A (zh) * | 2011-06-15 | 2014-03-26 | 苹果公司 | 混合slc/mlc存储器中的块管理方案 |
CN103608866A (zh) * | 2013-03-15 | 2014-02-26 | 华为技术有限公司 | 用于闪存存储器的数据擦除方法及装置 |
CN105278876A (zh) * | 2015-09-23 | 2016-01-27 | 华为技术有限公司 | 一种固态硬盘的数据擦除方法及装置 |
CN106227471A (zh) * | 2016-08-19 | 2016-12-14 | 深圳大普微电子科技有限公司 | 固态硬盘和应用于固态硬盘的数据存取方法 |
Also Published As
Publication number | Publication date |
---|---|
CN107678684A (zh) | 2018-02-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108073363B (zh) | 数据存储方法、存储设备及计算机可读存储介质 | |
CN111625191A (zh) | 一种数据读写方法、装置及电子设备和存储介质 | |
CN101526923B (zh) | 一种数据处理方法、装置和闪存存储系统 | |
CN105677242A (zh) | 冷热数据的分离方法和装置 | |
EP3404538B1 (en) | Data processing method, and data processing apparatus | |
WO2019196878A1 (zh) | 一种内存管理的方法以及相关设备 | |
WO2022151985A1 (zh) | 基于虚拟内存的数据存储方法、装置、设备及存储介质 | |
JP2017527877A (ja) | フラッシュメモリから/フラッシュメモリへデータを読み取る/書き込むための方法および装置、ならびにユーザ機器 | |
CN108228339B (zh) | 一种内存回收方法及装置、终端设备及计算机可读存储介质 | |
CN100399294C (zh) | 文件的有效数据管理的方法和设备 | |
CN107391038A (zh) | 资料存储型闪存的数据写入方法、闪存及存储介质 | |
CN107678684B (zh) | 存储器的无效数据清除方法、装置和存储器 | |
CN111831691A (zh) | 一种数据读写方法及装置、电子设备、存储介质 | |
KR100456736B1 (ko) | 플래시 메모리를 구비한 디지털 기기의 부팅 시간 단축 방법 | |
US20060136668A1 (en) | Allocating code objects between faster and slower memories | |
KR101565975B1 (ko) | 인덱스를 저장하는 플래시 메모리를 포함하는 사용자 장치 및 그것의 인덱스 액세스 방법 | |
CN110334034B (zh) | 映射表动态加载的方法、装置、计算机设备及存储介质 | |
CN116880746A (zh) | 数据处理方法、装置、电子设备及计算机可读存储介质 | |
CN106484691B (zh) | 移动终端的数据存储方法和装置 | |
CN108228340B (zh) | 终端控制方法及装置、终端设备及计算机可读存储介质 | |
US7681009B2 (en) | Dynamically updateable and moveable memory zones | |
CN111143293B (zh) | 一种元数据获取方法、装置、设备及计算机可读存储介质 | |
CN109471598B (zh) | 存储设备的数据删除方法、装置及计算机可读存储介质 | |
CN114637946A (zh) | 资源数据的处理方法、装置及电子设备 | |
CN115840736A (zh) | 文件整理方法、智能终端及计算机可读存储介质 |
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 | ||
CB02 | Change of applicant information | ||
CB02 | Change of applicant information |
Address after: Units 05-2 and 06-08, 6th floor, Changhong Science and Technology Building, 18 Science and Technology South 12 Road, Nanshan District, Shenzhen City, Guangdong Province Applicant after: Shenzhen SiliconGo Semiconductor Co., Ltd. Address before: Units 05-2 and 06-08, 6th floor, Changhong Science and Technology Building, 18 Science and Technology South 12 Road, Nanshan District, Shenzhen City, Guangdong Province Applicant before: SILICONGO MICROELECTRONICS CO., LTD. |
|
GR01 | Patent grant | ||
GR01 | Patent grant |