【技术实现步骤摘要】
基于NAND FLASH的文件数据存取方法、装置、设备及存储介质
[0001]本申请涉及文件存储的
,尤其是涉及一种基于NAND FLASH的文件数据存取方法、装置、设备及存储介质。
技术介绍
[0002]NAND FLASH是一种大容量的存储芯片,其特点是容量密度大,制造成本低,访问速度快,在业界应用广泛,通常作为U盘、固态盘、存储卡等设备上的存储芯片。
[0003]NAND FLASH的擦除是按照块进行擦除,而读和写是可以按照最小字节长度来进行读写,文件数据的写入需要先将写入区域所在的存储块进行擦除操作,然后再进行写入操作,例如,需要写入一个字节的数据,要对整个存储块进行擦除操作。而每次写入文件数据时,都需要对NAND FLASH的文件目录区所在的存储块进行擦除和重新写入,使得文件目录区所在的存储块擦写频率较高。
[0004]这样不均衡的擦写可能会使得文件目录区的存储块过早的被写坏,出现坏块,从而缩短了NAND FLASH文件系统的使用寿命,甚至会导致整个NAND FLASH文件系统损毁。
技术实现思路
[0005]为了提高NAND FLASH磨损均衡的性能,从而提高NAND FLASH的使用寿命,本申请提供一种基于NAND FLASH的文件数据存取方法、装置、设备及存储介质。
[0006]第一方面,本申请提供一种基于NAND FLASH的文件数据存取方法,采用如下的技术方案:一种基于NADA FLASH的文件数据存取方法,包括:获取文件数据;基于块属性从NAND F ...
【技术保护点】
【技术特征摘要】
1.一种基于NAND FLASH的文件数据存储方法,其特征在于,包括:获取文件数据;基于块属性从NAND FLASH中选取一可写入存储块作为当前存储块;将所述文件数据中未写入NAND FLASH的数据写入所述当前存储块;判断所述文件数据中未写入NAND FLASH的数据是否全部写入所述当前存储块;若否,则重复所述从NAND FLASH中选取一可写入存储块作为当前存储块的步骤,直至所述文件全部写入NAND FLASH为止;若依次选取多个可写入存储块作为当前存储块,则选取的第一个可写入存储块为文件头块,选取的最后一个可写入存储块为文件尾块,其余选取的可写入模块为普通存储块;其中,所述当前存储块具有索引信息位,所述文件头块的索引信息位包括文件名称位、块属性位、下一个存储块的块序号位和最后一个存储块的数据长度位;所述文件尾块的索引信息位包括块属性位;所述普通存储块的索引信息位包括块属性位和下一个存储块的块序号位;若所述当前存储块为所述文件头块,则在所述基于块属性从NAND FLASH中选取一可写入存储块作为当前存储块之后,基于所述文件头块的下一个存储块的块序号更新所述文件头块的索引信息;若所述当前存储块为普通存储块,则在所述基于块属性从NAND FLASH中选取一可写入存储块作为当前存储块之后,基于所述普通头块的下一个存储块的块序号更新所述普通头块的索引信息;若所述当前存储块为文件尾块,则在所述基于块属性从NAND FLASH中选取一可写入存储块作为当前存储块之后,写入文件数据直至所述文件全部写入NAND FLASH为止。2.根据权利要求1所述的方法,其特征在于,所述块属性包括空闲、写入中、有效和脏数据;当对所述当前存储块进行擦除操作后,更新所述当前存储块的块属性为空闲;当对所述文件数据进行写入所述当前存储块时,更新所述当前存储块的块属性为写入中;当将所述文件数据写入所述当前存储块时,更新所述当前存储块的块属性为有效;当进行文件自检时,若所述当前存储块的块数据无效,则更新所述当前存储块的块属性为脏数据。3.根据权利要求2所述的方法,其特征在于,所述基于块属性从NAND FLASH中选取一可写入存储块作为当前存储块包括:查询是否存在块属性为空闲的存储块,若存在块属性为空闲的存储块,则从块属性为空闲的存储块中选取任意一个所述存储块作为当前存储块;若不存在块属性为空闲的存储块,则查询是否存在块属性为脏数据的存储块;若存在块属性为脏数据的存储块,则从块属性为脏数据的存储块中选取任意一个所述存储块;擦除所述存储块,并将擦除后的存储块作为当前存储块。4.根据权利要求1所述的方法,其特征在于,所述文件数据包括文件名称,在基于块属性从NAND FLASH中选取一可写入存储块作为当前存储块之前,还包括:
基于所述文件名称查询是否存在所述文件数据的历史数据;若所述NAND FLASH中存在所述文件数据的历史数据,则将所述文件数据按照存储块的大小切割成N个数据块;将所述N个数据块与所述历史数据对应存储块的块数据作比较,确定所述N个数据块写入和/或改写的存储块,并将所述存储块对应的所述文件数据的数据块写入和/或改写至所述存储块。5.根据权利要求4所述的方法,其特征在于,所述基于所述文件名称查询是否存在所述文件数据的历史数据包括:基于所述文件名称查询是否存在所述文件数据的文件头块;若存在所述文件数据的文件头块,则基于所述文件头块的索引信息查询所述文件数据普通数据块或文件尾块;基于所述普通数据块的索引信息查询所述文件数据的下一个普数据块或文件尾块,直至确认所述文件数据的全部存储块;读取所述文件数据的全部存储块,得到所述文件数据的历史数据。6.根据权利要求4所述的方法,其特征在于,所述将所述N个数据块与所述历史数据对应存储块的块数据作比较,确定所述N个数据块写入和/或改写的存储块,并将所述存储块对应的所述文件数据的数据块写入和/或改写至所述存储块包括:标识当前...
【专利技术属性】
技术研发人员:王心侠,林杯淋,
申请(专利权)人:惠尔丰信息系统有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。