欢迎来到知嘟嘟! 联系电话:13095918853 卖家免费入驻,海量在线求购! 卖家免费入驻,海量在线求购!
知嘟嘟
我要发布
联系电话:13095918853
知嘟嘟经纪人
收藏
专利号: 2020104299732
申请人: 杭州电子科技大学
专利类型:发明专利
专利状态:已下证
专利领域: 计算;推算;计数
更新日期:2025-04-02
缴费截止日期: 暂无
价格&联系人
年费信息
委托购买

摘要:

权利要求书:

1.一种固态硬盘智能垃圾回收与调度方法,其特征在于,包括各个通道主机IO队列CH_IO,可中断垃圾回收IO队列GC_IO,GC缓冲区BufGC,IO调度模块和GC决策模块;

CH_IO保存主机接口发送至各个通道的用户IO请求,即主机端的读写请求;GC_IO保存可中断垃圾回收的VB块的有效页读/写请求和VB块的擦除请求;BufGC暂存VB块的有效页;IO调度模块负责调度各CH_IO队列和GC_IO队列中的请求;GC决策模块负责决定垃圾回收操作方式,此外,也负责不可中断的垃圾回收;

对于每个通道,当有新的写请求到达,其GC决策模块的工作过程如下:G1、判断该通道剩余空闲空间比例U是否大于不可中断垃圾回收触发阈值THhard;

当U<THhard时,产生不可中断垃圾回收,执行G2;

当U≥THhard时,执行G3;

其中,NBfree为空闲的闪存块数,NBtotal为总的闪存块数;

G2、根据式 选择得分最小的闪存块作为GC的VB块,暂停本通道的主机IO响应,在本通道内完成不可中断GC,然后执行G9;

其中,NPvalid为该通道闪存块中的有效页数,NPtotal为该通道闪存块的总页数;

G3、判断是否有正在进行的可中断垃圾回收,采用CH_IGC_flag进行标志;若没有,即CH_IGC_flag=0,执行G4;否则,执行G9;

G4、判断该通道剩余空间比例U是否小于可中断垃圾回收触发阈值THsoft;

当U<THsoft时,执行G5;

当U≥THsoft时,执行G9;

G5、判断该通道可中断GC的VB块是否为空;若是,执行G6;否则,执行G7;

G6、根据式 选择得分最小的闪存块设置为VB块,然后执行G7;

其中,age为此块包含的数据页上次无效化距现在的时间,erase_count为块的擦除次数;

G7、判断GC缓冲区BufGC是否有足够空间容纳VB块的有效页;若有足够空间,则执行G8;

否则,执行G9;

G8、设置该通道的CH_IGC_flag=1,生成对VB块有效页的读、写请求和对VB块的擦除请求,并加载至GC_IO队列;然后执行G9;

G9、结束本次垃圾回收决策。

2.根据权利要求1所述的一种固态硬盘智能垃圾回收与调度方法,其特征在于,IO调度模块工作过程如下:如果某个通道的CH_IO不为空或者SSD的GC_IO不为空的时候,进行如下的调度过程:S1、判断该通道的CH_IO队列是否为空;若不为空,调度CH_IO中的请求直到空为止;然后执行S2;

S2、判断GC_IO队列是否为空;若不为空,执行S3;否则,结束本次IO调度;

S3、判断GC_IO队列中是否有满足下面2个条件之一的请求:条件一,属于该通道的读请求或擦除请求;

条件二,写请求且该写请求对应的读请求已经完成;

若存在这样的请求,取出第一个请求,执行S4;若没有,则结束本次IO调度;

S4、根据取出请求的类型进行相应的响应;具体如下:若是读请求,则将该通道的数据读取到GC缓冲区BufGC中;

若是写请求,则将GC缓冲区BufGC中的数据写入到该通道;

若是擦除请求,则将该通道下对应闪存块擦除,并清除该通道的CH_IGC_flag标志,即设置CH_IGC_flag=0;并设置VB块号为空,即设置VB=‑1;

S5,跳回到S1进行执行。

3.根据权利要求1所述的一种固态硬盘智能垃圾回收与调度方法,其特征在于,进一步,GC决策过程中不可中断垃圾回收触发阈值THhard和可中断垃圾回收触发阈值THsoft需要满足THhard<THsoft;这两个阈值可以采用固定阈值,也可以采用自适应阈值。

4.根据权利要求1或2或3所述的一种固态硬盘智能垃圾回收与调度方法,其特征在于,进一步,GC缓冲区BufGC既可以利用SSD内部的数据缓冲进行实现,也可以增设一个专门的缓冲用来实现。