一种面向高清媒体的嵌入式文件存储结构及存储方法

文档序号:6356013阅读:162来源:国知局
专利名称:一种面向高清媒体的嵌入式文件存储结构及存储方法
技术领域
本发明涉及嵌入式文件系统技术领域,特别涉及ー种面向高清媒体文件的嵌入式文件存储结构及存储方法。
背景技术
随着媒体产业进入高清时代大环境的到来,加之高清化带来的数据存储技术的应用以及以嵌入式系统为支撑的嵌入式平台的应用背景下,采用现有的嵌入式存储技术存储高清媒体文件暴露出诸多问题,如出现文件易丢失、系统易崩溃、操作及数据不可恢复,以及I/o性能的有限所造成的播放卡顿等问题。目前应用于嵌入式系统的文件系统有ext2、ext3和ReiserFS,这些文件系统各有优势,但是由于嵌入式系统的自身资源受限、易受外界因素影响,导致现有的文件系统的可 靠性、稳定性与数据一致性并没有很好的保障。ext2文件系统广泛应用于Linux操作系统中,其性能受到很多用户的肯定。但是该文件系统在读写操作发生异常情况时,ext2文件的丢失率及文件系统损坏率都非常高。虽然,ext2文件系统包含了系统一致性检测模块与修复模块e2fsck,但e2fsck在出错时对要对文件系统进行全面的扫描,时间复杂度与空间复杂度随数据量呈线性增长。因此对于资源有限、易受外界环境影响、需要高运行效率的嵌入式存储系统是不合适的。ext3文件系统在兼容ext2的基础上添加了日志机制,但是经过其在嵌入式系统上的测试发现,由于日志机制、分组处理方法、数据块回收等机制对易受外界环境影响的嵌入式系统并不适用,因此其存储系统的可靠性仍然无法保证。ReiserFS相比ext2的性能有较大提高,也包含日志机制,但是ReiserFS有些目录操作并不同步,可能会导致ー些重度依赖文件锁机制的应用程序的数据损毀。另外ReiserFS没有磁盘整理程序,每升级ー个版本都要对磁盘进行格式化。因此,针对上述问题,目前还没有完整、全面、适用的嵌入式媒体数据存储并可提高性能的存储解决方案,尤其是面向大数据量的高清媒体文件的数据存储组织解决方案。

