文件存储空间回收方法和装置的制造方法

文档序号:9217192阅读:288来源:国知局
文件存储空间回收方法和装置的制造方法
【技术领域】
[0001]本发明涉计算机领域,具体而言,涉及一种文件存储空间回收方法和装置。
【背景技术】
[0002]存储空间管理分配和回收是文件系统的一个重要组成部分。存储空间分配的合理性直接影响系统的负载均衡,同时对存储介质的使用寿命也存在重要影响。系统在运行中,由于文件的删除,会不定时的产生空闲区域,大量空间区域的堆积会使系统性能越来越慢。因此空闲区域的回收和整理对文件系统是非常有意义的。空闲区域
[0003]通用的文件系统中的文件数据顺序存储在存储设备中,各个存储块大小不一,如图1所示,存储设备中存在F1-F8的文件数据,在存储块F8的后端还存在空闲的存储空间。当系统运行一段时间后,存储设备上就会产生大量碎片,如文件删除,空间分配造成的零碎的存储空间等,假设Fl、F3、F5被删除,则会产生空闲区域Fl、F3、F5,如图2所示。
[0004]现有的存储空间回收方法是对空闲区域空间进行整理,将碎片空间迁移至新的存储设备,用新的存储设备替换老的存储设备,或者移动数据进行重新紧凑存储两种方式,图3示出了重新紧凑存储后的存储空间。整理后,存储设备的中的空闲区域可以被重复利用。
[0005]但是,存储空间的整理带来额外读写操作,如果频繁删除文件,存储设备在短时间内就会存在大量的存储空间的空闲区域,文件系统需要持续进行空闲区域的整理,增加存储设备读写操作带来系统性能和负载上的压力,同时增加存储设备的损耗,降低存储设备的使用寿命。
[0006]针对现有技术中对存储空间进行整理导致存储设备损耗的问题,目前尚未提出有效的解决方案。

【发明内容】

