[发明专利]能够感知RAID的闪存转换层及其实现方法有效
申请号: | 201410721954.1 | 申请日: | 2014-12-03 |
公开(公告)号: | CN105718206B | 公开(公告)日: | 2018-08-03 |
发明(设计)人: | 肖侬;陈志广;刘芳;巫小泉 | 申请(专利权)人: | 中国人民解放军国防科学技术大学 |
主分类号: | G06F3/06 | 分类号: | G06F3/06;G06F12/02 |
代理公司: | 湖南省国防科技工业局专利中心 43102 | 代理人: | 冯青 |
地址: | 410073 *** | 国省代码: | 湖南;43 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 能够 感知 raid 闪存 转换 及其 实现 方法 | ||
1.能够感知RAID的闪存转换层,其特征在于,为闪存的每个逻辑页添加表示对每个逻辑页的最近一次访问的访问类型的操作标识和表示每个逻辑页是普通数据还是校验数据的类型标识;为闪存的每个物理块添加表示该块存储的数据是普通数据还是校验数据的类型标识;当访问某个逻辑页时,对比最近一次访问和本次访问的访问类型,如果都是读操作,则表明该某个逻辑页对应的数据为普通数据,未识别为普通数据前,默认为校验数据;当对某个逻辑页进行写操作时,根据该某个逻辑页的类型标识,将该某个逻辑页写在新分配的空闲块中并将空闲块的类型置成与某个逻辑页类型相同,或者直接写入与该某个逻辑页类型相同的物理块中;
所述操作标识last_op_type:对逻辑页的最近一次访问的访问类型,索引为逻辑页号,表项值为0表示读操作,表项值为1表示写操作;
逻辑页类型标识page_type:表示逻辑页所存储的数据是普通数据还是校验数据,索引为逻辑页号,表项值为0表示某个逻辑页是校验数据,表项值为1表示某个逻辑页是普通数据;
块类型标识block_type:表示物理块所存储的是普通数据还是校验数据,索引为物理块号,表项值为0表示该块存储的是校验数据,表项值为1表示该块存储的是普通数据;
识别普通数据和校验数据时的操作过程为:
每个逻辑页在刚开始时,默认存储的是校验数据,当对某个逻辑页进行写操作时,逻辑页的状态不变;当对某个逻辑页进行读操作时,逻辑页进入下一状态,即待定状态,但仍不能判断该某个逻辑页为普通数据;在待定状态若下一次操作为写操作,则逻辑页的状态回到初始状态,否则断定该某个逻辑页为普通数据;识别后,只要该某个逻辑页还有效,则该某个逻辑页始终为普通数据,读写操作都不会影响对某个逻辑页的判断;若对某个逻辑页进行连续两次的读操作,则断定该某个逻辑页为普通数据。
2.根据权利要求1所述的能够感知RAID的闪存转换层,其特征在于,所述操作标识空间大小为1bit,所述每个逻辑页类型标识空间大小为1bit,所述块的类型标识空间大小为1bit。
3.根据权利要求1所述的能够感知RAID的闪存转换层,其特征在于,所述识别普通数据和校验数据时的操作具体步骤包括:
第一步:读取本次操作涉及的逻辑页对应的逻辑页类型标识page_type,执行第二步;
第二步:判断本次操作的类型是读或者写,若本次操作为读操作,执行第三步,否则执行第七步;
第三步:若逻辑页类型标识page_type=0,执行第四步,否则执行第八步;
第四步:读取本次操作涉及的逻辑页对应的上次操作的操作标识last_op_type,若操作标识last_op_type=0,即连续两次读操作,执行第五步,否则执行第六步;
第五步:可以断定本次操作涉及的逻辑页为普通数据,置page_type=1,执行第八步;
第六步:置last_op_type=0,执行第八步;
第七步:查找一个block_type=page_type的包含有空闲页的块,并分配一个空闲页用于本次写操作,或者分配一个新块中的一页用于本次写操作并置块类型标识block_type=逻辑页类型标识page_type;读取本次操作涉及的逻辑页对应的上次操作的操作标识last_op_type,若last_op_type=0,置last_op_type=1,执行第八步;
第八步:读取/写入数据,处理下一个操作,即回到第一步执行。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国人民解放军国防科学技术大学,未经中国人民解放军国防科学技术大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201410721954.1/1.html,转载请声明来源钻瓜专利网。