发明内容
本发明的目的在干,为克服现有的嵌入式系统的文件系统存在的种种问题,本发明提供了一种面向大数据量的高清媒体文件的数据存储组织解决方案,即ー种面向高清媒体文件的嵌入式系统的文件存储结构及存储方法。本发明为了达到用户数据与元数据、目录数据的彻底分离,则必须使用分区域存储结构将其彻底分离,同时需要保证能够通过元数据检索到用户数据,并实现文件系统所包含的其它操作功能。本实施例中存储结构的整体设计采用分区域结构,使用数据片链表方式进行存储,保证了各个区域的独立、连续、可扩展的性质,可达到性能稳定、存储可靠的目的。本发明提供的ー种面向高清媒体的嵌入式文件存储结构,该文件存储结构采用分区域形式将元数据与目录数据分开存储,其特征在于,所述的文件存储结构包含卷标域,用于存储本文件存储结构的属性信息;片单元索引域,用于对确定的本文件存储结构的最小存储单元进行管理,所述的片单元索引域内部为各个文件占用数据块的链表;目录索引域,用于记录具体文件或目录的属性信息,并通过提供具体文件对应片単元在所述的片単元索引域中的首地址实现对文件占用片单元链表头的定位;数据域,用于保存文件对应的实际数据,使用时通过片单元索引域进行索引管理与所述的片単元索引域建立映射关系;临时交換域,用于存储为辅助内存查找而生成的ー些临时数据,同时保存对系统元数据的快照以及操作日志记录; 其中,所述片单元索引域、目录索引域、数据域和临时交換域之间采用指针进行索引;所述片单元索引域包含若干4字节地址指针,其中所述地址指针被不同存储文件分为若干组,且每组指向同一文件的地址指针依次存放指向该文件的下一个存储単元的地址;所述目录索引域是目录索引部分,包含若干个目录索引项,每个目录索引项记录不同文件或目录的属性信息;所述数据域由若干连续的数据片单元组成,每个数据片单元中均只存放文件的数据信息,即文件以数据片为单元进行存储;所述临时交换域存储所述目录索引域中目录项的哈希表。
上述技术方案中,所述文件存储结构的属性信息包含分区标示信息、分区的大小、片存储単元的大小、片存储単元的数量、以及片単元索引域的大小、目录索引域的大小、数据域的大小、临时交換域的大小和各区域的起始位置指针;所述文件或目录的属性信息包括文件类型、文件的修改状态、文件大小、文件名称、文件对应数据片单元索引的首地址和父目录项位置。所述临时数据包括文件属性、目录项位置信息和文件名称字节数。基于上述文件存储结构本发明还提供ー种面向高清媒体的嵌入式文件存储方法,所述的文件存储方法包含I)挂载文件存储结构的步骤;2)文件存储结构的分区之间采用指针查找确定样本数据文件在数据域中存储位置的步骤。上述技术方案中,所述挂载文件存储系统的步骤进一歩包含首先,嵌入式操作系统首先读取卷标域中的信息,从而得到所述卷标域中存储的片单元相关属性信息、目录索引域相关属性信息、数据域相关属性信息及临时交換域属性信息;然后,根据获得的片单元相关属性信息、目录索引域相关属性信息、数据域相关属性信息及临时交換域属性信息确定各区域的起始位置和大小,以及数据片单元容量。上述技术方案中,所述查找确定样本数据文件在数据域中存储位置的步骤进一歩包含
2-1)给定ー个文件的完整路径名称,由该文件路径名借助临时交换域找到该文件对应的目录项;2-2)将目录索引项中的片单元索引首地址字段作为链表头;2-3)在片单元索引域中从链表头开始,依次读取整个指针链,组成文件的片单元索引数组;2-4)由文件读写位置偏移和文件的片单元索引数组,计算出读写位置在数据域中的存储位置,确定目标数据相对于数据域起始位置的偏移量。
其中,所述步骤2-4)采用下式确定目标数据相对数据域起始位置的偏移ESU[i] XSUsize+offset其中,FSU[i]是给定文件的第i个逻辑片单元在数据域中的片单元号;SUsize为片単元大小;i是逻辑片单元号;pp0S为读写的目标数据在相对于文件开头的逻辑位置,用片单元大小SUsize整除ppos,得到的商为i,余数为offset。所述步骤2-3)的片单元索引域进ー步包含如下步骤2-3-1)使用4字节表示ー个指针地址;2-3-2)初始化状态、删除状态均以一特定值A表示该索引単元为空闲域;2-3-3)片单元索引域中的每个索引単元中均存放指向下一索引単元的指针;2-3-4)文件结束片単元索引単元的指针域为另ー特定值B ;2-3-5)以A与B判断文件是否在写入后正常关闭,其中B为正常关闭。另外,所述的临时交换域根据文件路径名进行哈希查找。本发明的优点在于I)嵌入式系统,利用本发明的存储结构可以将文件元数据与实际数据分离,便于文件系统的组织管理;2)利用本发明的存储方法,降低了元数据数量,并能够利用独立的区域之间的指针索引关系,实现对文件目录项信息定位、文件索引链表建立以及文件实际数据读写操作,能够有效提高文件系统的读写性能。


