[发明专利]一种打开磁盘写缓存的方法和装置有效
申请号: | 201310438672.6 | 申请日: | 2013-09-24 |
公开(公告)号: | CN103514109A | 公开(公告)日: | 2014-01-15 |
发明(设计)人: | 余海滨 | 申请(专利权)人: | 创新科存储技术有限公司;创新科软件技术(深圳)有限公司 |
主分类号: | G06F12/08 | 分类号: | G06F12/08 |
代理公司: | 北京德琦知识产权代理有限公司 11018 | 代理人: | 谢安昆;宋志强 |
地址: | 100191 北京市海*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 打开 磁盘 缓存 方法 装置 | ||
1.一种打开磁盘写缓存的方法,其特征在于,包括:
在存储系统中建立3个队列,分别为Pending队列、Done队列和Sync队列;
当每接收到一个写命令时,将该写命令加入到Pending队列中;
对于Pending队列中的每个写命令,当满足预定条件时,将该写命令下发到对应的磁盘中,并在当接收到磁盘返回的处理响应时,将该写命令从Pending队列转移到Done队列中;
当每次满足预定条件时,将Done队列中的所有写命令均转移到Sync队列中,并针对Sync队列中的所有写命令所对应的磁盘,分别执行sync命令;
当接收到任一磁盘返回的sync响应时,将Sync队列中与该磁盘对应的所有写命令均删除。
2.根据权利要求1所述的方法,其特征在于,
所述当每次满足预定条件时,将Done队列中的所有写命令均转移到Sync队列中包括:
当Done队列中的写命令数量每次达到预定阈值时,或者,每经过预定时长后,则将Done队列中的所有写命令均转移到Sync队列中。
3.根据权利要求1所述的方法,其特征在于,
所述将Sync队列中与该磁盘对应的所有写命令均删除之后,进一步包括:释放所删除的写命令所占用的内存。
4.根据权利要求1或3所述的方法,其特征在于,
该方法进一步包括:
当存储系统掉电时,将Pending队列、Done队列以及Sync队列中的所有写命令均保存到系统盘中;
当存储系统上电时,取出保存在系统盘中的所有写命令,并将取出的所有写命令均加入到Pending队列中。
5.一种打开磁盘写缓存的装置,其特征在于,包括:
第一处理模块,用于在存储系统中建立3个队列,分别为Pending队列、Done队列和Sync队列;
第二处理模块,用于当每接收到一个写命令时,将该写命令加入到Pending队列中;
对于Pending队列中的每个写命令,当满足预定条件时,将该写命令下发到对应的磁盘中,并在当接收到磁盘返回的处理响应时,将该写命令从Pending队列转移到Done队列中;
当每次满足预定条件时,将Done队列中的所有写命令均转移到Sync队列中,并针对Sync队列中的所有写命令所对应的磁盘,分别执行sync命令;
当接收到任一磁盘返回的sync响应时,将Sync队列中与该磁盘对应的所有写命令均删除。
6.根据权利要求5所述的装置,其特征在于,
当Done队列中的写命令数量每次达到预定阈值时,或者,每经过预定时长后,所述第二处理模块则将Done队列中的所有写命令均转移到Sync队列中。
7.根据权利要求5所述的装置,其特征在于,
所述第二处理模块进一步用于,在将Sync队列中与该磁盘对应的所有写命令均删除之后,释放所删除的写命令所占用的内存。
8.根据权利要求5或7所述的装置,其特征在于,
该装置中进一步包括:
第三处理模块,用于当存储系统掉电时,将Pending队列、Done队列以及Sync队列中的所有写命令均保存到系统盘中;
当存储系统上电时,取出保存在系统盘中的所有写命令,并将取出的所有写命令均加入到Pending队列中。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于创新科存储技术有限公司;创新科软件技术(深圳)有限公司,未经创新科存储技术有限公司;创新科软件技术(深圳)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201310438672.6/1.html,转载请声明来源钻瓜专利网。
- 上一篇:汽车选换挡用软轴
- 下一篇:变量泵液压回路及工程机械