[发明专利]一种闪存存储器等概率连续空间存储文件的方法无效
申请号: | 201110159866.3 | 申请日: | 2011-06-14 |
公开(公告)号: | CN102253894A | 公开(公告)日: | 2011-11-23 |
发明(设计)人: | 白乐强 | 申请(专利权)人: | 沈阳建筑大学 |
主分类号: | G06F12/02 | 分类号: | G06F12/02 |
代理公司: | 沈阳东大专利代理有限公司 21109 | 代理人: | 李运萍 |
地址: | 110168 辽*** | 国省代码: | 辽宁;21 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 闪存 存储器 概率 连续 空间 存储 文件 方法 | ||
技术领域
本发明属于数据存储技术领域,特别涉及一种闪存存储器等概率连续空间存储文件的方法。
背景技术
由于闪存存储器的寿命是有限的,不能无限次写入,存储单元的最大写入次数一般为105~106次。所以在采用NAND Flash的应用中,必须采用一定的机制,保证各个存储单元近似均衡连续使用,在避免某些单元提前损耗达到使用寿命前提下,提高访问效率。针对这一问题,许多研究者提出了一些算法:例如,Kawaguchi等提出了Cost-Benefit策略、Wells等提出了综合考虑回收效率和等概率的策略、Chiang等提出了CAT(Cost Age Times,简称CAT)策略等,这些方法主要是通过垃圾回收来实现对闪存存储器管理的优化,都需要记录大量的数据存储的时间参数,而且计算较复杂,现在为止没有一个成熟的适合用于资源有限嵌入式系统的闪存存储器存储文件的方法。
发明内容
针对现有技术存在的不足,本发明提供一种闪存存储器等概率连续空间存储文件的方法,闪存存储器等概率连续空间文件存储包括文件存储和文件删除。文件存储和文件删除的核心是管理序列存储区格式化、存储次数排序和相同存储次数连续空间排序。
一种闪存存储器等概率连续空间存储文件的方法,具体按如下步骤进行:
步骤1:管理序列存储区格式化
管理序列存储区格式化基于闪存存储器的大小和存储单元的大小设置专用的管理序列存储区。如果闪存存储器已格式化,把管理序列存储区数据读到RAM,等待文件操作命令;否则,按以下步骤执行管理序列存储区格式化:
步骤1-1:分配专用的管理序列存储区,管理序列存储区只限存储管理序列和空闲单元长度,管理序列包括存储单元序号、存储次数和状态位;
步骤1-2:设闪存存储器大小为FlashSize,存储单元的大小为UnitSize;
步骤1-3:计算空闲单元长度NullSize=|FlashSize/UnitSize|,状态位USEState=0表示存储单元空闲,USEState=1表示存储单元使用中;
步骤1-4:计算管理序列大小ArraySize=|FlashSize/UnitSize|×3;
步骤1-5:按升序初始化管理序列的存储单元序号;
步骤1-6:设置所有存储次数为0;
步骤1-7:设置状态位USEState=0;
步骤1-8:把管理序列和空闲单元长度存储到管理序列存储区。
步骤2:文件存储
文件的存储基于空闲存储单元的序列ArrayNULL存储文件。
设文件File的大小为NFile个存储单元,
步骤2-1:存储文件到ArrayNULL前NFile个元素指定的空闲存储单元;
步骤2-2:设置NFile个对应的空闲存储单元的存储次数NUSE=NUSE+1;
步骤2-3:设置NFile个对应空闲存储单元的状态位USEState=1;
步骤2-4:把NFile个对应空闲存储单元从ArrayNULL移到ArrayUSE;
步骤2-5:NullSize=NullSize-NFile;
步骤2-6:用存储次数排序算法排序ArrayNULL,存储次数排序基于存储次数将管理序列由低至高排序。存储次数排序算法具体过程如下:
设管理序列为Array、空闲单元管理序列为ArrayNULL、使用单元管理序列为ArrayUSE,则Array={ArrayNULL,ArrayUSE}。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于沈阳建筑大学,未经沈阳建筑大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201110159866.3/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种背面电极的设计方法
- 下一篇:单点服务处理装置和单点服务处理方法