发明名称 基于FLASH存储介质的文件读写方法
摘要 一种基于FLASH存储介质的文件读写方法,涉及文件系统技术领域,所解决的是提高文件安全操作次数的技术问题。该方法为FAT表的每个表项分配256个字的存储区域,为目录区的每个目录项分配8192个字节的存储区域,将目录区的每个目录项依序等分成256个子区块;每次文件操作时,只对相应FAT表项的一个字执行写操作,只对相应目录项的一个子区块执行写操作,每个FAT表项执行256次写操作后执行一次擦除操作,每个目录项执行256次写操作后执行一次擦除操作。本发明提供的方法,能提高文件安全操作次数,延长FLASH存储介质的使用寿命。
申请公布号 CN102789425B 申请公布日期 2016.01.20
申请号 CN201210245815.7 申请日期 2012.07.17
申请人 上海金智晟东电力科技有限公司 发明人 黄薇;刘东;杨浩赟;洪俊
分类号 G06F12/02(2006.01)I 主分类号 G06F12/02(2006.01)I
代理机构 上海汉声知识产权代理有限公司 31236 代理人 胡晶
主权项 一种基于FLASH存储介质的文件读写方法,其特征在于:在FLASH存储介质上建立文件系统,所述文件系统包括FAT表(文件分配表)、目录区、数据区,并为FAT表(文件分配表)的每个表项分配256个字的存储区域,为目录区的每个目录项分配8192个字节的存储区域,将目录区的每个目录项依序等分成256个子区块,每个子区块占32个字节的存储区域;对FAT表中的单个表项进行单次簇号写操作的步骤如下:A1)将表项的第一个字设置为当前字;A2)读取当前字的值;A3)当字长为32位时,如果当前字的值是0xFFFFFFFF,则将簇号写入当前字,再转至步骤A5;A4)如果当前字不是表项的第256个字,则将表项的下一个字设置为当前字,然后转至步骤A2,反之则将表项的256个字全部擦除,再将簇号写入表项的第一个字;A5)单次簇号写操作完毕;对FAT表中的单个表项进行单次簇号读操作的步骤如下:B1)将表项的第二个字设置为当前字;B2)读取当前字的值;B3)当字长为32位时,如果当前字值是0xFFFFFFFF,则读取前一个字的值作为簇号,再转至步骤B5;B4)如果当前字不是表项的第256个字,则将表项的下一个字设置为当前字,然后转至步骤B2,反之则读取当前字的值作为簇号;B5)单次簇号读操作完毕;对目录区中的单个目录项进行单次目录信息写操作的步骤如下:C1)将目录项的第一个子区块设置为当前子区块;C2)读取当前子区块的值;C3)如果当前子区块中每个字节的值均为0xFF,则将目录信息写入当前子区块,再转至步骤C5;C4)如果当前子区块不是最后一个子区块,则将当前子区块清0,并将下一个子区块设置为当前子区块,然后转至步骤C2,反之则将目录项的256个子区块全部擦除,再将目录信息写入目录项的的第一个子区块;C5)单次目录信息写操作完毕;对目录区中的单个目录项进行单次目录信息读操作的步骤如下:D1)将目录项的第一个子区块设置为当前子区块;D2)读取当前子区块的值;D3)如果当前子区块中每个字节的值均为0x00,则将下一个子区块设置为当前子区块,然后转至步骤D2,反之则将当前子区块的值作为目录信息;D4)单次目录信息读操作完毕。
地址 200233 上海市徐汇区桂平路680号32幢6层614室
您可能感兴趣的专利