基于嵌入式文件结构的文件读取方法、系统、及智能终端与流程

文档序号:35829419发布日期:2023-10-25 02:17阅读:31来源:国知局
基于嵌入式文件结构的文件读取方法、系统、及智能终端与流程

本技术涉及文件读取领域,尤其涉及一种基于嵌入式文件结构的文件读取方法、系统、智能终端及计算机可读存储介质。


背景技术:

1、在嵌入式领域,针对flash(macromedia flash,二维动画软件)存在许多成熟的文件系统。目前常见的文件系统分为以下几个类别:cow(copy-on-write,写时复制)文件系统,代表为btrfs(butter fs,cow文件系统)和zfs(zettabyte file system,动态文件系统);基于日志的文件系统,代表为jffs(journalling flash file system,闪存设备日志型文件系统);日志+cow文件系统,代表为littlefs(小型文件系统)。

2、三种类别的文件系统有着各自的优缺点:cow文件系统性能好,但占用资源高,不适合嵌入式;日志型文件系统支持掉电保护和磨损均衡,但性能不好;而日志+cow型文件系统结合了前两种类型的思想,既支持掉电保护和磨损均衡,且占用资源低,但性能较为一般。采用日志+cow文件系统打开一个文件时,根据传入的想要读取的文件路径来对元数据中存储的文件id进行遍历匹配,即使得到了匹配结果也只会暂存到最佳匹配结果当中,需要遍历完整个元数据时,才会返回当前的最佳匹配结果,因此导致读取较慢,影响文件读取速度。

3、因此,现有技术还有待于改进和发展。


技术实现思路

1、本技术的主要目的在于提供一种基于嵌入式文件结构的文件读取方法、系统、智能终端及计算机可读存储介质,旨在解决现有技术中读取嵌入式文件时,得到了匹配结果也只会暂存到最佳匹配结果当中,需要遍历完整个元数据时,才会返回当前的最佳匹配结果,因此导致读取较慢,影响文件读取速度的问题。

2、本技术第一方面实施例提供一种基于嵌入式文件结构的文件读取方法,包括以下步骤:获取元数据块,根据所述元数据块获取待读取嵌入式文件的第一文件信息;获取哈希结构,根据所述第一文件信息从所述哈希结构的信息中获取第二文件信息,其中,所述哈希结构为嵌入式文件的数据存储结构,所述第二文件信息为所述哈希结构的信息中的一条信息;根据预先设定的存储关系,提取所述第二文件信息对应的位置信息,根据所述位置信息读取所述待读取嵌入式文件的信息。

3、根据上述技术手段,本技术实施例可以通过元数据块来获取待读取嵌入式文件的第一文件信息,再根据第一文件信息从哈希结构的众多信息中获取到第二文件信息,根据第二文件信息从而可以找到待读取嵌入式文件的位置,进而读取待读取嵌入式文件的信息,从而使得在读取嵌入式文件时,无需遍历整个哈希结构以及元数据块,在获取到第一文件信息后即获取第二文件信息,对应的在该过程中一旦通过哈希结构获取到对应的第二文件信息,便结束对哈希结构中信息的提取,从而可以快速的读取到待读取嵌入式文件。

4、可选地,在本技术的一个实施例中,所述获取元数据块,根据所述元数据块获取待读取嵌入式文件的第一文件信息,之前还包括:将所有的嵌入式文件的打开路径和文件标签信息存储到所述元数据块中,其中,每一个嵌入式文件的第一文件信息从对应的文件标签信息中获取;将每一个嵌入式文件的第一文件信息、与每一个嵌入式文件的第一文件信息对应的第二文件信息以及与每一个第二文件信息对应的位置信息存储到所述哈希结构中。

5、根据上述技术手段,本技术实施例可以在读取待读取嵌入式文件之前,按照将要读取嵌入式文件的方法对应的进行存储,将所有的嵌入式文件的打开路径和文件标签信息存储到元数据块中,从而可以在读取嵌入式文件时,根据嵌入式文件的打开路径获取到元数据块中的存储的文件标签信息,进而从文件标签信息中获取到第一文件信息;而本技术实施例再将每一个嵌入式文件的第一文件信息、第二文件信息与位置信息对应的存储到哈希机构中,使得在读取嵌入式文件时,可以根据对应关系方便快捷的获取到要读取的嵌入式文件的信息。

6、可选地,在本技术的一个实施例中,所述基于嵌入式文件结构的文件读取方法还包括:获取所述元数据块的剩余内存空间大小,当所述剩余内存空间大小小于预设大小时,根据预设的冗余信息去除方式将所述元数据块中的非冗余数据提取到新的元数据块中。

