一种终端碎片整理方法、装置以及终端制造方法及图纸

技术编号:27567139 阅读:15 留言:0更新日期:2021-03-09 22:12
本申请实施例提供一种终端碎片整理方法、装置以及终端,涉及终端领域,用以通过解决终端内部的碎片化问题,提升终端性能。该方法应用于具有闪存存储器件和管理设备的终端中,闪存存储器件包括闪存控制器和存储介质;该方法包括:终端处于性能恢复模式下,闪存控制器接收管理设备发送的用于指示闪存控制器整理存储介质的存储空间的第一操作指令;响应于第一操作指令,闪存控制器确定存储在Q个存储块中的M个存储块中的多个碎片文件;多个碎片文件在M个存储块中对应的第一物理地址不连续;闪存控制器根据多个碎片文件的大小,将多个碎片文件存储于Q个存储块中的N个存储块中,多个碎片文件在N个存储块中对应的第二物理地址连续。续。续。

【技术实现步骤摘要】
一种终端碎片整理方法、装置以及终端


[0001]本申请实施例涉及终端领域,尤其涉及一种终端碎片整理方法、装置以及终端。

技术介绍

[0002]采用安卓(android)系统的终端(例如,手机等)逐渐成为终端市场的主流。当前android系统通常使用嵌入式多媒体存储卡(embedded multi media card,eMMC)或通用闪存存储(Universal Flash Storage,UFS)作为闪存存储器件。
[0003]eMMC和UFS属于闪存(flash memory)的不同种类。闪存存储介质中包含一个或多个存储块,用于存储数据。闪存存储的一个特性是在写入数据之前,需要先擦除原有的数据。随着终端长时间使用,反复的读、写、擦除操作,使得闪存存储器件碎片化现象越来越严重,大量碎片化的文件存储在闪存存储器件中,占据有限的存储空间,从而引起存储空间紧张。当闪存的存储空间不足时,为了回收存储空间,终端需要对该闪存存储器件进行垃圾回收(garbage collection,GC)操作。该GC操作的目的是回收存储块中已经置为无效的物理页,重新利用被置为无效的物理页存储数据。GC操作导致终端读写请求的数据得不到及时响应,就直接导致了系统的卡顿,android系统的响应速度也会因此变得越来越慢。
[0004]目前,在eMMC内部块碎片化达到预设阈值时(一般是可使用的存储块数量<10),处于紧急(URGENT)模式时,终端会在eMMC处于空闲状态时整理碎片文件,在整理到预设比例后停止整理。这个时候电子设备写操作会快速执行完毕,但是电子设备在使用一段时间后,写操作又会被GC操作打断。这是由于刚刚整理的存储块,由于个数比较少或者说器件内部没有彻底整理干净,导致应用创建新的文件,很容易使用完这些新的存储快。进而使得终端的卡顿依然很频繁。

技术实现思路

