System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术涉及数据储存领域,特别涉及主机写入与垃圾回收方法、电子设备和存储介质。
技术介绍
1、由于nand flash不能直接覆写的特性,导致ssd主控必须定期将一个存储块剩余的有效数据,集中搬移到另一个存储块中,这个过程称为垃圾回收(garbage collection)。一般而言,ssd主控一次做太多垃圾回收,会造成主机写入延迟时间太长,最好的方式是让主机写入与垃圾回收同时进行,但若是主机写入的地址正巧与垃圾回收做的地址相等,则有可能出现主机新写入的数据被覆盖的危险。
技术实现思路
1、本专利技术解决的技术问题是提供一种可确保主机写入的数据不会被覆盖,且不会影响到ssd效能的主机写入与垃圾回收方法。
2、本专利技术解决其技术问题所采用的技术方案是:一种主机写入与垃圾回收方法,其步骤为:
3、步骤一:在ssd中,在闪存源存储块中选取一定的范围做垃圾回收;
4、步骤二:主机同时写入新的数据,检测需要被覆写的旧数据存放的地址是否与垃圾回收选取的范围重合,若不重合,则继续进行步骤二和步骤三,若重合,则进行步骤五;
5、步骤三:将选取的范围内仍然有效的数据读出;
6、步骤四:将步骤三中读出的数据集中,并写入另一个新的闪存存储块中;
7、步骤五:在垃圾回收的数据结构中,标注此范围中垃圾回收的有效数据已被主机覆写,不能再写入另一个新的闪存存储块中。
8、进一步的是:在步骤一中,选取一定的范围做垃圾回收,该范
9、进一步的是:在步骤二中,在检测需要被覆写的旧数据存放的地址是否与垃圾回收选取的范围重合时,具体为:当主机写入新的数据时,根据写入的逻辑区块地址,从印射表中读出该需要写入的新的数据的物理地址,并将需要写入的新的数据的物理地址与做垃圾回收对应的物理地址进行比较,看地址是否重合。
10、进一步的是:在步骤一中,在闪存源存储块中选取一定的范围做垃圾回收,将该范围中的数据转化为overwrite bitmap的格式储存,并将垃圾回收有效数据对应的bit设为1,无效的设为0,在步骤二中,主机写入新的数据时,若被覆写的旧数据存放的地址与垃圾回收选取的范围重合,将做垃圾回收范围的数据对应的overwrite bitmap清为0。
11、本专利技术还公开了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述所述的主机写入与垃圾回收方法。
12、本专利技术还公开了一种包含计算机可执行指令的存储介质,所述计算机可执行指令在由计算机处理器执行时实现上述所述的主机写入与垃圾回收方法。
13、本专利技术的有益效果是:
14、1.本方法可以避免主机新写入的数据被覆写,借由垃圾回收流程的特性,使主机写入与垃圾回收同时进行,并降低处理的复杂度。
15、2.借由特殊的控制方法与数据结构,使检测数据是否被覆写的机制非常简便,可节省额外的查询时间。
16、3.完美结合ssd原本的架构,使用本专利技术的方法,不须大幅修改原本ssd的做法。
本文档来自技高网...【技术保护点】
1.一种主机写入与垃圾回收方法,其步骤为:
2.如权利要求1所述的主机写入与垃圾回收方法,其步骤为:在步骤一中,选取一定的范围做垃圾回收,该范围为1~10个数据页,建立一个印射表,并将该范围的逻辑区块地址及其对应的物理地址存储在印射表中。
3.如权利要求2所述的主机写入与垃圾回收方法,其步骤为:在步骤二中,在检测需要被覆写的旧数据存放的地址是否与垃圾回收选取的范围重合时,具体为:当主机写入新的数据时,根据写入的逻辑区块地址,从印射表中读出该需要写入的新的数据的物理地址,并将需要写入的新的数据的物理地址与做垃圾回收对应的物理地址进行比较,看地址是否重合。
4.如权利要求2所述的主机写入与垃圾回收方法,其步骤为:在步骤一中,在闪存源存储块中选取一定的范围做垃圾回收,将该范围中的数据转化为overwrite bitmap的格式储存,并将垃圾回收有效数据对应的bit设为1,无效的设为0,在步骤二中,主机写入新的数据时,若被覆写的旧数据存放的地址与垃圾回收选取的范围重合,将做垃圾回收范围的数据对应的overwrite bitmap清为0。
5
6.一种包含计算机可执行指令的存储介质,其特征在于:所述计算机可执行指令在由计算机处理器执行时实现如权利要求1-4中任一项所述的主机写入与垃圾回收方法。
...【技术特征摘要】
1.一种主机写入与垃圾回收方法,其步骤为:
2.如权利要求1所述的主机写入与垃圾回收方法,其步骤为:在步骤一中,选取一定的范围做垃圾回收,该范围为1~10个数据页,建立一个印射表,并将该范围的逻辑区块地址及其对应的物理地址存储在印射表中。
3.如权利要求2所述的主机写入与垃圾回收方法,其步骤为:在步骤二中,在检测需要被覆写的旧数据存放的地址是否与垃圾回收选取的范围重合时,具体为:当主机写入新的数据时,根据写入的逻辑区块地址,从印射表中读出该需要写入的新的数据的物理地址,并将需要写入的新的数据的物理地址与做垃圾回收对应的物理地址进行比较,看地址是否重合。
4.如权利要求2所述的主机写入与垃圾回收方法,其步骤为:在步骤一中,在闪存源...
【专利技术属性】
技术研发人员:詹利森,
申请(专利权)人:固存芯控半导体科技苏州有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。