[发明专利]存储空间回收方法及装置有效
申请号: | 201610175965.3 | 申请日: | 2016-03-24 |
公开(公告)号: | CN107229414B | 公开(公告)日: | 2020-01-17 |
发明(设计)人: | 曾凡丽;林鹏;林起芊;汪渭春 | 申请(专利权)人: | 杭州海康威视数字技术股份有限公司 |
主分类号: | G06F3/06 | 分类号: | G06F3/06 |
代理公司: | 11413 北京柏杉松知识产权代理事务所(普通合伙) | 代理人: | 马敬;项京 |
地址: | 310052 浙江省杭*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 存储空间 回收 方法 装置 | ||
1.一种存储空间回收方法,其特征在于,包括:
在满足预定空间回收条件时,确定具有待回收标识的目标数据块,其中,所述待回收标识为:对具有满块标识且空间利用率低于预定利用率阈值的数据块所设置的标识,所述满块标识为:对可用空闲容量小于最小数据包单元的数据块所设置的标识,所述可用空闲容量为:能够写入数据的空间的容量;
生成所述目标数据块所对应的占用段链表和空闲段链表,其中,所述目标数据块包括基于数据存储操作和/或数据删除操作所形成的多个数据段,所述空闲段链表包括:所述目标数据块中具有删除标识的数据段所对应的段标识,所述占用段链表包括:所述目标数据块中满足预定占用条件的数据段所对应的段标识,所述预定占用条件为:未具有删除标识且段起始偏移大于所述空闲段链表所涵盖数据段的段起始偏移中的最小值,所述删除标识为:对已被删除数据的数据段所设置的标识;
基于所述空闲段链表和所述占用段链表,对所述目标数据块执行块内数据迁移;
将块内数据迁移完毕的所述目标数据块更新为空间回收完成的数据块。
2.根据权利要求1所述的方法,其特征在于,所述生成所述目标数据块所对应的占用段链表和空闲段链表,包括:
按照链表内段标识符合段起始偏移升序排序的规则,构建所述目标数据块所对应的占用段链表和空闲段链表;
所述基于所述空闲段链表和所述占用段链表,对所述目标数据块执行块内数据迁移,包括:
从所述空闲段链表中,选择属于当前的链表起始点的段标识作为待处理的目标段标识;
基于所述目标段标识所对应数据段的空间大小和所述占用段链表中段标识所对应数据段的空间大小,执行针对于所述目标段标识所对应数据段的数据迁移;
在执行完毕针对于所述目标段标识所对应数据段的数据迁移后,判断所述占用段链表当前是否存在段标识,如果是,返回执行所述从所述空闲段链表中,选择属于当前的链表起始点的段标识作为待处理的目标段标识的步骤。
3.根据权利要求1所述的方法,其特征在于,所述基于所述空闲段链表和所述占用段链表,对所述目标数据块执行块内数据迁移,包括:
按照链表内段标识符合段起始偏移升序排序的规则,初始化所述空闲段链表和所述占用段链表;
从所述空闲段链表中,选择属于当前的链表起始点的段标识作为待处理的目标段标识;
基于所述目标段标识所对应数据段的空间大小和所述占用段链表中段标识所对应数据段的空间大小,执行针对于所述目标段标识所对应数据段的数据迁移;
在执行完毕针对于所述目标段标识所对应数据段的数据迁移后,判断所述占用段链表当前是否存在段标识,如果是,返回执行所述按照链表内段标识符合段起始偏移升序排序的规则,初始化所述空闲段链表和所述占用段链表的步骤。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于杭州海康威视数字技术股份有限公司,未经杭州海康威视数字技术股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201610175965.3/1.html,转载请声明来源钻瓜专利网。