[发明专利]可动态调整条带深度的RAID 0的实现方法及系统有效
| 申请号: | 201210302346.8 | 申请日: | 2012-08-24 |
| 公开(公告)号: | CN102819408A | 公开(公告)日: | 2012-12-12 |
| 发明(设计)人: | 夏君扬 | 申请(专利权)人: | 记忆科技(深圳)有限公司 |
| 主分类号: | G06F3/06 | 分类号: | G06F3/06 |
| 代理公司: | 广东广和律师事务所 44298 | 代理人: | 刘敏 |
| 地址: | 518067 广东省深圳市南山区蛇口后海大道东角头*** | 国省代码: | 广东;44 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 动态 调整 条带 深度 raid 实现 方法 系统 | ||
1.可动态调整条带深度的RAID 0的实现方法, 其特征在于: 步骤1.1,接收到应用访问RAID 0的I/O命令,在条带地址映射表中查找I/O命令要读写的数据是否覆盖已存在的条带,如果存在则直接根据检索到的条带的条带表项信息跳到步骤1.4 开始执行,否则继续执行步骤1.2;
步骤1.2,动态创建RAID 0的条带,其中条带深度StripeDepth根据I/O命令要读写数据的大小动态计算,保证 StripeDepth为StripeDepthmin 的整数倍,其中StripeDepthmin为最小条带深度,等于区块的大小;并创建该条带的条带表项信息; 其中条带表项信息包括开始条带的逻辑区块地址StripeStartLBA,结束逻辑区块地址StripeEndLBA和条带深度StripeDepth信息;
步骤1.3,将步骤1.2创建的条带表项信息添加到条带地址映射表中,条带表项信息的集合构成条带地址映射表;
步骤1.4,根据步骤1.1检索到的或步骤1.2新创建的条带的条带表项信息计算出各个FLASH盘中的数据的物理区块地址PBA;
步骤1.5,根据步骤1.4计算得到的地址信息PBA,拆分I/O命令为多个子命令到各个成员FLASH盘中,实现并发数据访问。
2.根据权利要求1所述的方法,其特征在于所述条带表项信息按如下方法计算获得:
步骤2.1,StripeStartLBA = StartLBA/N × N ;
步骤2.2,Len = Len + StartLBA – StripeStartLBA;
步骤2.3,计算条带深度StripeDepth,
当Len%N 等于0时,取StripeDepth 为 Len / N,
当Len%N不等于0时,取StripeDepth 为 Len / N +1;
步骤2.4,计算StripeEndLBA = StartLBA + StripeDepth×N -1;
其中,StartLBA 为I/O读写的开始逻辑区块地址,FLASH盘数目为N,I/O命令读写的数据块长度为Len。
3. 根据权利要求2所述的方法,其特征在于所述PBA按如下方法计算获得:
步骤3.1,计算DiskID:DiskID = (LBA – StripeStartLBA) /StripeDepth ;
步骤3.2,计算StripeStartPBA:
StripeStartPBA = (StripeStartLBA /StripeSizemin)×StripeDepthmin
= StripeStartLBA / N
步骤3.3,计算PBA:
PBA = StripeStartPBA + LBA - (StripeStartLBA + DiskID×StripeDepth) ;
其中, LBA为要访问的逻辑区块地址, DiskID为所要读写的LBA所在的FLASH 盘ID, 最小区块大小StripeSizemin =N。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于记忆科技(深圳)有限公司,未经记忆科技(深圳)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201210302346.8/1.html,转载请声明来源钻瓜专利网。
- 上一篇:水分散型粘合剂组合物和粘合片
- 下一篇:服务提供实体选择方法及装置