图I为本发明提供的文件结构分区域的存储结构示意图;图2为本发明提供的卷标域的具体存储结构图;图3_a为本发明提供的片单元索引域包含的四字节指针初始状态的存储结构图;图3_b为本发明提供的片单元索引域的四字节指针存放指向下一数据单元的索引指针的存储结构示意图;图3-c为本发明提供的某两个文件名为File_l与File_2的文件在片单元索引域中的存储结构示意图;图4为本发明提供的某两个文件名为File_l与File_2的文件在目录索引域的存储结构示意图;图5为本发明提供的某两个文件名为File_l与File_2的文件在目录索引域的存储结构树形图;图6为本发明提供的片单元索引域与数据域对应关系示意图;图7为本发明提供的临时交换域结构图;图8为本发明提供的文件系统各个区域之间的关联示意图;图9为本发明提供的文件存储系统在发生读写操作时定位样本文件的步骤的流程图。
具体实施例方式下面结合附图和具体实施方式
对本发明作进ー步的说明。如图I所示,该图为本发明提供的分区域文件存储结构包含五个不同功能区域的示意图,该五部分可參考本发明的申请人在申请号是“201010531503. 3”的发明专利“一种用于高清媒体的嵌入式文件系統”,这五个不同功能区域分别为卷标域、片单元索引域、目录索引域、数据域和临时交換域。如图2所示,该图为本发明文件系统存储结构的卷标域的具体结构图。其中,卷标域占用一个片单元,片单元索引域从第二个片单元起始。其包含了该分区标示信息“MSFS_MST”、该分区的大小Partitionsize、片存储单元的大小SUsize、片存储単元的数量SUnum、以及片单元索引域的大小SUIsize、目录索引域的大小EIsize、数据域的大小DSUsize、临时交換域的大小TSUsize,以及各区域的起始位置指针*PSUI、*PEI、*PDSU、*PTSU,其余为Reserved字段,为便扩展。该区域信息不需要进行不断地更新,所以降低了因为更新卷标域而宕机的可能性。如图3-a、3_b和3_c所示,该图为本发明提供的文件系统存储结构的片单元索引域具体结构图。其中,片单元索引即通过索引指针对文件的最小数据单元进行索引能够迅速定位文件数据块所存储的位置从而加快文件的读写操作。片单元索引由4字节指针组成的,每个指针均表示一个片单元。因此,片单元索引域容量SUIsize计算公式如下
权利要求
1.ー种面向高清媒体的嵌入式文件存储结构,该文件存储结构采用分区域形式将元数据与目录数据分开存储,其特征在于,所述的文件存储结构包含 卷标域,用于存储本文件存储结构的属性信息; 片单元索引域,用于对确定的本文件存储结构的最小存储单元进行管理,所述的片单元索引域内部为各个文件占用数据块的链表; 目录索引域,用于记录具体文件或目录的属性信息,并通过提供具体文件对应片単元在所述的片単元索引域中的首地址实现对文件占用片单元链表头的定位; 数据域,用于保存文件对应的实际数据,使用时通过片单元索引域进行索引管理与所述的片単元索引域建立映射关系; 临时交換域,用于存储为辅助内存查找而生成的ー些临时数据,同时保存对系统元数据的快照以及操作日志记录; 其中, 所述片单元索引域、目录索引域、数据域和临时交換域之间采用指针进行索引; 所述片单元索引域包含若干4字节地址指针,其中所述地址指针被不同存储文件分为若干组,且每组指向同一文件的地址指针依次存放指向该文件的下ー个存储单元的地址;所述目录索引域是目录索引部分,包含若干个目录索引项,每个目录索引项记录不同文件或目录的属性信息; 所述数据域由若干连续的数据片单元组成,每个数据片单元中均只存放文件的数据信息,即文件以数据片为单元进行存储; 所述临时交换域存储所述目录索引域中目录项的哈希表。
2.根据权利要求I所述的面向高清媒体的嵌入式文件存储结构,其特征在于,所述文件存储结构的属性信息包含分区标示信息、分区的大小、片存储単元的大小、片存储単元的数量、以及片単元索引域的大小、目录索引域的大小、数据域的大小、临时交換域的大小和各区域的起始位置指针。
3.根据权利要求I所述面向高清媒体的嵌入式文件存储结构,其特征在于,所述文件或目录的属性信息包括文件类型、文件的修改状态、文件大小、文件名称、文件对应数据片単元索引的首地址和父目录项位置。
4.根据权利要求I所述的面向高清媒体的嵌入式文件存储结构,其特征在于,所述临时数据包括文件属性、目录项位置信息和文件名称字节数。
5.ー种面向高清媒体的嵌入式文件存储方法,该方法基于以下所述的文件存储结构该文件存储结构采用分区域形式将元数据与目录数据分开存储,包含 卷标域,用于存储本文件存储系统的属性信息; 片单元索引域,用于对确定的本文件系统最小存储单元进行管理,所述的片単元索引域内部为各个文件占用数据块的链表; 目录索引域,用于记录具体文件或目录的属性信息,并通过提供具体文件对应片単元在所述的片単元索引域中的首地址实现对文件占用片单元链表头的定位; 数据域,用于保存文件对应的实际数据,使用时通过片单元索引域进行索引管理与所述的片単元索引域建立映射关系; 临时交換域,用于存储为辅助内存查找而生成的ー些临时数据,同时保存对系统元数据的快照以及操作日志记录; 其中, 所述片单元索引域、目录索引域、数据域和临时交換域之间采用指针进行索引; 所述片单元索引域包含若干4字节地址指针,其中所述地址指针被不同存储文件分为若干组,且每组指向同一文件的地址指针依次存放指向该文件的下ー个存储单元的地址;所述目录索引域是目录索引部分,包含若干个目录索引项,所述每个目录索引项进ー步包含文件与目录的名称字段、片单元索引首地址字段或属性信息字段; 所述数据域由若干连续的数据片单元组成,每个数据片单元中均只存放文件的数据信息,即文件以数据片为单元进行存储; 所述临时交换域存储所述目录索引域中目录项的哈希表; 所述的文件存储方法包含 1)挂载文件存储结构的步骤; 2)文件存储结构的分区之间采用指针查找确定样本数据文件在数据域中存储位置的步骤。
6.根据权利要求5所述的嵌入式文件存储方法,其特征在于,所述的步骤I)进ー步包含 首先,嵌入式操作系统读取卷标域中的信息,从而得到所述卷标域中存储的片单元相关属性信息、目录索引域相关属性信息、数据域相关属性信息及临时交換域属性信息; 然后,根据获得的片单元相关属性信息、目录索引域相关属性信息、数据域相关属性信息及临时交換域属性信息确定各区域的起始位置和大小,以及数据片单元容量。
7.根据权利要求5所述的嵌入式文件存储方法,其特征在于,所述步骤2)进ー步包含 2-1)给定ー个文件的完整路径名称,由该文件路径名借助临时交换域找到该文件对应的目录索引项; 2-2)将目录索引项中的片单元索引首地址字段作为链表头; 2-3)在片单元索引域中从链表头开始,依次读取整个指针链,组成文件的片单元索引数组; 2-4)由文件读写位置偏移和文件的片单元索引数组,计算出读写位置在数据域中的存储位置,确定目标数据相对于数据域起始位置的偏移量。
8.根据权利要求7所述的嵌入式文件存储方法,其特征在于,所述步骤2-3)的片单元索引域进ー步包含如下步骤 2-3-1)使用4字节表示ー个指针地址; 2-3-2)初始化状态、删除状态均以一特定值A表示该索引单元为空闲域; 2-3-3)片单元索引域中的每个索引単元中均存放指向下一索引単元的指针; 2-3-4)文件结束片単元索引単元的指针域为另ー特定值B ; 2-3-5)以A与B判断文件是否在写入后正常关闭,其中B为正常关闭。
9.根据权利要求7所述的面向高清媒体的嵌入式文件存储方法,其特征在于,所述的临时交換域根据文件路径名进行哈希查找。
全文摘要
本发明公开了一种面向高清媒体的嵌入式文件存储结构及存储方法,存储结构包括卷标域、片单元索引域、目录索引域、数据域和临时交换域;卷标域用于记录文件系统自身的属性信息;片单元索引域对本文件系统的最小数据单元进行索引,并与数据域建立映射关系;目录索引域用于记录具体文件或目录的属性信息;数据域保存文件对应的实际数据,使用时通过片单元索引域进行索引管理;临时交换域存储为辅助内存查找而生成的一些临时数据。利用上述五个域之间相互作用关系来实现在嵌入式系统中文件的存储组织和管理。本发明的优点是提供一种元数据与实际数据分离的存储结构,能够提高文件系统的稳定性和读写效率。
文档编号G06F17/30GK102682015SQ20111006145
公开日2012年9月19日 申请日期2011年3月15日 优先权日2011年3月15日
发明者刘贤卓, 吴丽彬, 孙鹏, 王劲林, 邓峰 申请人:中国科学院声学研究所, 北京中科智网科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1