[0007]本发明的主要目的在于提供一种文件存储空间回收方法和装置,以解决现有技术中对存储空间进行整理导致存储设备损耗的问题。
[0008]为了实现上述目的,根据本发明的一个方面,提供了一种文件存储空间回收方法。根据本发明的文件存储空间回收方法包括:确定文件存储空间中删除文件产生的空闲区域;判断是否存在待写入数据;如果存在待写入数据,查找空闲区域的位置,其中,空闲区域的位置保持不变;以及在确定空闲区域的位置之后,向空闲区域写入待写入数据。
[0009]为了实现上述目的,根据本发明的另一方面,提供了一种文件存储空间回收装置。根据本发明的文件存储空间回收装置包括:第一确定单元,用于确定文件存储空间中删除文件产生的空闲区域;判断单元,用于判断是否存在待写入数据;第一查找单元,用于在存在待写入数据时,查找空闲区域的位置,其中,空闲区域的位置保持不变;以及写入单元,用于在确定空闲区域的位置之后,向空闲区域写入待写入数据。
[0010]通过本发明实施例,采用确定文件存储空间中删除文件产生的空闲区域;判断是否存在待写入数据;如果存在待写入数据,查找空闲区域的位置,其中,空闲区域的位置保持不变;以及在确定空闲区域的位置之后,向空闲区域写入待写入数据的方法,解决了现有技术中对存储空间进行整理导致存储设备损耗的问题,进而达到了减低存储设备损耗的效果O
【附图说明】
[0011]构成本申请的一部分的附图用来提供对本发明的进一步理解,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
[0012]图1是根据现有技术中存储设备的存储空间示意图;
[0013]图2是根据现有技术的删除文件得到空闲空间的示意图;
[0014]图3是根据现有技术对存储空间重新紧凑存储的示意图;
[0015]图4是根据本发明第一实施例的文件存储空间回收方法的流程图;
[0016]图5是根据本发明第二实施例的文件存储空间回收方法的流程图;
[0017]图6是根据本发明第三实施例的文件存储空间回收方法的流程图;
[0018]图7是根据本发明实施例的带游标的存储空间的示意图;
[0019]图8是根据本发明实施例的固定长度存储空间的示意图;
[0020]图9是根据本发明第一实施例的文件存储空间回收装置的示意图;
[0021]图10是根据本发明第二实施例的文件存储空间回收装置的流程图;以及
[0022]图11是根据本发明第三实施例的文件存储空间回收装置的示意图。
【具体实施方式】
[0023]需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本发明。
[0024]为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
[0025]需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
[0026]本发明实施例提供了一种文件存储空间回收方法。在系统运行的过程中,由于文件存储空间需要反复删除和存储文件,产生大量零碎的空闲区域,这些零碎的空闲区域堆积就导致系统运行缓慢,降低系统的性能,为了避免上述情况的发生,通常会对零碎的空间区域进行整理,重新紧凑存储。但是,重新紧凑存储就会带来反复的读写操作,反复的读写操作就会导致存储设备的损耗。本发明实施例的文件存储空间回收方法能够在删除文件得到空闲区域之后,不通过紧凑存储,直接向空闲区域内重新写入数据,从而减少了存储设备反复读写操作,不仅达到了文件存储空间回收的目的,还减少了存储设备的损耗。
[0027]以下结合附图对本发明实施例的文件存储空间回收方法进行说明。
[0028]图4是根据本发明第一实施例的文件存储空间回收方法的流程图。如图所示,该文件存储空间回收方法包括:
[0029]步骤S402,确定文件存储空间中删除文件产生的空闲区域。
[0030]在文件存储空间中存储多个文件,在删除文件存储空间中的文件之后,在存储空间的相应位置会产生空闲区域。
[0031]如图1,文件存储空间存储有文件数据F1-F8,删除文件F1、F3和F5之后,在原先存储文件F1、F3和F5的文件存储空间中相应产生空闲区域F1、F3和F5。
[0032]步骤S404,判断是否存在待写入数据。
[0033]为了重复利用文件存储空间,在删除文件产生空闲区域之后,判断是否存在待写入数据,如果存在待写入数据,则可以将待写入数据写入文件存储空间中的空闲区域。
[0034]步骤S406,如果存在待写入数据,查找空闲区域的位置,其中,空闲区域的位置保持不变。
[0035]如果判断出存在待写入数据,则在文件存储空间中查找空闲区域的位置。这里查找到的空闲区域的位置与删除文件后产生的空闲区域的位置相同。需要说明的是,删除文件后产生的空闲区域的位置保持不变,即对删除文件后产生的空闲区域不进行紧凑存储,如图2,删除F3后产生的空闲区域为F3,其位置保持不变。
[0036]步骤S408,在确定空闲区域的位置之后,向空闲区域写入待写入数据。
[0037]在确定空闲区域的位置之后,可以向这些空闲区域写入待写入数据,写入数据时可以根据数据的大小确定向一个或者多个空闲区域写入数据。如何写入数据,本发明实施例的下述实施例中会有详细说明,在此不做赘述。
[0038]通过上述实施例,向删除文件后产生的空闲区域内写入待写入数据的过程中,不需要对空闲区域进行紧凑存储操作,避免了对存储设备进行多次反复的读写操作,减少了对存储设备的损耗,从而解决了现有技术中对存储空间进行整理导致存储设备损耗的问题,进而达到了减低存储设备损耗的效果。
[0039]图5是根据本发明第二实施例的文件存储空间回收方法的流程图。该实施例中,空闲区域为多个空闲区域,多个空闲区域包括第一空闲区域和第二空闲区域,其中,在确定空闲区域的位置之后,向空闲区域写入待写入数据包括如下步骤:
[0040]步骤S502,在确定第一空闲区域的位置之后,判断第一空闲区域的容量是否小于待写
当前第1页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1