[0005]本申请实施例提供一种终端碎片整理方法、装置以及终端,用以通过解决终端内部的碎片化问题,提升终端性能。
[0006]为了解决上述技术问题,本申请实施例提供如下技术方案:
[0007]第一方面,本申请实施例提供一种终端碎片整理方法,应用于具有闪存存储器件和管理设备的终端中,闪存存储器件包括闪存控制器和存储介质,存储介质包括Q个存储块,Q为大于或等于1的整数;本申请实施例提供的方法包括:终端处于性能恢复模式下,闪存控制器接收管理设备发送的第一操作指令;其中,第一操作指令用于指示闪存控制器整理存储介质的存储空间;响应于第一操作指令,闪存控制器确定存储在Q个存储块中的M个存储块中的多个碎片文件;Q≥M≥1,M为整数;多个碎片文件在M个存储块中对应的第一物理地址不连续;闪存控制器根据多个碎片文件的大小,将多个碎片文件存储于Q个存储块中的N个存储块中。M≥N≥1,且N为整数,多个碎片文件在N个存储块中对应的第二物理地址连续。
[0008]本申请实施例提供一种终端碎片整理方法,由于闪存存储器件被使用一段时间
后,随着反复地写入文件和删除文件,闪存存储器件中连续的未被占用的存储空间越来越小,从而使同一文件不能被整体存储在连续的未被占用的存储空间,而是被分散成多个碎片文件,保存到闪存存储器件的不同空闲空间中。这样后续在写入新的文件时,需要将新的文件写入不连续的存储空间中,这样会导致终端读写性能下降,本申请实施例通过在终端处于性能恢复模式的情况下,闪存控制器接收管理设备发送的用于指示闪存控制器整理存储在存储介质中的碎片文件的第一操作指令,并根据第一操作指令,确定存储在存储介质中的多个碎片文件,该多个碎片文件对应的第一物理地址不连续,然后闪存控制器根据多个碎片文件的大小,将多个碎片文件存储于Q个存储块中的N个存储块中。这样可以在终端处于性能恢复模式,由闪存存储器件中的闪存控制器对碎片文件进行整理,此外,由于多个碎片文件在N个存储块中对应的第二物理地址连续,这样可以充分利用存储介质的存储空间,使得可剩余的未被占用的存储块数量增多,从而提升终端性能。
[0009]在一种可能的实现方式中,任一个碎片文件的第一物理地址为当任一个碎片文件存储在M个存储块中时的物理地址;任一个碎片文件的第二物理地址为当任一个碎片文件存储在N个存储块中时的物理地址。
[0010]在一种可能的实现方式中,N个存储块的地址连续,M个存储块的地址不连续。通过将多个碎片文件存储在地址连续的N个存储块中可以节约闪存存储器件的存储空间。
[0011]在一种可能的实现方式中,闪存控制器确定存储在Q个存储块中的M个存储块中的多个碎片文件,包括:闪存控制器确定多个碎片文件中每个碎片文件在各自所在的存储块中的存储位置;闪存控制器根据每个碎片文件在各自所在的存储块中的存储位置,确定存储在M个存储块中的多个碎片文件。
[0012]在一种可能的实现方式中,闪存控制器确定多个碎片文件中每个碎片文件在各自所在的存储块中的存储位置,包括:闪存控制器确定每个碎片文件对应的第一物理地址;闪存控制器根据每个碎片文件对应的第一物理地址,确定每个碎片文件在各自所在的存储块中的存储位置。
[0013]在一种可能的实现方式中,闪存控制器确定每个碎片文件对应的第一物理地址,包括:闪存控制器确定每个碎片文件对应的逻辑地址;闪存控制器根据地址映射表以及每个碎片文件对应的逻辑地址,确定每个碎片文件对应的第一物理地址;地址映射表至少包括每个碎片文件对应的逻辑地址与每个碎片文件各自的第一物理地址之间的映射关系。
[0014]在一种可能的实现方式中,闪存控制器根据多个碎片文件的大小,将多个碎片文件存储于Q个存储块中的N个存储块中之后,本申请实施例提供的方法还包括:闪存控制器根据每个碎片文件各自在N个存储块中对应的第二物理地址,更新地址映射表。其中,更新后的地址映射表至少包括:每个碎片文件各自对应的第二物理地址与每个碎片文件各自对应的逻辑地址之间的映射关系。
[0015]在一种可能的实现方式中,闪存控制器接收管理设备发送的查询命令,查询命令用于查询控制器是否整理完存储介质的存储空间。闪存控制器向管理设备发送查询响应,查询响应用于指示闪存控制器整理存储介质的存储空间的进度。例如,查询响应用于指示已整理完存储介质的存储空间,或,查询响应用于指示未整理完存储介质的存储空间。这样使得管理设备可以确定性能恢复进度。
[0016]在一种可能的实现方式中,本申请实施例提供的当多个碎片文件中任一个碎片文
件的物理地址由第一物理地址变为第二物理地址后,本申请实施例提供的方法还包括:闪存控制器擦除存储在第一物理地址对应的存储空间上的碎片文件。
[0017]第二方面,本申请实施例提供一种整理文件碎片的方法,应用于具有闪存存储器件和管理设备的终端中,闪存存储器件包括控制器和存储介质,存储介质包括Q个存储块,Q为大于或等于1的整数,本申请实施例提供的方法还包括:管理设备确定终端的系统性能小于或等于预设阈值;管理设备控制终端处于性能恢复模式;管理设备向控制器发送第一操作指令,第一操作指令用本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种终端碎片整理方法,其特征在于,应用于具有闪存存储器件和管理设备的终端中,所述闪存存储器件包括闪存控制器和存储介质,所述存储介质包括Q个存储块,Q为大于或等于1的整数;所述方法包括:所述终端处于性能恢复模式下,所述闪存控制器接收所述管理设备发送的第一操作指令;其中,所述第一操作指令用于指示所述闪存控制器整理所述存储介质的存储空间;响应于所述第一操作指令,所述闪存控制器确定存储在所述Q个存储块中的M个存储块中的多个碎片文件;Q≥M≥1,M为整数;所述多个碎片文件在所述M个存储块中对应的第一物理地址不连续;所述闪存控制器根据所述多个碎片文件的大小,将所述多个碎片文件存储于所述Q个存储块中的N个存储块中;M≥N≥1,且N为整数,所述多个碎片文件在所述N个存储块中对应的第二物理地址连续。2.根据权利要求1所述的方法,其特征在于,所述闪存控制器确定存储在所述Q个存储块中的M个存储块中的多个碎片文件,包括:所述闪存控制器确定所述多个碎片文件中每个碎片文件在各自所在的存储块中的存储位置;所述闪存控制器根据所述每个碎片文件在各自所在的存储块中的存储位置,确定存储在所述M个存储块中的所述多个碎片文件。3.根据权利要求2所述的方法,其特征在于,所述闪存控制器确定所述多个碎片文件中每个碎片文件在各自所在的存储块中的存储位置,包括:所述闪存控制器确定所述每个碎片文件对应的第一物理地址;所述闪存控制器根据所述每个碎片文件对应的第一物理地址,确定所述每个碎片文件在各自所在的存储块中的存储位置。4.根据权利要求3所述的方法,其特征在于,所述闪存控制器确定所述每个碎片文件对应的第一物理地址,包括:所述闪存控制器确定所述每个碎片文件对应的逻辑地址;所述闪存控制器根据地址映射表以及所述每个碎片文件对应的逻辑地址,确定所述每个碎片文件对应的第一物理地址;所述地址映射表至少包括所述每个碎片文件对应的逻辑地址与所述每个碎片文件各自的第一物理地址之间的映射关系。5.根据权利要求1-4任一项所述的方法,其特征在于,所述闪存控制器根据所述多个碎片文件的大小,将所述多个碎片文件存储于所述Q个存储块中的N个存储块中之后,所述方法还包括:所述闪存控制器根据每个碎片文件各自在所述N个存储块中对应的第二物理地址,更新地址映射表;其中,所述更新后的地址映射表至少包括:所述每个碎片文件各自对应的第二物理地址与所述每个碎片文件各自对应的逻辑地址之间的映射关系。6.根据权利要求1-5任一项所述的方法,其特征在于,所述方法还包括:所述闪存控制器接收所述管理设备发送的查询命令,所述查询命令用于查询所述闪存控制器是否整理完所述存储介质的存储空间;所述闪存控制器向所述管理设备发送查询响应,所述查询响应用于指示所述闪存控制器整理所述存储介质的存储空间的进度。
7.根据权利要求1-6任一项所述的方法,其特征在于,当所述多个碎片文件中任一个碎片文件的物理地址由第一物理地址变为第二物理地址后,所述方法还包括:所述闪存控制器擦除存储在所述第一物理地址对应的存储空间上的碎片文件。8.一种整理文件碎片的方法,其特征在于,应用于具有闪存存储器件和管理设备的终端中,所述闪存存储器件包括闪存控制器和存储介质,所述存储介质包括Q个存储块,Q为大于或等于1的整数,所述方法包括:所述管理设备确定所述终端的系统性能小于或等于预设阈值;所述管理设备控制所述终端处于性能恢复模式;所述管理设备向所述闪存控制器发送第一操作指令,所述第一操作指令用于指示所述控制器整理所述存储介质的存储空间。9.根据权利要求8所述的方法,其特征在于,所述管理设备控制所述终端处于性能恢复模式,包括:所述管理设备在所述终端的显示屏上显示第一提示消息,所述第一提示消息用于提示用户是否同意所述终端进入性能恢复模式;所述管理设备确定接收到来自所述用户的确认进入性能恢复模式的指令,所述管理设备控制所述终端处于性能恢复模式。10.根据权利要求8或9所述的方法,其特征在于,所述方法还包括:所述管理设备在所述终端的显示屏上显示第二提示消息,所述第二提示消息用于提示用户在所述终端处于性能恢复模式期间不能强制操作所述终端。11.根据权利要求8-10任一项所述的方法,其特征在于,所述方法还包括:所述管理设备按照预设周期周期性的向所述闪存控制器发送查询命令,所述查询命令用于查询所述闪存控制器是否整理完所述存储介质的存储空间;所述管理设备接收所述闪存控制器发送的查询响应,所述查询响应用于指示所述闪存控制器整理所述存储介质的存储空间的进度。12.根据权利要求8-11任一项所述的方法,其特征在于,所述方法还包括:所述管理设备确定所述闪存控制器整理完所述存储介质的存储空间;所述管理设备控制所述终端退出性能恢复模式,以及控制所述终端开机。13.一种闪存存储器件,其特征在于,应用于具有管理设备的终端中,所述闪存存储器件包括闪存控制器和存储介质,所...

【专利技术属性】
技术研发人员:任立鹏党健薛凯刘闯
申请(专利权)人:华为技术有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1