存储空间管理方法、电子设备及计算机可读存储介质技术

技术编号:37468002 阅读:11 留言:0更新日期:2023-05-06 09:44
本申请提供一种存储空间管理方法、电子设备及计算机可读存储介质。存储空间管理方法包括:在满足对存储空间进行GC整理的条件下,确定存储空间中待进行GC整理的各片段的碎片化率之间的大小关系,碎片化率用于表示片段中可写空间的不连续程度;按照碎片化率从大到小的顺序,依次对待进行GC整理的各片段进行GC整理。通过先整理碎片化率最大的片段,可以快速降低存储空间整体的碎片化率,即使GC整理被中断,也可以最大程度提高存储空间中可写空间的连续程度,进而提高电子设备的性能。进而提高电子设备的性能。进而提高电子设备的性能。

【技术实现步骤摘要】
存储空间管理方法、电子设备及计算机可读存储介质


[0001]本申请涉及存储空间管理技术的领域,尤其涉及一种存储空间管理方法、电子设备及计算机可读存储介质。

技术介绍

[0002]在电子设备使用一段时间后,电子设备会对存储空间进行垃圾回收(Garbage Collection,GC)整理,以降低存储空间中可写空间的不连续程度,使得新写入存储空间的数据尽可能连续,提高电子设备写入数据和读取数据的速度,进而提高电子设备的性能。
[0003]然而,电子设备在对存储空间进行GC整理时会占用电子设备的资源,因此一般在电子设备空闲时才进行GC整理,但当电子设备从空闲状态切换为非空闲状态时,GC整理的过程很容易被中断。在GC整理中断后,若电子设备未能及时再次进行GC整理,会导致可写空间的不连续程度增长较快,进而影响电子设备的性能。

技术实现思路

