本申请实施例涉及嵌入式开发,涉及但不限于一种文件数据存储方法、装置、设备及存储介质。
背景技术:
1、在嵌入式领域中,针对flash存在许多成熟的文件系统,文件系统是常用的核心软件,也是计算机操作系统的重要组成部分。计算机上的网页、文档、代码、照片、视频等数据内容,都是以文件的形式保存在文件系统中的。
2、相关技术通过元数据加块数据的方式进行数据存储,但是相关技术中对于嵌入式文件系统中元数据块存储空间不足,需要触发压缩或分裂过程导致耗时的问题无法解决。
技术实现思路
1、本申请实施例的目的在于提供本申请实施例的目的在于提供一种文件数据存储方法、装置、设备及存储介质,以解决相关技术中嵌入式文件系统中元数据块存储空间不足,导致需要触发压缩或分裂过程耗时的问题。
2、为了实现上述目的,本申请实施例提供一种文件数据存储方法,所述方法包括:
3、在存储空间中确定元数据块;响应于待存储文件数据的存储请求,在存储空间中创建文件存储块,并将所述文件存储块的存储块信息存放在所述元数据块中;将所述待存储文件数据存储至所述文件存储块中。
4、根据上述技术手段,将待存储文件数据存放在新创建的文件存储块中,减少了元数据块中存储的数据量,能够有效地提高文件系统的内存使用率和提高对文件的读写效率,优化了文件系统的存储结构;同时通过减少对元数据块中空间的占用,来避免元数据块进行压缩操作,导致文件系统产生额外耗时的问题,不仅提高了文件系统的存储效率,还提高了文件系统的性能和可靠性。
5、在一些实施例中,所述方法还包括:对所述元数据块的剩余存储空间进行检测,得到检测结果;响应于所述检测结果表征所述剩余存储空间小于预设阈值,对所述元数据块中的数据进行数据处理,得到数据处理后的元数据块的第一剩余存储空间;响应于所述第一剩余存储空间小于所述预设阈值,对所述元数据块进行分裂处理,以通过分裂后的数据块对所述存储块信息进行存储。
6、根据上述技术手段,对元数据块的存储空间进行了清理,避免了元数据块空间不足而导致的频繁的进行压缩和分裂,减少了压缩和分裂的耗时,提高了文件系统的效率。
7、在一些实施例中,所述对所述元数据块中的数据进行数据处理,得到数据处理后的元数据块的第一剩余存储空间,包括:对所述元数据块中的数据进行数据对比,确定所述元数据块中的冗余数据;对所述冗余数据进行删除处理,得到数据处理后的元数据块的所述第一剩余存储空间。
8、在一些实施例中,所述对所述元数据块进行分裂处理,包括:在存储空间中创建文件分裂块,并将所述文件分裂块的分裂块信息存放在所述元数据块中;根据所述数据处理后的元数据块中的数据数量,确定数据分裂点;将所述元数据块中位于所述数据分裂点之后的数据,存储至所述文件分裂块中。
9、根据上述技术手段,仅在元数据块中存储了待存储文件数据的信息和文件存储块的存储块信息,元数据块中的数据占有空间小,避免了元数据块空间不足而导致的频繁的进行压缩和分裂,减少了压缩和分裂的耗时,提高了文件系统的效率。
10、在一些实施例中,所述在存储空间中确定元数据块,包括:将所述存储空间中与超级块相邻的下一个数据块,确定为所述元数据块,并将所述元数据块的元数据块信息存放在所述超级块中。
11、在一些实施例中,所述方法还包括:响应于文件系统基于所述超级块成功挂载,通过所述超级块中的元数据块信息跳转至所述元数据块;响应于所述文件系统的文件存储操作,在所述元数据块中记录所述操作信息。
12、根据上述技术手段,本申请实施例将文件存储操作的记录存储在元数据块中,使得超级块的读写和操作记录隔离开来,如此避免了操作都记录在超级块,当超级块读写过多发生坏块时,将会导致整个文件系统崩溃不可挂载的问题。
13、在一些实施例中,所述方法还包括:响应于所述元数据块处于坏块状态,在所述存储空间中确定新的元数据块;将处于坏块状态的元数据块中的数据转移至所述新的元数据块中,并将所述新的元数据块的元数据块信息更新至所述超级块中。
14、根据上述技术手段,避免了超级块读写过多发生坏块时,将会导致整个文件系统崩溃不可挂载的问题。
15、本发明的有益效果:
16、(1)在超级块中提交了元数据块的标签信息,并用元数据块来记录根目录的操作,来将超级块的读写和根目录操作隔离开,避免了操作都记录在超级块,当超级块读写过多发生坏块时,将会导致整个文件系统崩溃不可挂载的问题,以此来实现文件系统的可靠性增强;
17、(2)对元数据块的存储空间进行清理,避免了元数据块空间不足而导致的频繁的进行压缩和分裂,减少了元数据块压缩和分裂的耗时,提高了文件系统的效率;
18、(3)优化了文件系统中文件的存储方式,将文件内的数据都存储在新分配的块中并以跳表的存储结构进行存储,以此减少对元数据块中空间的占用,来避免元数据块进行压缩操作导致文件系统产生额外的耗时的问题。
1.一种文件数据存储方法,其特征在于,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
3.根据权利要求2所述的方法,其特征在于,所述对所述元数据块中的数据进行数据处理,得到数据处理后的元数据块的第一剩余存储空间,包括:
4.根据权利要求2所述的方法,其特征在于,所述对所述元数据块进行分裂处理,包括:
5.根据权利要求1至4任一项所述的方法,其特征在于,所述在存储空间中确定元数据块,包括:
6.根据权利要求5所述的方法,其特征在于,所述方法还包括:
7.根据权利要求6所述的方法,其特征在于,所述方法还包括:
8.一种文件数据存储装置,其特征在于,所述装置包括:
9.一种文件数据存储设备,其特征在于,所述设备包括:
10.一种计算机可读存储介质,其上存储有可执行指令,用于引起处理器执行所述可执行指令时,实现权利要求1至7任一项所述的文件数据存储方法。