7、根据上述技术手段,本技术实施例可以在运行时间很久的情况下,元数据块中存储了大量的冗余信息时对这部分冗余信息进行清除,而这部分冗余信息的存在导致元数据块的空间被占用,会影响到之后的嵌入式文件存储以及读取,因此在申请实施例的清除方式下,可以快速的将冗余数据去除,而将非冗余数据存储到一个新的元数据块中,从而使得新的元数据块中的存储空间变大,不会影响到嵌入式文件的存储以及读取。

8、可选地,在本技术的一个实施例中,所述根据预设的冗余信息去除方式将所述元数据块中的非冗余数据提交到新的元数据块中,具体包括:遍历所述元数据块中的每一个文件标签信息,判断所述文件标签信息是否为所述冗余数据;若所述文件标签信息为冗余数据,则标记所述文件标签信息为去除数据;若所述文件标签信息不为冗余数据,则不标记所述文件标签信息;将所有未被标记的所述文件标签信息和对应的打开路径提取到所述新的元数据块中。

9、根据上述技术手段,本技术实施例可以在删除冗余数据的过程中,只需要判断元数据块每一个文件信息数据中每个文件标签信息是否为冗余数据,若是的话则不给标记,若不是则给予标记;最后将所有的带有标记的文件标签信息提取到新的元数据块中,从而通过统一处理,一次性将非冗余数据置于新的元数据块中,快速高效的处理掉了非冗余数据。

10、可选地,在本技术的一个实施例中,所述判断所述文件标签信息是否为所述冗余数据,具体包括:获取所述哈希结构,判断所述哈希结构的信息的最终状态标识是否为预定冗余标识;若所述哈希结构的信息的最终状态标识不为所述预定冗余标识,则与所述哈希结构的信息对应的文件标签信息不为冗余数据;若所述哈希结构的信息的最终状态标识为所述预定冗余标识,则与所述哈希结构的信息对应的文件标签信息为冗余数据。

11、根据上述技术手段,本技术实施例可以在判断标签信息是否为冗余数据的时候,直接对元数据块中文件标签信息对应的哈希结构中的信息的最终标识判断是否为预设的冗余标识,若是预设的冗余标识,则说明该文件标签信息对应的文件被删除了,因此提交了预设的冗余标识,若不是预设的冗余标识则说明对应的文件仍然存在,则不能删除对应的文件标签信息;通过对文件标签信息的快速判断,可以迅速的判断出哪部分为冗余信息从而给元数据块清理出空间,便于嵌入式文件的存储与读取。

12、可选地,在本技术的一个实施例中,所述获取哈希结构,根据所述第一文件信息从所述哈希结构的信息中获取第二文件信息,具体包括:获取所述哈希结构,依次获取所述哈希结构的信息中的每一条信息,依次判断从所述哈希结构的信息中获取的信息是否与所述第一文件信息相同;若从所述哈希结构的信息中获取的信息与所述第一文件信息相同,则从所述哈希结构的信息中获取的信息为第二文件信息。

13、根据上述技术手段,本技术实施例可以在根据第一文件信息从哈希结构中获取对应的第二文件信息时,从第二文件信息中依次获取对应的信息,并判断获取的信息是否与第一文件信息相同,若获取到的信息与第一文件信息相同,则说明此时获取到的信息为待打开嵌入式文件存储在哈希结构中的信息,则对应的获取第二文件信息,通过该技术手段使得在获取第二文件信息时可以一一对应的获取,从而使得获取到的第二文件信息不会出错,保证了嵌入式文件打开时的安全性。

14、可选地,在本技术的一个实施例中,所述获取所述哈希结构,依次获取所述哈希结构的信息中的每一条信息,依次判断从所述哈希结构的信息中获取的信息是否与所述第一文件信息相同,之后还包括:若从所述哈希结构的信息中获取的信息与所述第一文件信息不相同,则获取所述哈希结构的信息中的下一条信息;遍历所述哈希结构的信息中的所有信息,直到获取到所述第二文件信息。

15、根据上述技术手段,本技术实施例可以在根据第一文件信息获取第二文件信息时,依次遍历哈希结构,从而不会遗漏任何一条数据,进而使得根据第一文件信息获取第二文件信息的过程依次遍历,保证了获取过程的全面。

16、本技术第二方面实施例提供一种基于嵌入式文件结构的文件读取系统,所述基于嵌入式文件结构的文件读取系统包括:第一文件信息获取模块,用于获取元数据块,根据所述元数据块获取待读取嵌入式文件的第一文件信息;第二文件信息获取模块,用于获取哈希结构,根据所述第一文件信息从所述哈希结构的信息中获取第二文件信息,其中,所述哈希结构为嵌入式文件的数据存储结构,所述第二文件信息为所述哈希结构的信息中的一条信息;文件读取模块,用于根据预先设定的存储关系,提取所述第二文件信息对应的位置信息,根据所述位置信息读取所述待读取嵌入式文件的信息。