[0004]本申请提供一种存储空间管理方法、电子设备及计算机可读存储介质,以解决现有的技术中通过GC整理不能有效降低存储空间的不连续程度的问题。
[0005]为达到上述目的,本申请采用如下技术方案:
[0006]第一方面,提供一种存储空间管理方法,包括:在满足对存储空间进行GC整理的条件下,确定存储空间中待进行GC整理的各片段的碎片化率之间的大小关系,碎片化率用于表示片段中可写空间的不连续程度;按照碎片化率从大到小的顺序,依次对待进行GC整理的各片段进行GC整理。由于碎片化率最大的片段中可写空间的不连续程度最高,通过先整理碎片化率最大的片段,可以快速降低存储空间整体的碎片化率,即使GC整理被中断,也可以最大程度提高存储空间中可写空间的连续程度,进而提高电子设备的性能。
[0007]在一实施例中,所述按照所述碎片化率从大到小的顺序,依次对所述待进行GC整理的各片段进行GC整理,包括:
[0008]根据所述存储空间的碎片化率以及所述存储空间中可写空间的大小,确定GC整理的整理模式,所述存储空间的碎片化率由所述存储空间中的所有片段的数量以及每个片段的碎片化率确定,所述整理模式用于确定GC整理的频率;根据所述整理模式,按照所述碎片化率从大到小的顺序依次对所述待进行GC整理的各片段进行GC整理。
[0009]上述实施例中,根据存储空间的碎片化率和存储空间中可写空间的大小确定对应频率的GC整理模式,使得GC整理的频率与存储空间的存储情况相适配,进而提高电子设备的性能。
[0010]在一实施例中,所述存储空间中可写空间的大小由所述存储空间中未写入数据的片段的数量或未写入数据的数据块的数量确定,所述片段包括预设数量的数据块。
[0011]在一实施例中,所述根据所述存储空间的碎片化率以及所述存储空间中可写空间的大小,确定GC整理的整理模式,包括:
[0012]若所述存储空间的碎片化率大于第一预设值,所述存储空间中可写空间的大小小于第二预设值,则确定所述整理模式从第一整理模式切换为第二整理模式,所述第二整理模式的GC整理频率大于所述第一整理模式的GC整理频率。
[0013]若所述存储空间的碎片化率小于第三预设值,所述存储空间中可写空间的大小大于第四预设值,则确定所述整理模式从所述第二整理模式切换为所述第一整理模式,所述第三预设值小于或等于所述第一预设值,所述第四预设值大于或等于所述第二预设值。
[0014]上述实施例中,在存储空间的碎片化率较大、存储空间中可写空间较小的情况下,采用较快的GC整理频率,以快速降低存储空间的碎片化率,使得待写入数据尽可能写入连续程度更高的存储空间,提高了数据写入速度以及后续数据读取速度。在存储空间的碎片化率较小、存储空间中可写空间较大的情况下,采用较慢的GC整理频率,以降低GC整理过程对电子设备的响应速度的影响程度。
[0015]在一实施例中,在所述第一整理模式下,按照第一检测频率检测所述存储空间的碎片化率以及所述存储空间中可写空间的大小,在所述第二整理模式下,按照第二检测频率检测所述存储空间的碎片化率以及所述存储空间中可写空间的大小,所述第二检测频率大于所述第一检测频率。即在第二整理模式下,检测存储空间的碎片化率以及存储空间中可写空间的大小的检测频率更高,从而可以在检测到满足第一整理模式的情况下尽快切换至第一整理模式,即尽快降低GC整理频率,以避免频繁进行GC整理对电子设备的响应速度的影响。
[0016]在一实施例中,所述满足对存储空间进行GC整理的条件包括所述电子设备的内核层未检测到IO指令下发到所述存储空间。在未检测到IO指令下发到所述存储空间的情况下即可进行GC整理,从而可以尽量增加GC整理的次数,避免电子设备长时间处于碎片化率较高的场景。
[0017]在一实施例中,所述方法还包括:
[0018]在所述存储空间中不存在未写入数据的片段的情况下,若检测到存在待写入数据,根据所述存储空间中各片段的碎片化率,按照所述碎片化率从小到大的顺序,将所述待写入数据依次写入对应的片段,即将待写入数据优先写入连续程度更高的空间,从而提高数据的写入速度以及后续读取数据的速度。
[0019]第二方面,提供一种存储空间管理装置,包括:
[0020]存储模块,用于在满足对存储空间进行GC整理的条件下,确定所述存储空间中待进行GC整理的各片段的碎片化率之间的大小关系,所述碎片化率用于表示所述片段中可写空间的不连续程度;
[0021]处理模块,用于按照所述碎片化率从大到小的顺序,依次对所述待进行GC整理的各片段进行GC整理。
[0022]在一实施例中,所述处理模块具体用于:
[0023]根据所述存储空间的碎片化率以及所述存储空间中可写空间的大小,确定GC整理的整理模式,所述存储空间的碎片化率由所述存储空间中的所有片段的数量以及每个片段的碎片化率确定,所述整理模式用于确定GC整理的频率;
[0024]根据所述整理模式,按照所述碎片化率从大到小的顺序依次对所述待进行GC整理的各片段进行GC整理。
[0025]在一实施例中,所述存储空间中可写空间的大小由所述存储空间中未写入数据的片段的数量或未写入数据的数据块的数量确定,所述片段包括预设数量的数据块。
[0026]在一实施例中,所述处理模块具体用于:
[0027]若所述存储空间的碎片化率大于第一预设值,所述存储空间中可写空间的大小小于第二预设值,则确定所述整理模式从第一整理模式切换为第二整理模式,所述第二整理模式的GC整理频率大于所述第一整理模式的GC整理频率。
[0028]在一实施例中,所述处理模块具体用于:
[0029]若所述存储空间的碎片化率小于第三预设值,所述存储空间中可写空间的大小大于第四预设值,则确定所述整理模式从所述第二整理模式切换为所述第一整理模式,所述第三预设值小于或等于所述第一预设值,所述第四预设值大于或等于所述第二预设值。
[0030]在一实施例中,在所述第一整理模式下,按照第一检测频率检测所述存储空间的碎片化率以及所述存储空间中可写空间的大本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种存储空间管理方法,其特征在于,包括:在满足对存储空间进行GC整理的条件下,确定所述存储空间中待进行GC整理的各片段的碎片化率之间的大小关系,所述碎片化率用于表示所述片段中可写空间的不连续程度;按照所述碎片化率从大到小的顺序,依次对所述待进行GC整理的各片段进行GC整理。2.根据权利要求1所述的方法,其特征在于,所述按照所述碎片化率从大到小的顺序,依次对所述待进行GC整理的各片段进行GC整理,包括:根据所述存储空间的碎片化率以及所述存储空间中可写空间的大小,确定GC整理的整理模式,所述存储空间的碎片化率由所述存储空间中的所有片段的数量以及每个片段的碎片化率确定,所述整理模式用于确定GC整理的频率;根据所述整理模式,按照所述碎片化率从大到小的顺序依次对所述待进行GC整理的各片段进行GC整理。3.根据权利要求2所述的方法,其特征在于,所述存储空间中可写空间的大小由所述存储空间中未写入数据的片段的数量或未写入数据的数据块的数量确定,所述片段包括预设数量的数据块。4.根据权利要求2或3所述的方法,其特征在于,所述根据所述存储空间的碎片化率以及所述存储空间中可写空间的大小,确定GC整理的整理模式,包括:若所述存储空间的碎片化率大于第一预设值,所述存储空间中可写空间的大小小于第二预设值,则确定所述整理模式从第一整理模式切换为第二整理模式,所述第二整理模式的GC整理频率大于所述第一整理模式的GC整理频率。5.根据权利要求4所述的方法,其特征在于,所述根据...

【专利技术属性】
技术研发人员:周小航
申请(专利权)人:荣耀终端有限公司
类型:发明
国别省市:

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

1