CN108958651A - 脏数据块擦除方法、装置、设备 - Google Patents
脏数据块擦除方法、装置、设备 Download PDFInfo
- Publication number
- CN108958651A CN108958651A CN201810565604.9A CN201810565604A CN108958651A CN 108958651 A CN108958651 A CN 108958651A CN 201810565604 A CN201810565604 A CN 201810565604A CN 108958651 A CN108958651 A CN 108958651A
- Authority
- CN
- China
- Prior art keywords
- controller
- erasing
- dirty data
- storage medium
- write
- 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
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/0604—Improving or facilitating administration, e.g. storage management
- G06F3/0607—Improving or facilitating administration, e.g. storage management by facilitating the process of upgrading existing storage systems, e.g. for improving compatibility between host and storage device
-
- 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
- G06F3/0679—Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
Abstract
本公开提供一种脏数据块擦除方法、装置及设备,所述方法应用于电子设备的主机端,所述电子设备还包括闪存,所述闪存包括控制器和存储介质,所述方法包括:确定是否满足预设擦除条件;确定预设擦除条件满足时,向所述控制器发送擦除所有脏数据块的擦除指令,所述擦除指令用于指示所述控制器擦除所述存储介质内所有脏数据块。由于每次擦除时控制器能擦除存储介质内所有脏数据块,因此可以减少后台操作触发次数,提高用户体验。
Description
技术领域
本申请涉及数据处理技术领域,尤其涉及脏数据块擦除方法、装置、设备。
背景技术
快闪存储器(flash memory),是一种电子式可清除程序化只读存储器的形式,允许在操作中被多次擦或写的存储器。在很多具有控制器的闪存中,耗损平均技术(WearLeveling)、垃圾回收技术(Garbage Collection,缩写为GC)等都是由闪存中控制器完成,以降低中央处理器(CPU,Central Processing Unit)中主机端(host端)的开发难度。伴随着闪存芯片的使用和用户数据的写入和删除,在闪存芯片中都会产生大量的脏数据块(dirty block,又可以称为脏块)。而在闪存中dirty block只有执行了擦除操作后,才能被重新使用。dirty block的擦除,是由闪存内控制器实现。当dirty block的数量大于预设阈值时,闪存中控制器可以向host端发送后台操作请求。host端可以停止读写,并给闪存中控制器发送指令,以便控制器执行后台操作。然而,为了让主机端能执行其他读写操作,控制器仅会执行预定义时间的后台操作。可见,在该预定义时间内并不能保证所有dirty block会被擦除,因此会增加触发后台操作的频率。
发明内容
为克服相关技术中存在的问题,本公开提供了脏数据块擦除方法、装置、设备。
根据本公开实施例的第一方面,提供一种脏数据块擦除方法,所述方法应用于电子设备的主机端,所述电子设备还包括闪存,所述闪存包括控制器和存储介质,所述方法包括:
确定是否满足预设擦除条件;
确定预设擦除条件满足时,向所述控制器发送擦除所有脏数据块的擦除指令,所述擦除指令用于指示所述控制器擦除所述存储介质内所有脏数据块。
在一个可选的实现方式中,所述预设擦除条件包括以下至少一种条件:
在指定的空闲时间段内,执行擦除操作的次数未超过预设次数;
在指定的空闲时间段内执行擦除操作的次数未超过预设次数、且所述电子设备的电量满足预设的电量充裕条件;
检测到用户触发事件。
在一个可选的实现方式中,所述擦除指令包括禁读写擦除指令或可读写擦除指令,所述禁读写擦除指令用于表示控制器擦除所有脏数据块期间,所述存储介质被禁止进行读操作或写操作;所述可读写擦除指令用于表示所述控制器擦除所有脏数据块期间,所述存储介质允许进行读或写操作。
根据本公开实施例的第二方面,提供一种脏数据块擦除方法,电子设备包括主机端和闪存,所述闪存包括控制器和存储介质,所述方法应用于所述控制器,包括:
接收所述主机端发送的擦除指令;
根据所述擦除指令擦除所述存储介质内所有脏数据块。
在一个可选的实现方式,中所述擦除指令包括禁读写擦除指令或可读写擦除指令,所述禁读写擦除指令用于表示控制器擦除所有脏数据块期间,所述存储介质被禁止进行读操作或写操作;所述可读写擦除指令用于表示所述控制器擦除所有脏数据块期间,所述存储介质允许进行读或写操作。
根据本公开实施例的第三方面,提供一种脏数据块擦除装置,所述装置设于电子设备中,电子设备包括主机端和闪存,所述闪存包括控制器和存储介质,所述装置包括设于主机端的条件判断模块和数据发送模块、以及设于控制器中的数据擦除模块;
所述条件判断模块,被配置为确定是否满足预设擦除条件;
所述数据发送模块,被配置为在确定预设擦除条件满足时,向所述控制器发送擦除所有脏数据块的擦除指令;
所述数据擦除模块,被配置为根据所述擦除指令,擦除所述存储介质内所有脏数据块。
在一个可选的实现方式中,所述预设擦除条件包括以下至少一种条件:
在指定的空闲时间段内,执行擦除操作的次数未超过预设次数;
在指定的空闲时间段内执行擦除操作的次数未超过预设次数、且所述电子设备的电量满足预设的电量充裕条件;
检测到用户触发事件。
在一个可选的实现方式中,所述擦除指令包括禁读写擦除指令或可读写擦除指令,所述禁读写擦除指令用于表示控制器擦除所有脏数据块期间,所述存储介质被禁止进行读操作或写操作;所述可读写擦除指令用于表示所述控制器擦除所有脏数据块期间,所述存储介质允许进行读或写操作。
根据本公开实施例的第四方面,提供一种脏数据块擦除装置,电子设备包括主机端和闪存,所述闪存包括控制器和存储介质,所述装置设于所述主机端,所述装置包括:
条件判断模块,被配置为确定是否满足预设擦除条件;
数据发送模块,被配置为在确定预设擦除条件满足时,向所述控制器发送擦除所有脏数据块的擦除指令,所述擦除指令用于指示所述控制器擦除所述存储介质内所有脏数据块。
根据本公开实施例的第五方面,提供一种脏数据块擦除装置,电子设备包括主机端和闪存,所述闪存包括控制器和存储介质,所述装置设于所述控制器,包括:
数据接收模块,被配置为接收所述主机端发送的擦除指令;
数据擦除模块,被配置为根据所述擦除指令擦除所述存储介质内所有脏数据块。
根据本公开实施例的第六方面,提供一种电子设备,包括主机端和闪存,所述闪存包括控制器和存储介质;
主机端确定是否满足预设擦除条件,在确定预设擦除条件满足时,向所述控制器发送擦除所有脏数据块的擦除指令;
所述控制器根据所述擦除指令,擦除所述存储介质内所有脏数据块。
本公开的实施例提供的技术方案可以包括以下有益效果:
本公开实施例通过主机端在预设擦除条件满足时,向控制器发送擦除所有脏数据块的擦除指令;控制器根据擦除指令,擦除存储介质内所有脏数据块。由于每次擦除时控制器能擦除存储介质内所有脏数据块,因此可以减少后台操作触发次数,提高用户体验。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。
图1A是本公开根据一示例性实施例示出的一种电子设备示意图。
图1B是本公开根据一示例性实施例示出的一种脏数据块擦除方法的流程图。
图1C是本公开根据一示例性实施例示出的一种脏数据块擦除的对比示意图。
图2是本公开根据一示例性实施例示出的另一种脏数据块擦除方法的流程图。
图3是本公开根据一示例性实施例示出的另一种脏数据块擦除方法的流程图。
图4是本公开根据一示例性实施例示出的一种脏数据块擦除装置的框图。
图5是本公开根据一示例性实施例示出的另一种脏数据块擦除装置的框图。
图6是本公开根据一示例性实施例示出的另一种脏数据块擦除装置的框图。
图7是本公开根据一示例性实施例示出的一种用于脏数据块擦除的装置的框图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。
在本公开使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本公开。在本公开和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本公开可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本公开范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
在eMMC(Embedded Multi Media Card)、UFS(Universal Flash Storage,通用闪存存储)等Nand-flash存储器中,耗损平均技术(Wear Leveling)、垃圾回收技术(GarbageCollection,缩写为GC)等都是由闪存芯片中的控制器完成,以降低CPU中主机端(host端)的开发难度。在闪存中的控制器可以维护映射表,所述映射表用于将逻辑地址空间中对主机端可用的逻辑地址转换为存储介质的物理地址空间中的物理地址。在电子设备中主机端可以通过闪存中的控制器对存储介质进行读/写操作。
伴随着闪存芯片的使用和用户数据的写入和删除,在闪存芯片中都会产生大量的脏数据块(dirty block,又可以称为脏块)。例如,主机端发送映射关系删除指令至控制器,控制器可以删除指令所对应的映射关系。然而,由于没有删除映射关系中物理地址所对应的数据,而主机端已无法读取该数据,则该数据为脏数据(失效数据),该数据块可以称为脏数据块。又如,闪存中控制器基于预置的逻辑将某数据块内的数据复制到另一数据块中,并修改逻辑地址与物理地址的映射关系。而主机可以从新数据块中读取到数据,而并非从旧数据块中读取数据,因此,旧数据块为脏数据块。
可见,产生dirty block的可能性有很多种。而在闪存芯片中会产生大量的dirtyblock,dirty block只有真正执行了物理擦除之后,才能被重新使用。dirty block的擦除,是由闪存芯片内的控制器实现,当dirty block的数量大于预设阈值(取决于控制器固件的设计)时,闪存芯片中控制器可以向host端发送后台操作请求。host端可以停止读写,并给闪存芯片中控制器发送指令,以便控制器执行后台操作。然而,为了让主机端能执行其他读写操作,控制器仅会执行预定义时间的后台操作。可见,在该预定义时间内并不能保证所有dirty block会被擦除,因此会增加触发后台操作的频率。
鉴于此,为了减少后台操作触发次数,本公开实施例提供一种脏数据块擦除方法,通过主机端在预设擦除条件满足时,向控制器发送擦除所有脏数据块的擦除指令;控制器根据擦除指令,擦除存储介质内所有脏数据块。由于每次擦除时控制器能擦除存储介质内所有脏数据块,因此可以减少后台操作触发次数,提高用户体验。
以下结合附图对本公开实施例进行示例说明。
首先,对本公开实施例所涉及的架构图进行示例说明。如图1A所示,图1A是本公开根据一示例性实施例示出的一种电子设备示意图。电子设备100包括主机端120(host端)和闪存140,所述闪存140包括控制器142(controller端)和存储介质144。可见,本公开实施例中的闪存是包括控制器的闪存。主机端可以是设置在CPU内可以对存储介质144进行读写操作的端。
本公开实施例中脏数据块擦除方法可以应用于电子设备中,如图1B所示,图1B是本公开根据一示例性实施例示出的一种脏数据块擦除方法的流程图,该方法可以包括以下步骤:
在步骤101中,主机端在预设擦除条件满足时,向控制器发送擦除所有脏数据块的擦除指令;
在步骤102中,所述控制器根据所述擦除指令,擦除所述存储介质内所有脏数据块。
本公开实施例中,电子设备可以是智能手机、平板电脑、PDA(Personal DigitalAssistant,个人数字助理)、个人计算机(PC)等包括闪存的电子设备,其中,闪存是包括控制器的闪存,例如,eMMC(Embedded Multi Media Card)、UFS(Universal Flash Storage,通用闪存存储)等Nand-flash存储器。
其中,主机端可以通过控制器对存储介质进行读、写、擦除等操作。例如,主机端需要进行写入操作时,可以将待写入数据以及逻辑地址发送至控制器,控制器基于映射关系,将待写入数据写入与逻辑地址对应的物理地址所对应数据块中。映射表用于将逻辑地址与物理地址进行映射。
在本公开实施例中,主机端可以主动判断预设擦除条件是否满足,而不限于受控制器指示而执行擦除操作。
关于预设擦除条件,预设擦除条件可以是预先设置的用于进行擦除的条件。在一个例子中,预设擦除条件可以是预先设置的用于指示此时进行擦除操作不会对用户造成影响的条件,以实现在该条件下执行擦除操作,不会影响用户。一方面,用户没有使用电子设备时,则此时对电子设备进行擦除操作不会对用户造成影响,因此,预设擦除条件可以包括电子设备处于指定的空闲时间段。空闲时间段可以是用于表示电子设备处于非使用状态的时间段。另一方面,用户主动触发,指示电子设备进行擦除操作,则判定此时的擦除操作不会对用户造成影响。因此,预设擦除条件可以包括:检测到用户触发事件。
以下列举几种预设擦除条件进行示例说明。
在一个可选的实现方式中,预设擦除条件可以包括:在指定的空闲时间段内,执行擦除操作的次数未超过预设次数。
其中,空闲时间段可以是预设的用户不操作电子设备的时间段。在一个例子中,空闲时间段可以是根据大众休息时间而确定的空闲时间段。例如,空闲时间段可以是凌晨2:00至4:00。然而,有些用户的休息时间和大众休息时间不同,特别是需要上夜班的医生或程序员等,鉴于此,空闲时间段可以基于用户的历史作息时间进行个性化设定。
预设次数可以是预先设置的擦除操作次数。由于每次擦除操作执行的是全清除操作,因此,在一个例子中,预设次数可以是1。如图1C所示,图1C是本公开根据一示例性实施例示出的一种脏数据块擦除的对比示意图。相关技术中,是在脏数据块的数量达到预设阈值时,主动触发执行数据擦除,然而擦除存在一个最大超时,在时间到达时,停止擦除,因此无法保证是否擦除完所有脏数据块,同时也无法保证本次擦除是否会影响用户操作。此外,由于没有擦除完所有脏数据块,因此脏数据块可能很快又会达到阈值,又会执行擦除操作,即后台操作频率高。而本公开实施例在闲时执行一次dirty block全清除的擦除指令,既不影响用户体验,又能降低后台操作(擦除操作)触发的频率。
可以理解的是,在本公开实施例中,仍可以保留原机制中:脏数据块大于设定阈值时,执行指定时间的擦除操作。同时,由于本公开实施例在擦除条件满足时会执行dirtyblock全清除的擦除操作,因此,既能避免全清除前设备卡顿的情况,又能大大降低擦除频率。
可见,在该实施例中,通过在指定空闲时间段触发执行擦除所有脏数据块的操作,既不影响用户操作电子设备,又可以一次性清除所有脏数据,避免由于清楚脏数据耗时较多,影响用户操作电子设备。
在另一个可选的实现方式中,预设擦除条件可以包括:在指定的空闲时间段内执行擦除操作的次数未超过预设次数、且所述电子设备的电量满足预设的电量充裕条件。
其中,空闲时间段可以是预设的用户不操作电子设备的时间段。预设次数可以是预先设置的擦除操作次数。电量充裕条件可以是电子设备当前电量大于或等于预设电量阈值。预设电量阈值可以是至少进行擦除操作所需电量。
可见,在该实施例中,在电子设备的电量充足且处于空闲时间段,通过在指定空闲时间段触发执行擦除所有脏数据块的操作,既不影响用户操作电子设备,又可以一次性清除所有脏数据,避免由于清楚脏数据耗时较多,影响用户操作电子设备,同时又可以避免电量不足导致清除操作中断。
在另一个可选的实现方式中,预设擦除条件可以包括:检测到用户触发事件。
其中,用户触发事件可以是由用户触发操作产生的触发事件。例如,用户触发指定按钮或按钮而生成的触发事件。可以理解的是,这里的用户不限于电子设备拥有者,还可以是电子设备生产人员等。指定按钮或按键可以是预先设置的用于触发执行擦除所有脏数据块操作的按钮或按键。例如,在类似于垃圾处理等上层应用中增加一个脏数据块擦除控件,用户可以主动触发该控件,以实现触发执行擦除所有脏数据块操作。又如,用户操作电子设备过程中,发现设备卡顿,则可以执行一次清理操作。又如,在电子设备在工厂测试完成、且烧录用户版本之前,通过用户的触发操作,电子设备可以检测到用户触发事件。电子设备在工厂测试阶段,往往烧录的是工厂版本,在工厂测试完成后,往往会烧录用户版本。然而由于烧录了工厂版本时涉及写入操作,则可能产生脏数据块,因此,在电子设备在工厂测试完成、且烧录用户版本之前,执行一次擦除所有脏数据块操作,可以实现用户拿到电子设备后,保证设备中脏数据块处于一个比较低的水平。
可见,该实施例是通过用户主动触发的方式实现触发执行擦除所有脏数据块的操作,由于用户主动触发,因此表示此时进行擦除操作不会对用户造成影响。
可以理解的是,上述条件还可以进行组合,组合条件中任意一条条件满足,即可判定预设擦除条件满足,主机端可以向控制器发送擦除所有脏数据块的擦除指令。例如,一种组合条件可以是:在指定的空闲时间段内,执行擦除操作的次数未超过预设次数;检测到用户触发事件。又如,另一种组合条件可以是:在指定的空闲时间段内执行擦除操作的次数未超过预设次数、且所述电子设备的电量满足预设的电量充裕条件;检测到用户触发事件。另外,预设擦除条件还可以是其他擦除条件,在此不一一列举。
在预设擦除条件满足时,可以执行一次擦除所有脏数据块操作,也可以执行多次擦除所有脏数据块操作。由于一次擦除所有脏数据块操作已经擦除完所有脏数据块,而脏数据块往往又不会在短时间内很快产生,因此,预设擦除条件满足时,可以仅执行一次擦除所有脏数据块操作。
关于预设擦除指令,擦除指令用于指示控制器擦除存储介质内所有脏数据块。在一个例子中,擦除指令可以包括禁读写擦除指令。所谓禁读写擦除指令,即表示控制器擦除所有脏数据块期间,所述存储介质被禁止进行读操作或写操作。可见,控制器执行擦除所有脏数据块期间不能进行读写,可以更快的清除所有的脏数据块。
在另一个例子中,擦除指令可以包括可读写擦除指令。所谓可读写擦除指令,即表示所述控制器擦除所有脏数据块期间,所述存储介质允许进行读或写操作。可见,在控制器执行擦除所有脏数据块期间,主机端可以对存储介质进行读写操作,虽然读写性能会受到比较大的影响,但仍能进行读写操作,给用户提供一种可选择手段。
在不同的预设擦除条件下可以执行不同的擦除指令。例如,在指定的空闲时间段内执行擦除操作的次数未超过预设次数、且电子设备的电量满足预设的电量充裕条件时,主机端可以向控制器发送擦除所有脏数据块的禁读写擦除指令;又如,在用户手动触发的场景中,用户可以选择触发生成禁读写擦除指令,也可以选择触发生成可读写擦除指令,具体根据用户需求进行触发。又如,在电子设备在工厂测试完成、且烧录用户版本之前,主机端可以向控制器发送擦除所有脏数据块的禁读写擦除指令,从而实现一次性清除。
另外,由于控制器中包括映射关系,因此控制器可以快速确定哪些数据块为脏数据块,进而对脏数据块进行擦除,具体擦除操作同相关技术中的擦除操作,在此不一一赘述。
以上实施方式中的各种技术特征可以任意进行组合,只要特征之间的组合不存在冲突或矛盾,但是限于篇幅,未进行一一描述,因此上述实施方式中的各种技术特征的任意进行组合也属于本说明书公开的范围。
接下来,可以分别从主机端和控制器的角度对本公开实施例进行示例说明。
如图2所示,图2是本公开根据一示例性实施例示出的另一种脏数据块擦除方法的流程图,所述方法应用于电子设备的主机端,所述电子设备还包括闪存,所述闪存包括控制器和存储介质,所述方法包括:
在步骤201中,确定是否满足预设擦除条件;
在步骤202中,确定预设擦除条件满足时,向所述控制器发送擦除所有脏数据块的擦除指令,所述擦除指令用于指示所述控制器擦除所述存储介质内所有脏数据块。
可以理解的是,步骤201和202与步骤101中相关技术相同,在此不再一一赘述。
在一个可选的实现方式中,所述预设擦除条件包括以下至少一种条件:
在指定的空闲时间段内,执行擦除操作的次数未超过预设次数;
在指定的空闲时间段内执行擦除操作的次数未超过预设次数、且所述电子设备的电量满足预设的电量充裕条件;
检测到用户触发事件。
在一个可选的实现方式中,所述擦除指令包括禁读写擦除指令或可读写擦除指令,所述禁读写擦除指令用于表示控制器擦除所有脏数据块期间,所述存储介质被禁止进行读操作或写操作;所述可读写擦除指令用于表示所述控制器擦除所有脏数据块期间,所述存储介质允许进行读或写操作。
如图3所示,图3是本公开根据一示例性实施例示出的另一种脏数据块擦除方法的流程图,电子设备包括主机端和闪存,所述闪存包括控制器和存储介质,所述方法应用于所述控制器,包括:
在步骤301中,接收所述主机端发送的擦除指令;
在步骤302中,根据所述擦除指令擦除所述存储介质内所有脏数据块。
在一个可选的实现方式中,所述擦除指令包括禁读写擦除指令或可读写擦除指令,所述禁读写擦除指令用于表示控制器擦除所有脏数据块期间,所述存储介质被禁止进行读操作或写操作;所述可读写擦除指令用于表示所述控制器擦除所有脏数据块期间,所述存储介质允许进行读或写操作。
可见,本公开实施例通过一次性擦除所有脏数据块,可以降低擦除脏数据块的频率,给用户带来便利。
与前述脏数据块擦除方法的实施例相对应,本公开还提供了脏数据块擦除装置、装置所应用的设备的实施例。
如图4所示,图4是本公开根据一示例性实施例示出的一种脏数据块擦除装置的框图,所述装置设于电子设备中,电子设备包括主机端和闪存,所述闪存包括控制器和存储介质,所述装置包括设于主机端的条件判断模块410和数据发送模块420、以及设于控制器中的数据擦除模块430;
所述条件判断模块410,被配置为确定是否满足预设擦除条件;
所述数据发送模块420,被配置为在确定预设擦除条件满足时,向所述控制器发送擦除所有脏数据块的擦除指令;
所述数据擦除模块430,被配置为根据所述擦除指令,擦除所述存储介质内所有脏数据块。
在一个可选的实现方式中,所述预设擦除条件包括以下至少一种条件:
在指定的空闲时间段内,执行擦除操作的次数未超过预设次数;
在指定的空闲时间段内执行擦除操作的次数未超过预设次数、且所述电子设备的电量满足预设的电量充裕条件;
检测到用户触发事件。
在一个可选的实现方式中,所述擦除指令包括禁读写擦除指令或可读写擦除指令,所述禁读写擦除指令用于表示控制器擦除所有脏数据块期间,所述存储介质被禁止进行读操作或写操作;所述可读写擦除指令用于表示所述控制器擦除所有脏数据块期间,所述存储介质允许进行读或写操作。
如图5所示,图5是本公开根据一示例性实施例示出的另一种脏数据块擦除装置的框图,电子设备包括主机端和闪存,所述闪存包括控制器和存储介质,所述装置设于所述主机端,所述装置包括:
条件判断模块510,被配置为确定是否满足预设擦除条件;
数据发送模块520,被配置为在确定预设擦除条件满足时,向所述控制器发送擦除所有脏数据块的擦除指令,所述擦除指令用于指示所述控制器擦除所述存储介质内所有脏数据块。
在一个可选的实现方式中,所述预设擦除条件包括以下至少一种条件:
在指定的空闲时间段内,执行擦除操作的次数未超过预设次数;
在指定的空闲时间段内执行擦除操作的次数未超过预设次数、且所述电子设备的电量满足预设的电量充裕条件;
检测到用户触发事件。
在一个可选的实现方式中,所述擦除指令包括禁读写擦除指令或可读写擦除指令,所述禁读写擦除指令用于表示控制器擦除所有脏数据块期间,所述存储介质被禁止进行读操作或写操作;所述可读写擦除指令用于表示所述控制器擦除所有脏数据块期间,所述存储介质允许进行读或写操作。
如图6所示,图6是本公开根据一示例性实施例示出的另一种脏数据块擦除装置的框图,电子设备包括主机端和闪存,所述闪存包括控制器和存储介质,所述装置设于所述控制器,包括:
数据接收模块610,被配置为接收所述主机端发送的擦除指令;
数据擦除模块620,被配置为根据所述擦除指令擦除所述存储介质内所有脏数据块。
在一个可选的实现方式中,所述擦除指令包括禁读写擦除指令或可读写擦除指令,所述禁读写擦除指令用于表示控制器擦除所有脏数据块期间,所述存储介质被禁止进行读操作或写操作;所述可读写擦除指令用于表示所述控制器擦除所有脏数据块期间,所述存储介质允许进行读或写操作。
相应的,本公开还提供一种电子设备,包括主机端和闪存,所述闪存包括控制器和存储介质;
主机端确定是否满足预设擦除条件,在确定预设擦除条件满足时,向所述控制器发送擦除所有脏数据块的擦除指令;
所述控制器根据所述擦除指令,擦除所述存储介质内所有脏数据块。
相应的,本公开还提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述任一项所述方法的步骤。
本公开可采用在一个或多个其中包含有程序代码的存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。计算机可用存储介质包括永久性和非永久性、可移动和非可移动媒体,可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括但不限于:相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。
上述装置中各个模块的功能和作用的实现过程具体详情见上述方法中对应步骤的实现过程,在此不再赘述。
对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理模块,即可以位于一个地方,或者也可以分布到多个网络模块上。可以根据实际的需要选择其中的部分或者全部模块来实现本公开方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
如图7所示,图7是本公开根据一示例性实施例示出的一种用于脏数据块擦除的装置的框图。该装置700可以是具有带控制器的闪存的移动电话,计算机,数字广播终端,消息收发设备,游戏控制台,平板设备,医疗设备,健身设备,个人数字助理等终端。
参照图7,装置700可以包括以下一个或多个组件:处理组件702,存储器704,电源组件706,多媒体组件708,音频组件710,输入/输出(I/O)的接口712,传感器组件714,以及通信组件716。
处理组件702通常控制装置700的整体操作,诸如与显示,电话呼叫,数据通信,相机操作和记录操作相关联的操作。处理组件702可以包括一个或多个处理器720来执行指令,以完成上述的方法的全部或部分步骤。此外,处理组件702可以包括一个或多个模块,便于处理组件702和其他组件之间的交互。例如,处理组件702可以包括多媒体模块,以方便多媒体组件708和处理组件702之间的交互。
存储器704被配置为存储各种类型的数据以支持在装置700的操作。这些数据的示例包括用于在装置700上操作的任何应用程序或方法的指令,联系人数据,电话簿数据,消息,图片,视频等。存储器704可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘。
电源组件706为装置700的各种组件提供电力。电源组件706可以包括电源管理系统,一个或多个电源,及其他与为装置700生成、管理和分配电力相关联的组件。
多媒体组件708包括在所述装置700和用户之间的提供一个输出接口的屏幕。在一些实施例中,屏幕可以包括液晶显示器(LCD)和触摸面板(TP)。如果屏幕包括触摸面板,屏幕可以被实现为触摸屏,以接收来自用户的输入信号。触摸面板包括一个或多个触摸传感器以感测触摸、滑动和触摸面板上的手势。所述触摸传感器可以不仅感测触摸或滑动动作的边界,而且还检测与所述触摸或滑动操作相关的持续时间和压力。在一些实施例中,多媒体组件708包括一个前置摄像头和/或后置摄像头。当装置700处于操作模式,如拍摄模式或视频模式时,前置摄像头和/或后置摄像头可以接收外部的多媒体数据。每个前置摄像头和后置摄像头可以是一个固定的光学透镜系统或具有焦距和光学变焦能力。
音频组件710被配置为输出和/或输入音频信号。例如,音频组件710包括一个麦克风(MIC),当装置700处于操作模式,如呼叫模式、记录模式和语音识别模式时,麦克风被配置为接收外部音频信号。所接收的音频信号可以被进一步存储在存储器704或经由通信组件716发送。在一些实施例中,音频组件710还包括一个扬声器,用于输出音频信号。
I/O接口712为处理组件702和外围接口模块之间提供接口,上述外围接口模块可以是键盘,点击轮,按钮等。这些按钮可包括但不限于:主页按钮、音量按钮、启动按钮和锁定按钮。
传感器组件714包括一个或多个传感器,用于为装置700提供各个方面的状态评估。例如,传感器组件714可以检测到装置700的打开/关闭状态,组件的相对定位,例如所述组件为装置700的显示器和小键盘,传感器组件714还可以检测装置700或装置700中一个组件的位置改变,用户与装置700接触的存在或不存在,装置700方位或加速/减速和装置700的温度变化。传感器组件714可以包括接近传感器,被配置用来在没有任何的物理接触时检测附近物体的存在。传感器组件714还可以包括光传感器,如CMOS或CCD图像传感器,用于在成像应用中使用。在一些实施例中,该传感器组件714还可以包括加速度传感器,陀螺仪传感器,磁传感器,压力传感器或温度传感器。
通信组件716被配置为便于装置700和其他设备之间有线或无线方式的通信。装置700可以接入基于通信标准的无线网络,如WiFi,2G或3G,或它们的组合。在一个示例性实施例中,通信组件716经由广播信道接收来自外部广播管理系统的广播信号或广播相关信息。在一个示例性实施例中,所述通信组件716还包括近场通信(NFC)模块,以促进短程通信。例如,在NFC模块可基于射频识别(RFID)技术,红外数据协会(IrDA)技术,超宽带(UWB)技术,蓝牙(BT)技术和其他技术来实现。
在示例性实施例中,装置700可以被一个或多个应用专用集成电路(ASIC)、数字信号处理器(DSP)、数字信号处理设备(DSPD)、可编程逻辑器件(PLD)、现场可编程门阵列(FPGA)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述方法。
在示例性实施例中,电子设备包括主机端和闪存,所述闪存包括控制器和存储介质,电子设备中主机端和控制器可以执行以完成上述方法。例如,主机端在预设擦除条件满足时,向所述控制器发送擦除所有脏数据块的擦除指令;所述控制器根据所述擦除指令,擦除所述存储介质内所有脏数据块。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其它实施方案。本公开旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由下面的权利要求指出。
应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限制。
以上所述仅为本公开的较佳实施例而已,并不用以限制本公开,凡在本公开的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本公开保护的范围之内。
Claims (11)
1.一种脏数据块擦除方法,其特征在于,所述方法应用于电子设备的主机端,所述电子设备还包括闪存,所述闪存包括控制器和存储介质,所述方法包括:
确定是否满足预设擦除条件;
确定预设擦除条件满足时,向所述控制器发送擦除所有脏数据块的擦除指令,所述擦除指令用于指示所述控制器擦除所述存储介质内所有脏数据块。
2.根据权利要求1所述的方法,其特征在于,所述预设擦除条件包括以下至少一种条件:
在指定的空闲时间段内,执行擦除操作的次数未超过预设次数;
在指定的空闲时间段内执行擦除操作的次数未超过预设次数、且所述电子设备的电量满足预设的电量充裕条件;
检测到用户触发事件。
3.根据权利要求1所述的方法,其特征在于,所述擦除指令包括禁读写擦除指令或可读写擦除指令,所述禁读写擦除指令用于表示控制器擦除所有脏数据块期间,所述存储介质被禁止进行读操作或写操作;所述可读写擦除指令用于表示所述控制器擦除所有脏数据块期间,所述存储介质允许进行读或写操作。
4.一种脏数据块擦除方法,其特征在于,电子设备包括主机端和闪存,所述闪存包括控制器和存储介质,所述方法应用于所述控制器,包括:
接收所述主机端发送的擦除指令;
根据所述擦除指令擦除所述存储介质内所有脏数据块。
5.根据权利要求4所述的方法,其特征在于,所述擦除指令包括禁读写擦除指令或可读写擦除指令,所述禁读写擦除指令用于表示控制器擦除所有脏数据块期间,所述存储介质被禁止进行读操作或写操作;所述可读写擦除指令用于表示所述控制器擦除所有脏数据块期间,所述存储介质允许进行读或写操作。
6.一种脏数据块擦除装置,其特征在于,所述装置设于电子设备中,电子设备包括主机端和闪存,所述闪存包括控制器和存储介质,所述装置包括设于主机端的条件判断模块和数据发送模块、以及设于控制器中的数据擦除模块;
所述条件判断模块,被配置为确定是否满足预设擦除条件;
所述数据发送模块,被配置为在确定预设擦除条件满足时,向所述控制器发送擦除所有脏数据块的擦除指令;
所述数据擦除模块,被配置为根据所述擦除指令,擦除所述存储介质内所有脏数据块。
7.根据权利要求6所述的装置,其特征在于,所述预设擦除条件包括以下至少一种条件:
在指定的空闲时间段内,执行擦除操作的次数未超过预设次数;
在指定的空闲时间段内执行擦除操作的次数未超过预设次数、且所述电子设备的电量满足预设的电量充裕条件;
检测到用户触发事件。
8.根据权利要求6所述的装置,其特征在于,所述擦除指令包括禁读写擦除指令或可读写擦除指令,所述禁读写擦除指令用于表示控制器擦除所有脏数据块期间,所述存储介质被禁止进行读操作或写操作;所述可读写擦除指令用于表示所述控制器擦除所有脏数据块期间,所述存储介质允许进行读或写操作。
9.一种脏数据块擦除装置,其特征在于,电子设备包括主机端和闪存,所述闪存包括控制器和存储介质,所述装置设于所述主机端,所述装置包括:
条件判断模块,被配置为确定是否满足预设擦除条件;
数据发送模块,被配置为在确定预设擦除条件满足时,向所述控制器发送擦除所有脏数据块的擦除指令,所述擦除指令用于指示所述控制器擦除所述存储介质内所有脏数据块。
10.一种脏数据块擦除装置,其特征在于,电子设备包括主机端和闪存,所述闪存包括控制器和存储介质,所述装置设于所述控制器,包括:
数据接收模块,被配置为接收所述主机端发送的擦除指令;
数据擦除模块,被配置为根据所述擦除指令擦除所述存储介质内所有脏数据块。
11.一种电子设备,其特征在于,包括主机端和闪存,所述闪存包括控制器和存储介质;
主机端确定是否满足预设擦除条件,在确定预设擦除条件满足时,向所述控制器发送擦除所有脏数据块的擦除指令;
所述控制器根据所述擦除指令,擦除所述存储介质内所有脏数据块。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810565604.9A CN108958651A (zh) | 2018-06-04 | 2018-06-04 | 脏数据块擦除方法、装置、设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810565604.9A CN108958651A (zh) | 2018-06-04 | 2018-06-04 | 脏数据块擦除方法、装置、设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN108958651A true CN108958651A (zh) | 2018-12-07 |
Family
ID=64493057
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810565604.9A Pending CN108958651A (zh) | 2018-06-04 | 2018-06-04 | 脏数据块擦除方法、装置、设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108958651A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110569001A (zh) * | 2019-09-17 | 2019-12-13 | 深圳忆联信息系统有限公司 | 基于固态硬盘的L2P表dirty位标记方法和装置 |
CN111427510A (zh) * | 2019-01-10 | 2020-07-17 | 西部数据技术公司 | 用于后台管理操作的优化调度的数据存储系统和方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040044873A1 (en) * | 2002-08-29 | 2004-03-04 | Wanmo Wong | Linear object management for a range of flash memory |
CN101147133A (zh) * | 2005-02-16 | 2008-03-19 | 桑迪士克股份有限公司 | 闪速存储器中的直接文件数据编程及删除 |
CN102622310A (zh) * | 2011-01-30 | 2012-08-01 | 成都市华为赛门铁克科技有限公司 | 无效数据擦除方法、装置及系统 |
-
2018
- 2018-06-04 CN CN201810565604.9A patent/CN108958651A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040044873A1 (en) * | 2002-08-29 | 2004-03-04 | Wanmo Wong | Linear object management for a range of flash memory |
CN101147133A (zh) * | 2005-02-16 | 2008-03-19 | 桑迪士克股份有限公司 | 闪速存储器中的直接文件数据编程及删除 |
CN102622310A (zh) * | 2011-01-30 | 2012-08-01 | 成都市华为赛门铁克科技有限公司 | 无效数据擦除方法、装置及系统 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111427510A (zh) * | 2019-01-10 | 2020-07-17 | 西部数据技术公司 | 用于后台管理操作的优化调度的数据存储系统和方法 |
CN111427510B (zh) * | 2019-01-10 | 2023-10-24 | 西部数据技术公司 | 用于后台管理操作的优化调度的数据存储系统和方法 |
CN110569001A (zh) * | 2019-09-17 | 2019-12-13 | 深圳忆联信息系统有限公司 | 基于固态硬盘的L2P表dirty位标记方法和装置 |
CN110569001B (zh) * | 2019-09-17 | 2020-09-22 | 深圳忆联信息系统有限公司 | 基于固态硬盘的L2P表dirty位标记方法和装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110110262A (zh) | 浏览器内存管理方法、装置和设备 | |
KR20140013548A (ko) | 사용자 단말 장치 및 그의 제어 방법 | |
CN107291626B (zh) | 数据存储方法和装置 | |
KR20160005670A (ko) | 응용 프로그램의 삭제 프롬프팅 방법, 장치, 프로그램 및 기록매체 | |
TW200935281A (en) | Terminal and method for performing function therein | |
CN104615546B (zh) | 文件数据管理方法及装置 | |
CN105468264B (zh) | 根据操控方式对应用程序进行操控的方法、装置与终端设备 | |
JP2012203899A (ja) | ユーザーインターフェースをカスタマイズする方法とその電子装置 | |
CN109471596A (zh) | 数据写入方法、装置、设备及存储介质 | |
CN106776908B (zh) | 数据清理方法、装置及终端 | |
KR101601032B1 (ko) | 메모리 카드의 장착이 가능한 이동 단말기 및 그의 메모리 카드 관리 방법 | |
CN106648730A (zh) | 异常应用的处理方法和装置 | |
CN105955808B (zh) | 即时通信应用的任务管理方法及装置 | |
CN104298424A (zh) | 一种文件操作方法及装置 | |
CN104020990A (zh) | 日期选择控件显示方法及装置 | |
CN108958651A (zh) | 脏数据块擦除方法、装置、设备 | |
CN109634762B (zh) | 一种数据回收方法、装置、电子设备及存储介质 | |
CN103870955B (zh) | 网页中数据的处理方法及装置 | |
CN104951710A (zh) | 实现快速访问的方法及装置 | |
CN105827834A (zh) | 一种移动设备应用方法及装置 | |
CN105957011B (zh) | 图片处理方法及装置 | |
CN107577810A (zh) | 数据写入方法、装置及计算机可读存储介质 | |
CN107239236A (zh) | 数据写入方法及装置 | |
CN106383856A (zh) | 管理文件系统配额的方法及装置 | |
CN106484480A (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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20181207 |
|
RJ01 | Rejection of invention patent application after publication |