17、可选地,在本技术的一个实施例中,所述基于嵌入式文件结构的文件读取系统还包括:第一数据存储模块,用于将所有的嵌入式文件的打开路径和文件标签信息存储到所述元数据块中,其中,每一个嵌入式文件的第一文件信息从对应的文件标签信息中获取;第二数据存储模块,用于将每一个嵌入式文件的第一文件信息、与每一个嵌入式文件的第一文件信息对应的第二文件信息以及与每一个第二文件信息对应的位置信息存储到所述哈希结构中。

18、可选地,在本技术的一个实施例中,所述基于嵌入式文件结构的文件读取系统还包括:冗余清除模块,用于获取所述元数据块的内存空间大小,当所述内存空间大小小于预设大小时,根据预设的冗余信息去除方式将所述元数据块中的非冗余数据提取到新的元数据块中。

19、可选地,在本技术的一个实施例中,所述冗余清除模块包括:第一判断单元,用于遍历所述元数据块中的每一个文件标签信息,判断所述文件标签信息是否为所述冗余数据;第一标记单元,用于若所述文件标签信息为冗余数据,则标记所述文件标签信息为去除数据;第二标记单元,用于若所述文件标签信息不为冗余数据,则不标记所述文件标签信息;元数据块更新单元,用于将所有未被标记的所述文件标签信息和对应的打开路径提取到所述新的元数据块中。

20、可选地,在本技术的一个实施例中,本技术实施例的第一判断单元还包括:状态标识判断单元,用于获取所述哈希结构,判断所述哈希结构的信息的最终状态标识是否为预定冗余标识;第一冗余判断单元,用于若所述哈希结构的信息的最终状态标识不为所述预定冗余标识,则与所述哈希结构的信息对应的文件标签信息不为冗余数据;第二冗余判断单元,用于若所述哈希结构的信息的最终状态标识为所述预定冗余标识,则与所述哈希结构的信息对应的文件标签信息为冗余数据。

21、可选地,在本技术的一个实施例中,本技术实施例的第二文件信息获取模块包括:第二判断单元,用于获取所述哈希结构,依次获取所述哈希结构的信息中的每一条信息,依次判断从所述哈希结构的信息中获取的信息是否与所述第一文件信息相同;第二文件信息获取单元,用于若从所述哈希结构的信息中获取的信息与所述第一文件信息相同,则从所述哈希结构的信息中获取的信息为第二文件信息。

22、可选地,在本技术的一个实施例中,本技术实施例的基于嵌入式文件结构的文件读取系统还包括:遍历单元,用于若从所述哈希结构的信息中获取的信息与所述第一文件信息不相同,则获取所述哈希结构的信息中的下一条信息;遍历获取单元,用于遍历所述哈希结构的信息中的所有信息,直到获取到所述第二文件信息。

23、本技术第三方面实施例提供一种智能终端,所述车辆包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的基于嵌入式文件结构的文件读取程序,所述基于嵌入式文件结构的文件读取程序被所述处理器执行时实现如上述实施例所述的基于嵌入式文件结构的文件读取方法的步骤。

24、本技术第四方面实施例提供一种计算机可读存储介质,所述计算机可读存储介质存储有基于嵌入式文件结构的文件读取程序,所述基于嵌入式文件结构的文件读取程序被处理器执行时实现如上述实施例所述的基于嵌入式文件结构的文件读取方法的步骤。

25、本技术的有益效果:

26、(1)本技术实施例可以在读取嵌入式文件时,通过元数据块获取第一文件信息,进而通过第一文件信息在哈希结构中依次获取第二文件信息,进而读取到嵌入式文件,其中,当获取到第二文件信息时立即结束对哈希结构的遍历,从而在读取嵌入式文件时无需遍历完整个元数据块,只需要从中获取到第一文件信息,也无需遍历整个哈希结构,只需要获取到对应的第二文件信息即可对嵌入式文件进行读取,从而使得整个嵌入式文件的读取过程更加快速。

27、(2)本技术实施例可以在存储嵌入式文件时,依照本技术实施例嵌入式文件的读取方式进行对应存储,从而在进行读取时可以根据存储的内容快速的读取到需要读取的嵌入式文件。

28、(3)本技术实施例可以在元数据块的空间不足时,直接通过哈希结构中的信息的最终状态,判断对应的文件是否被删除,根据文件删除情况对应的删除掉对应元数据块中冗余的内容,而在该过程中所用的时间复杂度更低。

29、本技术附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本技术的实践了解到。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1