[发明专利]基于预留空间的固态盘阵列的垃圾回收方法在审
申请号: | 201710673442.6 | 申请日: | 2017-08-09 |
公开(公告)号: | CN107451069A | 公开(公告)日: | 2017-12-08 |
发明(设计)人: | 吴素贞;刘癸新;朱伟东;毛波;张伟韦 | 申请(专利权)人: | 厦门大学 |
主分类号: | G06F12/02 | 分类号: | G06F12/02 |
代理公司: | 厦门南强之路专利事务所(普通合伙)35200 | 代理人: | 马应森,张凡忠 |
地址: | 361005 *** | 国省代码: | 福建;35 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 预留 空间 固态 阵列 垃圾 回收 方法 | ||
1.基于预留空间的固态盘阵列的垃圾回收方法,其特征在于包括以下步骤:
1)初始化步骤;
2)垃圾回收步骤;
3)垃圾回收阶段请求处理步骤;
4)数据回收步骤,当对应的固态盘的垃圾回收操作完成之后,数据回收模块扫描重定向数据映射表;
5)数据回收阶段请求处理步骤;
6)结束步骤。
2.如权利要求1所述基于预留空间的固态盘阵列的垃圾回收方法,其特征在于在步骤1)中,所述初始化步骤的具体方法如下:
(1)根据用户指令,创建新固态盘阵列RAIS5或打开已有固态盘阵列RAIS5;判断固态盘阵列RAIS5是否是新创建的,若是,则转步骤(2),否则转步骤(3);
(2)利用固态盘的预留空间分别创建新的固态盘阵列RAIS10和固态盘阵列RAIS0;转步骤(4);所述固态盘阵列RAIS10用于保存写数据,简称W-RAIS10;所述固态盘阵列RAIS0用于保存热点读数据,简称R-RAIS0;
(3)打开已有的固态盘阵列W-RAIS10和R-RAIS0;转步骤(5);
(4)主控模块创建该固态盘阵列的重定向数据映射表并初始化为空;进行步骤2);
(5)主控模块读取保存在固态盘阵列成员盘超级块中的重定向数据映射表的映射信息到内存中;进行步骤2)。
3.如权利要求2所述基于预留空间的固态盘阵列的垃圾回收方法,其特征在于在步骤1)第(4)部分中,所述重定向数据映射表包括M条映射信息,每条映射信息由4个数据项构成:各数据项依次为被重定向数据在固态盘阵列RAIS5的块偏移地址、被重定向数据在固态盘阵列R-RAIS0或固态盘阵列W-RAIS10上的块偏移地址、被重定向数据在固态盘阵列R-RAIS0或固态盘阵列W-RAIS10上的标记位、被重定向数据的长度;M为大于等于0的自然数。
4.如权利要求1所述基于预留空间的固态盘阵列的垃圾回收方法,其特征在于在步骤2)中,所述垃圾回收步骤的具体方法为:
(1)垃圾回收控制模块主动收集固态盘阵列RAIS5中每块成员固态盘的空闲空间比例,并与预设的阈值比较,判断固态盘是否需要进行垃圾回收操作,若某个固态盘需要进行垃圾回收操作,则转步骤(2),否则重复步骤(1);所述预设的阈值可为10%;
(2)主控模块判断固态盘阵列RAIS5中是否有其他固态盘正在进行垃圾回收操作,若有,则转步骤(4),否则转步骤(3);
(3)主控模块主动触发垃圾回收控制模块进行所述固态盘的垃圾回收操作,并通知给请求重定向模块,完成垃圾回收操作后,转步骤(4);
(4)暂停处理所述固态盘的垃圾回收操作,转步骤(1)。
5.如权利要求1所述基于预留空间的固态盘阵列的垃圾回收方法,其特征在于在步骤3)中,所述垃圾回收阶段请求处理步骤的具体方法为:
(1)等待上层用户读写请求,判断该请求是否需要由正在处理垃圾回收操作的固态盘响应,若是,则转步骤(2),否则,查找映射表,判断所请求的数据是否已经被回收,若是,则转步骤(8),否则转步骤(5);
(2)判断是否为写请求,若是,则转步骤(3),若不是,则转步骤(4);
(3)将本该写入正在处理垃圾回收操作的固态盘中的数据写入固态盘阵列W-RAIS10中,同时更新相应的校验信息,并将数据映射信息记录在重定向数据映射表中,转步骤(1);
(4)根据重定向数据映射表判断读请求要读取的数据是否在固态盘阵列R-RAIS0中,若是,则转步骤(5),否则根据重定向数据映射表判断读请求要读取的数据是否在固态盘阵列W-RAIS10中,若是,则转步骤(6),否则转步骤(7);
(5)请求重定向模块将读请求发向固态盘阵列R-RAIS0,从固态盘阵列R-RAIS0读取数据,返回给用户,转步骤(1);
(6)请求重定向模块将读请求发向固态盘阵列W-RAIS10,从固态盘阵列W-RAIS10读取数据,返回给用户,转步骤(1);
(7)请求重定向模块将读请求发向固态盘阵列RAIS5,读取其他未处理垃圾回收状态操作的固态盘上的数据,利用RAIS5自身的冗余特性动态重构出正在处理垃圾回收操作的固态盘上的数据,并返回给用户;转步骤(1);
(8)按固态盘阵列的正常算法响应读写请求,转步骤(1)。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于厦门大学,未经厦门大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710673442.6/1.html,转载请声明来源钻瓜专利网。