CN113946288A - 数据擦除方法、装置、电子设备及计算机存储介质 - Google Patents
数据擦除方法、装置、电子设备及计算机存储介质 Download PDFInfo
- Publication number
- CN113946288A CN113946288A CN202111081886.3A CN202111081886A CN113946288A CN 113946288 A CN113946288 A CN 113946288A CN 202111081886 A CN202111081886 A CN 202111081886A CN 113946288 A CN113946288 A CN 113946288A
- Authority
- CN
- China
- Prior art keywords
- erased
- memory
- data
- block
- storage
- 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.)
- Pending
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/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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Read Only Memory (AREA)
Abstract
本申请公开了一种数据擦除方法、装置、电子设备及计算机存储介质。其中,该方法包括:确定待擦除存储块;判断所述待擦除存储块是否写满;在所述待擦除存储块未写满的情况下,在所述待擦除存储块未写满区域写入填充数据;擦除所述待擦除存储块中存储的数据,从而使存储块包括的各个存储单元的使用寿命具有均一性,避免部分存储单元寿命短,部分存储单元寿命长的情况。
Description
技术领域
本申请涉及存储器处理技术领域,尤其涉及一种数据擦除方法、装置、电子设备及计算机存储介质。
背景技术
在存储器进行擦除操作时,都是通过对整个存储块直接进行擦除操作来实现数据擦除的,就会导致存储块中各个存储区域的使用寿命不均一,存在部分存储区域寿命短,部分存储区域寿命长的情况。
发明内容
本申请实施例提供了一种数据擦除方法、装置、电子设备及计算机存储介质,可以避免在有存储块没有写满的情况下就进行擦除时,会导致部分存储单元寿命短,部分存储单元寿命长的情况。所述技术方案如下:
本申请实施例提供了一种非易失性存储器擦除方法,所述方法包括:
确定待擦除存储块;
判断所述待擦除存储块是否写满;
在所述待擦除存储块未写满的情况下,在所述待擦除存储块未写满的区域写入填充数据;
擦除所述待擦除存储块中存储的数据。
本申请实施例中,在确定待擦除存储块之后,先判断待擦除存储块是否写满,在待擦除存储块未写满的情况下,在待擦除存储块未写满的区域写入填充数据,然后才执行擦除待擦除存储块中存储的数据的步骤。相当于当待擦除存储块未写满时,先在未写满的区域写入填充数据,然后,才会对待擦除存储块中存储的数据进行擦除,也就是在未写满的存储块被填充数据写满之后才对存储块中存储的数据进行擦除,从而使擦除操作对待擦除存储块各个存储区域的损伤程度相同,保证了待擦除存储块各个存储区域使用寿命的均一性。
在一种可能的实现方式中,所述判断所述待擦除存储块是否写满之后,所述方法还包括:
在所述待擦除存储块写满的情况下,擦除所述待擦除存储块中存储的数据。
本申请实施例中,在确定待擦除存储块之后,先判断待擦除存储块是否写满,在待擦除存储块已写满的情况下,可以直接擦除所述待擦除存储块中存储的数据。只有确定待擦除存储块是处于写满的状态下,才会直接对待擦除存储块中存储的数据进行擦除,避免了对所有待擦除存储块进行的擦除操作时,导致待擦除存储块中各区域使用寿命不均一的问题。
在一种可能的实现方式中,所述待擦除存储块包括N个存储单元,N为正整数;
所述判断所述待擦除存储块是否写满,包括:判断所述待擦除存储块包括的所述N个存储单元是否均写满;
在所述待擦除存储块包括的所述N个存储单元中存在有存储单元未写满的情况下,确定所述待擦除存储块未写满。
本申请实施例中,所述待擦除存储块包括N个存储单元,N为正整数。通过判断所述待擦除存储块包括的所述N个存储单元是否均写满,确定所述待擦除存储块是否写满,从而能够更为具体准确地去判断所述待擦除存储块是否写满。
在一种可能的实现方式中,所述在所述待擦除存储块未写满的情况下,在所述待擦除存储块未写满的区域写入填充数据,包括:在所述待擦除存储块包括的所述N个存储单元中存在有存储单元未写满的情况下,在所述待擦除存储块中未写满的存储单元写入填充数据;
所述擦除所述待擦除存储块中存储的数据,包括:擦除所述待擦除存储块包括的所述N个存储单元中存储的数据。
本申请实施例中,所述待擦除存储块包括N个存储单元,N为正整数。只有当所述待擦除存储块包括的每一个存储单元都已写满,才会擦除所述待擦除存储块包括的所述N个存储单元中存储的数据,从而避免了对待擦除存储块包括的所述N个存储单元进行的擦除操作时,导致的存在部分存储单元寿命短,部分存储单元寿命长的情况,平衡了待擦除存储块包括的所述N个存储单元的使用寿命。
在一种可能的实现方式中,所述判断所述待擦除存储块是否写满,包括:
根据预设数据表判断所述待擦除存储块是否写满;所述预设数据表包括各个存储块的数据写入状态的指示值。
本申请实施例中,根据预设数据表判断所述待擦除存储块是否写满,使得执行所述判断所述待擦除存储块是否写满操作的过程更为清晰直观。
在一种可能的实现方式中,所述指示值包括第一指示值和第二指示值;其中,所述第一指示值用于表征对应的存储块的数据写入状态为未写满,所述第二指示值用于表征对应的存储块的数据写入状态为已写满。
本申请实施例中,分别用第一指示值和第二指示值表征对应的存储块的数据写入状态是否写满,使得所述待擦除存储块的数据写入状态的能够更为直观简要地展现出来。
在一种可能的实现方式中,所述判断所述待擦除存储块是否写满之前,所述方法还包括:
从所述预设数据表中读取所述待擦除存储块对应的指示值;
所述判断所述待擦除存储块是否写满,包括:根据所述待擦除存储块对应的指示值判断所述待擦除存储块是否写满。
本申请实施例中,在判断所述待擦除存储块是否写满之前,先从预设数据表中读取所述待擦除存储块对应的指示值,然后再根据所述待擦除存储块对应的指示值判断所述待擦除存储块是否写满,从而使得判断所述待擦除存储块是否写满的过程更加快捷方便。
在一种可能的实现方式中,所述预设数据表还包括各个存储块中已写入数据的存储单元的地址;
所述在所述待擦除存储块未写满的情况下,在所述待擦除存储块未写满的区域写入填充数据,包括:
在所述待擦除存储块未写满的情况下,根据所述预设数据表中包括的所述待擦除存储块中已写入数据的存储单元的地址,确定所述待擦除存储块中未写入数据的存储单元地址;
在所述待擦除存储块中未写入数据的存储单元地址中写入填充数据。
本申请实施例中,根据所述预设数据表中包括的所述待擦除存储块中已写入数据的存储单元的地址,确定所述待擦除存储块中未写入数据的存储单元地址,可以明确所述待擦除存储块未写满的区域包括的存储单元的地址,提高了执行在所述待擦除存储块未写满的区域写入填充数据操作的效率。
第二方面,本申请实施例提供了一种数据擦除装置,包括:
确定模块,用于确定待擦除存储块;
判断模块,用于判断所述待擦除存储块是否写满;
写入模块,用于在所述待擦除存储块未写满的情况下,在所述待擦除存储块未写满的区域写入填充数据;
擦除模块,用于擦除所述待擦除存储块中存储的数据。
在一种可能的实现方式中,所述擦除模块还用于:在所述待擦除存储块写满的情况下,擦除所述待擦除存储块中存储的数据。
在一种可能的实现方式中,所述待擦除存储块包括N个存储单元,N为正整数;
所述判断模块,具体用于判断所述待擦除存储块包括的所述N个存储单元是否均写满;
所述写入模块,具体用于在所述待擦除存储块包括的所述N个存储单元中存在有存储单元未写满的情况下,在所述待擦除存储块中未写满的存储单元写入填充数据;
所述擦除模块,具体用于擦除所述待擦除存储块包括的所述N个存储单元中存储的数据。
在一种可能的实现方式中,所述判断模块具体用于:根据预设数据表判断所述待擦除存储块是否写满;所述预设数据表包括各个存储块的数据写入状态的指示值。
在一种可能的实现方式中,所述指示值包括第一指示值和第二指示值;其中,所述第一指示值用于表征对应的存储块的数据写入状态为未写满,所述第二指示值用于表征对应的存储块的数据写入状态为已写满。
在一种可能的实现方式中,数据擦除装置还包括:读取模块,用于从所述预设数据表中读取所述待擦除存储块对应的指示值;
判断模块,具体用于根据所述待擦除存储块对应的指示值判断所述待擦除存储块是否写满。
在一种可能的实现方式中,所述预设数据表还包括各个存储块中已写入数据的存储单元的地址;
写入模块包括:
确定单元,用于在所述待擦除存储块未写满的情况下,根据所述预设数据表中包括的所述待擦除存储块中已写入数据的存储单元的地址,确定所述待擦除存储块中未写入数据的存储单元地址;
写入单元,用于在所述待擦除存储块中未写入数据的存储单元地址中写入填充数据。
第三方面,本申请实施例提供了一种电子设备,包括:处理器和存储器;其中,所述存储器存储有计算机程序,所述计算机程序适于由处理器加载并执行本申请实施例第一方面或第一方面的任意一种可能的实现方式提供的方法步骤。
第四方面,本申请实施例提供了一种计算机存储介质,所述计算机存储介质存储有多条指令,所述指令适于由处理器加载并执行本申请实施例第一方面或第一方面的任意一种可能的实现方式提供的方法步骤。
可以理解的,上述第二方面提供的数据擦除装置、第三方面提供的电子设备以及第四方面提供的计算机存储介质,均用于执行第一方面或第一方面的任意一种实现方式所提供的数据擦除方法,因此,其所能达到的有益效果可参考第一方面或第一方面的任意一种实现方式所提供的数据擦除方法中的有益效果,此处不再赘述。
上述说明仅是本申请技术方案的概述,为了能够更清楚了解本申请的技术手段而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例中所需使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的一种电子设备的结构示意图;
图2为本申请实施例提供的一种存储器的结构示意图;
图3为本申请实施例提供的一种存储块的结构示意图;
图4为本申请实施例提供一种的数据擦除方法的流程图;
图5为本申请实施例提供的另一种数据擦除方法的流程图;
图6为本申请实施例提供的另一种数据擦除方法的流程图;
图7为本申请实施例提供的另一种数据擦除方法的流程图;
图8为本申请实施例提供的一种预设数据表的示意图;
图9为本申请实施例提供的另一种预设数据表的示意图;
图10为本申请实施例提供的另一种预设数据表的示意图;
图11为本申请实施例提供的另一种数据擦除方法的流程图;
图12为本申请实施例提供的另一种预设数据表的示意图;
图13为本申请实施例提供的另一种预设数据表的示意图;
图14为本申请实施例提供的一种数据擦除装置的结构示意图。
具体实施方式
为使得本申请的特征和优点能够更加的明显和易懂,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而非全部实施例。基于本申请中的实施例,本领域技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”等是用于区别不同对象,而不是用于描述特定顺序。此外,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其他步骤或单元。
在存储器进行擦除操作时,都是通过对整个存储块直接进行擦除操作来实现数据擦除的。但是发明人发现,结合现有数据来看,当存储块在没有写满的情况下就进行擦除时,擦除操作对存储块未写满的存储区域的损伤更大,就会导致存储块中各个存储区域的使用寿命不均一,存在部分存储区域寿命短,部分存储区域寿命长的情况。而本申请实施例通过在对存储块进行擦除操作前先判断待擦除存储块是否写满,然后把未写满的待擦除存储块用填充数据写满,确保对待擦除存储块进行擦除操作时,待擦除存储块一定处于写满状态,从而确保了存储块中各个存储区域使用寿命的均一性。
请参考图1,图1示出了本申请实施例提供的一种电子设备的结构示意图。如图1所示,该电子设备100可以包括:至少一个处理器110、存储器120、用户接口130、至少一个网络接口140、触控屏150以及至少一个通信总线160。
其中,通信总线160可用于实现上述各个组件的连接通信。
其中,用户接口130可以包括按键,可选用户接口还可以包括标准的有线接口、无线接口。
其中,网络接口140可选的可以包括蓝牙模块、NFC模块、Wi-Fi模块等。
其中,通信总线160可用于实现上述各个组件的连接通信。
其中,处理器110可以包括一个或者多个处理核心。处理器110利用线路连接整个电子设备100内的各个部分,通过运行或执行存储在存储器120内的指令、程序、代码集或指令集,以及调用存储在存储器120内的数据,执行路由设备100的各种功能和处理数据。可选的,处理器110可以采用DSP、FPGA、PLA中的至少一种硬件形式来实现。处理器110可集成CPU、GPU和调制解调器等中的一种或几种的组合。
其中,存储器120可以包括易失性存储器例如RAM,也可以包括非易失性存储器例如ROM。易失性存储器是一种临时存储器,在这种存储器中,一旦断电,存储器中存储的数据就会丢失。非易失性存储器是一种永久性的存储器,即使断电,数据也不会丢失并保持存储在存储器中,用于数据的长期存储。本申请实施例所述的存储器为非易失性存储器。可选的,该存储器120包括非瞬时性计算机可读介质。存储器120可用于存储指令、程序、代码、代码集或指令集。存储器120可包括存储程序区和存储数据区,其中,存储程序区可存储用于实现操作系统的指令、用于至少一个功能的指令(比如数据擦除功能、数据写入功能等)、用于实现后续各个方法实施例的指令等;存储数据区可存储后续各个方法实施例中涉及到的数据等。存储器120可选的还可以是至少一个位于远离前述处理器110的存储装置。
具体地,处理器110可以用于调用存储器120中存储的数据擦除程序,并对待擦除块进行数据擦除,具体的数据擦除方法可参考后续实施例的介绍,此处暂不详述。
电子设备100例如可以包括:虚拟现实(VR)/增强现实(AR)设备(例如VR耳机等)、手持设备(例如非智能手机或智能手机、平板电脑等)、可穿戴设备(例如眼镜、腕表等)、汽车控制站、游戏控制台、电视机、笔记本电脑、台式计算机、上网本、多媒体中心、机顶盒、全球定位系统(GPS)、打印机、或任何其他适当的设备,在此不做限定。
接下来介绍本申请实施例涉及的存储器和存储块,如图2所示,非易失性存储器可以包括M个存储块:Block0、Block1、Block2…BlockM-1,M为正整数。每个存储块又可以进一步分为多个存储单元。如图3所示,每一个存储块可以包括个存储单元:cell0、cell1、cell2…cell-1,N为正整数。上述存储单元可以为单层式存储单元(Single Level Cell,SLC)、三层式存储单元(Triple Level Cell,TLC)、四层式存储单元(Quad Level Cell,QLC)等。每个存储单元对应一个存储地址。当向非易失性存储器中写入数据时,先确定要写入数据的一个或多个存储块,然后再确定一个或多个存储块中包括的要写入数据的一个或多个存储单元地址,然后根据相应的一个或多个存储单元地址写入数据。当非易失性存储器中存储的数据不需要时,可以对非易失性存储器进行擦除操作。在非易失性存储器进行擦除操作时,先确定一个或多个待擦除存储块,然后通过对一个或多个待擦除存储块进行擦除操作来实现对非易失性存储器存储的数据擦除。
接下来结合图1-图3,介绍本申请实施例提供的数据擦除方法。请参考图4,其提供了一种数据擦除方法的流程图。该数据擦除方法包括:
步骤401,确定待擦除存储块。
具体的,将非易失性存储器中需要进行擦除操作的存储块称为待擦除存储块。本领域技术人员可以根据实际应用场景确定待擦除存储块的个数,即本申请中确定的待擦除存储块可以是一个,也可以是多个,本申请对此不作具体限定。
步骤402,判断所述待擦除存储块是否写满。
具体的,当确定了待擦除存储块之后,在对其进行擦除操作前,要先对待擦除存储块是否写满进行判断,即判断所述待擦除存储块能够存储数据的所有存储区域是否均已写入数据。若所述待擦除存储块存在未写入数据的存储区域,即所述待擦除存储块未写满,则执行步骤403。
可选的,若所述待擦除存储块能够存储数据的所有存储区域均已写入数据,即所述待擦除存储块已写满,则直接执行步骤404。
当确定了多个待擦除存储块时,就判断多个待擦除存储块中所有能够存储数据的存储区域是否均已写入了数据。若多个待擦除存储块中存在未写入数据的存储区域的待擦除存储块,即未写满的待擦除存储块,则将未写满的待擦除存储块执行步骤403。
可选的,若多个待擦除存储块中存在所有能够存储数据的存储区域均已写入数据的待擦除存储块,即已写满的待擦除存储块,则将已写满的待擦除存储块执行步骤404。
在本申请实施例中,当确定了多个待擦除存储块时,多个待擦除存储块执行判断所述待擦除存储块是否写满的步骤可以同时进行,也可以按照一定的顺序依次进行,本申请对此不作具体限定。
步骤403,在所述待擦除存储块未写满区域写入填充数据。
具体的,当待擦除存储块存在未写入数据的存储区域时,在待擦除存储块中未写入数据的存储区域写入填充数据,相当于将未写满的待擦除存储块写满。其中,填充数据可以为任何存储块能够存储的二进制数据,如:0、1、01等。
步骤404,擦除所述待擦除存储块中存储的数据。
具体的,在待擦除存储块未写满区域写入填充数据之后,即在将未写满的待擦除存储块写满后,对待擦除存储块中所有存储区域所存储的数据进行擦除。
可选的,在多个待擦除存储块未写满区域写入填充数据之后,即在将多个未写满的待擦除存储块写满后,对多个待擦除存储块中所有存储区域所存储的数据进行擦除。当多个待擦除存储块进行擦除操作时,多个待擦除存储块执行擦除所述待擦除存储块中存储的数据的步骤可以同时进行,也可以按照一定的顺序依次进行,本申请对此不作具体限定。
在本实施例中,在确定待擦除存储块之后,先判断待擦除存储块是否写满,在待擦除存储块未写满的情况下,在待擦除存储块未写满的区域写入填充数据,然后才执行擦除待擦除存储块中存储的数据的步骤。相当于当待擦除存储块未写满时,先在未写满的区域写入填充数据,然后,才会对待擦除存储块中存储的数据进行擦除,也就是在未写满的存储块被填充数据写满之后才对存储块中存储的数据进行擦除,从而使擦除操作对待擦除存储块各个存储区域的损伤程度相同,保证了待擦除存储块各个存储区域使用寿命的均一性。当确定了多个待擦除存储块时,上述方法在保证多个待擦除存储块各个存储区域使用寿命的均一性的同时,也使多个待擦除存储块之间的使用寿命比较均衡。
可选的,在所述待擦除存储块写满的情况下,即判断所述待擦除存储块是否写满的结果为是时,擦除所述待擦除存储块中存储的数据。相当于只有确定了待擦除存储块已写满时,才会直接对待擦除存储块执行擦除操作,限定了待擦除存储块直接执行擦除操作的前提条件,进一步保证了待擦除存储块中各个存储区域使用寿命的均一性。
请参考图5,其提供了另一种数据擦除方法的流程图。在本实施例中,所述待擦除存储块包括N个存储单元,N为正整数,该数据擦除方法包括:
步骤501,确定待擦除存储块。
具体的,步骤501与步骤401一致,此处不再赘述。
步骤502,判断所述待擦除存储块包括的所述N个存储单元是否均写满。
具体的,每一个待擦除存储块都包括有N个存储单元,数据分别存于存储单元中,当待擦除存储块包括的每一个存储单元均写满时,可以判断待擦除存储块已写满,则执行步骤504;当待擦除存储块中存在未写满的存储单元时,可以判断待擦除存储块未写满,则执行步骤503。
步骤503,在所述待擦除存储块未写满区域写入填充数据。
具体的,步骤503与步骤403一致,此处不再赘述。
步骤504,擦除所述待擦除存储块中存储的数据。
具体的,步骤504与步骤404一致,此处不再赘述。
在本实施例中,通过判断所述待擦除存储块包括的所述N个存储单元是否均写满来判断所述待擦除存储块是否写满,当待擦除存储块中存在未写满的存储单元时,在所述待擦除存储块中未写满区域写入填充数据,直到待擦除存储块被写满,最后再擦除所述待擦除存储块中存储的数据,从而既能够更为具体准确地去判断所述待擦除存储块是否写满的同时,又保证了待擦除存储块各个存储区域使用寿命的均一性。
请参考图6,其提供了另一种数据擦除方法的流程图。在本实施例中,所述待擦除存储块包括N个存储单元,N为正整数,该数据擦除方法包括:
步骤601,确定待擦除存储块。
具体的,步骤601与步骤401一致,此处不再赘述。
步骤602,判断所述待擦除存储块包括的所述N个存储单元是否均写满。
具体的,步骤602与步骤502一致,此处不再赘述。
步骤603,在所述待擦除存储块中未写满的存储单元写入填充数据。
具体的,当待擦除存储块中存在未写满的存储单元时,在所述待擦除存储块中未写满的存储单元中写入填充数据,使待擦除存储块中存在的未写满的存储单元达到写满状态,相当于将待擦除存储块写满。其中,所述填充数据为所述未写满的存储单元还能够存储的最大存储量的数据,即存储单元的最高态。
可选的,当待擦除存储块中存在未写满的存储单元时,在所述待擦除存储块中未写满的存储单元中写入填充数据,然后执行步骤602,判断写入填充数据后,所述待擦除存储块包括的所述N个存储单元是否均写满,若写入填充数据后的待擦除存储块包括的每一个存储单元均写满时,可以判断待擦除存储块中未写满的存储单元已被填充数据写满,则执行步骤604;若写入填充数据后的待擦除存储块中还存在未写满的存储单元时,可以判断待擦除存储块还未被填充数据写满,则执行步骤603。
步骤604,擦除所述待擦除存储块包括的所述N个存储单元中存储的数据。
具体的,当待擦除存储块中存在的未写满的存储单元达到写满状态,即待擦除存储块已写满后,在对待擦除存储块执行擦除操作时,会对待擦除存储块中包括每一个存储单元中存储的数据进行擦除,从而达到对待擦除存储块进行擦除的目的。
在本实施例中,通过判断所述待擦除存储块包括的所述N个存储单元是否均写满来判断所述待擦除存储块是否写满,使所述待擦除存储块的未写满区域更加直观具体;当待擦除存储块中存在未写满的存储单元时,在所述待擦除存储块中未写满的存储单元写入填充数据,直到待擦除存储块被写满,最后再擦除所述待擦除存储块包括的所述N个存储单元中存储的数据,这时擦除操作对于待擦除存储块中的每一个存储单元的损伤一致,从而使得各个存储单元的使用寿命均一,解决了待擦除存储块中存在的部分存储单元寿命短,部分存储单元寿命长的问题。
请参考图7,其提供了另一种数据擦除方法的流程图。该数据擦除方法包括:
步骤701,确定待擦除存储块。
步骤701与步骤401一致,此处不再赘述。
步骤702,从所述预设数据表中读取所述待擦除存储块对应的指示值。
具体的,所述预设数据表包括各个存储块的数据写入状态的指示值。所述指示值包括第一指示值和第二指示值;其中,所述第一指示值用于表征对应的存储块的数据写入状态为未写满,所述第二指示值用于表征对应的存储块的数据写入状态为已写满。
示例性地,第一指示值可以为0,第二指示值可以为1。具体举例如图8所示的预设数据表:待擦除存储块Block0和Block1分别对应的指示值Indicator均为第一指示值,也就是0,表明待擦除存储块Block0和Block1的数据写入状态均未写满;待擦除存储块Block2对应的指示值Indicator为第二指示值,也就是1,表明擦除待擦除存储块Block2的数据写入状态为已写满。
不限于第一指示值为0,第二指示值为1,在具体实现中,第一指示值和第二指示值还可以为其它的值,本申请实施例对此不作限定。
步骤703,根据预设数据表判断所述待擦除存储块是否写满。
具体的,当从所述预设数据表中读取的所述待擦除存储块对应的指示值为第一指示值时,确定所述待擦除存储块未写满,则执行步骤504;当从所述预设数据表中读取的所述待擦除存储块对应的指示值为第二指示值时,所述待擦除存储块已写满,则执行步骤706。
步骤704,确定所述待擦除存储块中未写入数据的存储单元地址。
具体的,上述预设数据表除了可以包括各个存储块的数据写入状态的指示值之外,还可以包括每个存储块包括的N个存储单元对应的N个存储地址:address0、address1、address2…addressN-1,N为正整数。当读取的所述待擦除存储块对应的指示值为第一指示值时,即在所述待擦除存储块未写满的情况下,根据所述预设数据表中记录的所述待擦除存储块中已写入数据的存储单元的地址,确定所述待擦除存储块中未写入数据的存储单元地址。具体举例如图9所示:待擦除存储块Block0包括9个呈3×3分布的存储单元,存储器中存在有与待擦除存储块Block0的数据写入状态相对应的预设数据表,待擦除存储块Block0对应的预设数据表中包括这9个存储单元对应的地址分别为:address0、address1、address2…address8。当待擦除存储块Block0对应的预设数据表中的指示值Indicator为第一指示值,即待擦除存储块Block0未写满时,由图9可知:待擦除存储块Block0包括的存储单元cell0、cell1、cell2、cell3和cell4分别对应的地址address0、address1、address2、address3和address4已被记录在预设数据表中,根据预设数据表中原来包括的9个存储单元对应的地址,可以确定还没有记录的存储单元地址为:address5、address6、address7、address8,即可以确定待擦除存储块Block0包括的存储单元cell5、cell6、cell7、cell8均未写入数据。
步骤705,在所述待擦除存储块中未写入数据的存储单元地址中写入填充数据。
具体的,在根据预设数据表确定所述待擦除存储块中未写入数据的存储单元地址中写入填充数据。在待擦除存储块中未写入数据的存储单元地址中写入填充数据后,重新执行步骤702。
具体举例如图10所示:在未写满的待擦除存储块Block0对应的预设数据表中没有记录的存储单元地址address5、address6、address7、address8对应的存储单元cell5、cell6、cell7、cell8中写入填充数据,则相对应的预设数据表中没有记录的存储单元地址在写入填充数据后也会产生相应的记录,当待擦除存储块Block0包括的各个存储单元地址在相对应的预设数据表均有记录时,待擦除存储块Block0对应的预设数据表中的指示值Indicator就会由第一指示值0变为第二指示值1。
步骤706,擦除所述待擦除存储块包括的所述N个存储单元中存储的数据。
步骤706与步骤604一致,此处不再赘述。
本实施例中,每一个预设数据表中都有与待擦除存储块写入数据状态对应的指示值,使待擦除存储块写入数据状态具体化,便于计算机判断待擦除存储块写入数据的状态;当待擦除存储块处于未写满状态时,根据所述预设数据表中已记录的存储单元地址,确定没有记录的存储单元地址,然后在没有记录的存储单元地址中写入填充数据,提高了写入填充数据的效率,同时,在保证待擦除存储块包括的N个存储单元使用寿命均一性的同时,也提高了擦除的效率。
不限于上述实施例中提供的预设数据表可以包括各个存储块的数据写入状态的指示值以及每个存储块包括的N个存储单元对应的N个存储地址,在具体实现中,预设数据表可以直接包括每个存储块包括的N个存储单元的数据写入状态的指示值。基于此,本申请实施例提供了另外一种数据擦除方法。
请参考图11,该数据擦除方法至少可以包括以下几个步骤:
步骤1101,确定待擦除存储块。
步骤1101与步骤401一致,此处不再赘述。
步骤1102,根据预设数据表判断所述待擦除存储块是否写满。
具体的,在待擦除存储块对应的预设数据表中,每一个存储单元的数据写入状态对应一个指示值,当存储单元未写入数据时,其对应第一指示值;当存储单元已写入数据时,其对应第二指示值。其中,第一指示值可以为0,第二指示值可以为1,但不限于第一指示值为0,第二指示值为1,在具体实现中,第一指示值和第二指示值还可以为其它的值,本申请实施例对此不作限定。当在存储块包括的存储单元中写入数据时,与存储块相对应的预设数据表中存储单元相对应的指示值就会由第一指示值0变为第二指示值1。
具体的,当从所述预设数据表中读取的所述待擦除存储块包括的N个存储单元的指示值均为第二指示值1时,即待擦除存储块已写满,则执行步骤1104;当从所述预设数据表中读取的所述待擦除存储块包括的N个存储单元的指示值不均为第二指示值1,即存在指示值为第一指示值0的存储单元时,即待擦除存储块未写满,则执行步骤1103。
具体举例如图12所示:图12为与存储块相对应的预设数据表的示意图,图10中一共有2个存储块Block0、Block1,每一个存储块包括9个存储单元,这9个存储单元呈3×3分布。当在两个存储块包括的存储单元中分别写入数据时,在预设数据表中2个存储块相对应的写入数据的存储单元的指示值就会由第一指示值0变为第二指示值1。
如图12中的Block0所示:Block0对应的预设数据表中读取的9个存储单元的指示值不均为第二指示值1,其存在指示值为第一指示值0的存储单元,即判断待擦除存储块未写满,则执行步骤1103。
如图12中的Block1所示:Block1对应的预设数据表中读取的9个存储单元的指示值均为第二指示值1,即判断待擦除存储块已写满,则执行步骤1104。
步骤1103,在所述待擦除存储块中未写满的存储单元写入填充数据。
具体的,当预设数据表中存在指示值为第一指示值0的存储单元时,即所述待擦除存储块未写满时,在待擦除存储块对应的预设数据表显示的指示值为第一指示值0的存储单元中写入填充数据。此时,待擦除存储块相对应的预设数据表中写入填充数据的存储单元的指示值由第一指示值0变为第二指示值1。
具体举例如图13所示:图12中在Block0包括的5个指示值为第一指示值0的存储单元中写入填充数据,则与Block0相对应的预设数据表中这5个存储单元的指示值由第一指示值0变为第二指示值1,如图13所示,即可以理解为将这5个存储单元已被填充数据写满,此时Block0对应的预设数据表中所有的存储单元的指示值均为第二指示值1,即均已被写满,则未写满的待擦除存储块Block0已被填充数据写满。
步骤1104,擦除所述待擦除存储块包括的所述N个存储单元中存储的数据。
步骤1104与步骤604一致,此处不再赘述。
在本实施例中,通过预设数据表可以直观反映待擦除存储块包括的存储单元是否均写满,根据预设数据表中对应的待擦除存储块的存储单元的写入数据的情况判断所述待擦除存储块是否写满,使判断过程更为直观,同时便于开发人员直观了解各个存储块具体的写入数据的状态。
请参考图14,其提供了一种数据擦除装置示意图。该数据擦除装置1200包括:
确定模块1410,用于确定待擦除存储块;
判断模块1420,用于判断所述待擦除存储块是否写满;
写入模块1430,用于在所述待擦除存储块未写满的情况下,在所述待擦除存储块未写满的区域写入虚拟填充数据;
擦除模块1440,用于擦除所述待擦除存储块中存储的数据。
在一种可能的实现方式中,所述擦除模块1440还用于:在所述待擦除存储块写满的情况下,擦除所述待擦除存储块中存储的数据。
在一种可能的实现方式中,所述待擦除存储块包括N个存储单元,N为正整数;
所述判断模块1420,具体用于判断所述待擦除存储块包括的所述N个存储单元是否均写满;
所述写入模块1430包括:
确定单元,用于在所述待擦除存储块包括的所述N个存储单元中存在有存储单元未写满的情况下,确定所述待擦除存储块未写满。
在一种可能的实现方式中,所述写入模块1430,具体用于在所述待擦除存储块包括的所述N个存储单元中存在有存储单元未写满的情况下,在所述待擦除存储块中未写满的存储单元写入虚拟填充数据;
所述擦除模块1440,具体用于擦除所述待擦除存储块包括的所述N个存储单元中存储的数据。
在一种可能的实现方式中,所述判断模块1420具体用于:根据预设数据表判断所述待擦除存储块是否写满;所述预设数据表包括各个存储块的数据写入状态的指示值。
在一种可能的实现方式中,所述指示值包括第一指示值和第二指示值;其中,所述第一指示值用于表征对应的存储块的数据写入状态为未写满,所述第二指示值用于表征对应的存储块的数据写入状态为已写满。
在一种可能的实现方式中,数据擦除装置还包括:读取模块,用于从所述预设数据表中读取所述待擦除存储块对应的指示值;
判断模块1420,具体用于根据所述待擦除存储块对应的指示值判断所述待擦除存储块是否写满。
在一种可能的实现方式中,所述预设数据表还包括各个存储块中已写入数据的存储单元的地址;
所述确定单元,具体用于在所述待擦除存储块未写满的情况下,根据所述预设数据表中包括的所述待擦除存储块中已写入数据的存储单元的地址,确定所述待擦除存储块中未写入数据的存储单元地址;
所述写入模块1430,具体用于在所述待擦除存储块中未写入数据的存储单元地址中写入虚拟填充数据。
上述数据擦除装置中各模块的划分仅用于举例说明,在其他实施例中,可将数据擦除装置按照需要划分为不同的模块,以完成上述数据擦除装置的全部或部分功能。本申请实施例中提供的数据擦除装置中的各个模块的实现可为计算机程序的形式。该计算机程序可在终端或服务器上运行。该计算机程序构成的程序模块可存储在终端或服务器的存储器上。该计算机程序被处理器执行时,实现本申请实施例中所描述的数据擦除方法的全部或部分步骤。
本申请实施例还提供了一种计算机可读存储介质,该计算机可读存储介质中存储有指令,当其在计算机或处理器上运行时,使得计算机或处理器执行上述图4或图5或图6或图7或图11所示实施例中的一个或多个步骤。上述电子设备的各组成模块如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在所述计算机可读取存储介质中。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者通过所述计算机可读存储介质进行传输。所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(Digital SubscriberLine,DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,数字多功能光盘(Digital VersatileDisc,DVD))、或者半导体介质(例如,固态硬盘(Solid State Disk,SSD))等。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,可以通过计算机程序来指令相关的硬件来完成,该程序可存储于计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可存储程序代码的介质。在不冲突的情况下,本实施例和实施方案中的技术特征可以任意组合。
以上所述的实施例仅仅是本申请的优选实施例方式进行描述,并非对本申请的范围进行限定,在不脱离本申请的设计精神的前提下,本领域普通技术人员对本申请的技术方案作出的各种变形及改进,均应落入本申请的权利要求书确定的保护范围内。
Claims (11)
1.一种数据擦除方法,其特征在于,包括:
确定待擦除存储块;
判断所述待擦除存储块是否写满;
在所述待擦除存储块未写满的情况下,在所述待擦除存储块未写满的区域写入填充数据;
擦除所述待擦除存储块中存储的数据。
2.如权利要求1所述的方法,其特征在于,所述判断所述待擦除存储块是否写满之后,所述方法还包括:
在所述待擦除存储块写满的情况下,擦除所述待擦除存储块中存储的数据。
3.如权利要求1所述的方法,其特征在于,所述待擦除存储块包括N个存储单元,N为正整数;
所述判断所述待擦除存储块是否写满,包括:判断所述待擦除存储块包括的所述N个存储单元是否均写满;
在所述待擦除存储块包括的所述N个存储单元中存在有存储单元未写满的情况下,确定所述待擦除存储块未写满。
4.如权利要求3所述的方法,其特征在于,所述在所述待擦除存储块未写满的情况下,在所述待擦除存储块未写满的区域写入填充数据,包括:
在所述待擦除存储块包括的所述N个存储单元中存在有存储单元未写满的情况下,在所述待擦除存储块中未写满的存储单元写入填充数据;
所述擦除所述待擦除存储块中存储的数据,包括:擦除所述待擦除存储块包括的所述N个存储单元中存储的数据。
5.如权利要求3所述的方法,其特征在于,所述判断所述待擦除存储块是否写满,包括:
根据预设数据表判断所述待擦除存储块是否写满;所述预设数据表包括各个存储块的数据写入状态的指示值。
6.如权利要求5所述的方法,其特征在于,所述指示值包括第一指示值和第二指示值;其中,所述第一指示值用于表征对应的存储块的数据写入状态为未写满,所述第二指示值用于表征对应的存储块的数据写入状态为已写满。
7.如权利要求6所述的方法,其特征在于,所述判断所述待擦除存储块是否写满之前,所述方法还包括:
从所述预设数据表中读取所述待擦除存储块对应的指示值;
所述判断所述待擦除存储块是否写满,包括:根据所述待擦除存储块对应的指示值判断所述待擦除存储块是否写满。
8.如权利要求5或6或7所述的方法,其特征在于,所述预设数据表还包括各个存储块中已写入数据的存储单元的地址;
所述在所述待擦除存储块未写满的情况下,在所述待擦除存储块未写满的区域写入填充数据,包括:
在所述待擦除存储块未写满的情况下,根据所述预设数据表中包括的所述待擦除存储块中已写入数据的存储单元的地址,确定所述待擦除存储块中未写入数据的存储单元地址;
在所述待擦除存储块中未写入数据的存储单元地址中写入填充数据。
9.一种数据擦除装置,其特征在于,包括:
确定模块,用于确定待擦除存储块;
判断模块,用于判断所述待擦除存储块是否写满;
写入模块,用于在所述待擦除存储块未写满的情况下,在所述待擦除存储块未写满的区域写入填充数据;
擦除模块,用于擦除所述待擦除存储块中存储的数据。
10.一种电子设备,其特征在于,包括:处理器和存储器;其中,所述存储器存储有计算机程序,所述计算机程序适于由处理器加载并执行如权利要求1-8任一项的方法步骤。
11.一种计算机存储介质,其特征在于,所述计算机存储介质存储有多条指令,所述指令适于由处理器加载并执行如权利要求1-8任一项的方法步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111081886.3A CN113946288A (zh) | 2021-09-15 | 2021-09-15 | 数据擦除方法、装置、电子设备及计算机存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111081886.3A CN113946288A (zh) | 2021-09-15 | 2021-09-15 | 数据擦除方法、装置、电子设备及计算机存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113946288A true CN113946288A (zh) | 2022-01-18 |
Family
ID=79328445
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111081886.3A Pending CN113946288A (zh) | 2021-09-15 | 2021-09-15 | 数据擦除方法、装置、电子设备及计算机存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113946288A (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101419841A (zh) * | 2008-12-09 | 2009-04-29 | 苏州大学 | 一种flash存储器擦写方法 |
WO2015098894A1 (ja) * | 2013-12-27 | 2015-07-02 | 住友電装株式会社 | データ記憶装置、車載データ記憶装置及びデータ記憶方法 |
CN104978148A (zh) * | 2014-04-09 | 2015-10-14 | 瑞萨电子(中国)有限公司 | 数据写入方法及装置、数据读取方法及装置 |
CN106155915A (zh) * | 2015-04-16 | 2016-11-23 | 中兴通讯股份有限公司 | 数据存储的处理方法及装置 |
CN110764704A (zh) * | 2019-10-18 | 2020-02-07 | 浙江大华技术股份有限公司 | 一种环境变量写入方法、存储介质及电子装置 |
-
2021
- 2021-09-15 CN CN202111081886.3A patent/CN113946288A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101419841A (zh) * | 2008-12-09 | 2009-04-29 | 苏州大学 | 一种flash存储器擦写方法 |
WO2015098894A1 (ja) * | 2013-12-27 | 2015-07-02 | 住友電装株式会社 | データ記憶装置、車載データ記憶装置及びデータ記憶方法 |
CN104978148A (zh) * | 2014-04-09 | 2015-10-14 | 瑞萨电子(中国)有限公司 | 数据写入方法及装置、数据读取方法及装置 |
CN106155915A (zh) * | 2015-04-16 | 2016-11-23 | 中兴通讯股份有限公司 | 数据存储的处理方法及装置 |
CN110764704A (zh) * | 2019-10-18 | 2020-02-07 | 浙江大华技术股份有限公司 | 一种环境变量写入方法、存储介质及电子装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104866542A (zh) | 一种poi数据验证方法和装置 | |
CN110019081A (zh) | 数据持久化处理方法、装置、系统及可读存储介质 | |
CN110989926A (zh) | 故障磁盘槽位定位方法、装置及电子设备 | |
CN109710286B (zh) | 系统升级方法、装置、设备和存储介质 | |
CN105242879A (zh) | 一种数据存储方法以及协议服务器 | |
CN103458004A (zh) | 物联网设备签约信息变更方法和设备 | |
CN113311992A (zh) | 固态硬盘预留空间的动态调整方法及装置 | |
CN110096413A (zh) | 一种磁盘定位方法、系统及电子设备和存储介质 | |
CN110990356B (zh) | 一种用于逻辑镜像的实时自动扩容方法和系统 | |
CN111752834A (zh) | 自动化测试方法和装置 | |
CN112596949B (zh) | 一种高效率的ssd删除数据恢复方法及系统 | |
CN107146098B (zh) | 一种广告运营配置方法及其设备 | |
CN107148612A (zh) | 一种扩展用户分区的方法和装置 | |
CN113946288A (zh) | 数据擦除方法、装置、电子设备及计算机存储介质 | |
CN115202589B (zh) | 放置组成员选择方法、装置、设备及可读存储介质 | |
CN111245940A (zh) | 用于物联网通信模块中移动通信号码数据的处理方法、装置 | |
CN110837381A (zh) | 投影设备的软件升级方法及装置 | |
CN113391882B (zh) | 虚拟机内存管理方法、装置、存储介质及电子设备 | |
CN106793016B (zh) | 一种无线保真Wi-Fi连接方法及移动终端 | |
CN103955386A (zh) | 存储设备固件升级的方法及装置 | |
CN107422987A (zh) | 一种在非易失性存储器中存储数据的方法及装置 | |
CN111262871B (zh) | 一种数据处理方法及装置、存储介质 | |
CN111190549A (zh) | 一种共享卷可用容量获取方法、装置、设备及介质 | |
CN113282237A (zh) | 分区创建方法、装置、存储介质及计算机设备 | |
CN105867961A (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 |