主页(http://www.pttcn.net):DVR文件系统及硬盘发展趋势 嵌入式DVR与PC机一样,都存在硬盘文件系统。嵌入式DVR硬盘文件系统可分为两类,一是与PC机相同的FAT文件系统,第二种是嵌入式DVR生产厂家自行开发的,适合存储大容量媒体数据流的专业文件系统。 通用文件系统的不足之处 PC系统使用的FAT文件系统,对于长时间录像产生的大数据包(几G到数十G的数据)无法管理,只能进行分包,将一段完整的录像,分为若干个小的文件包,如5、10、30分钟自动形成一个文件,或者150M、200M作为一个文件。因此容易产生包与包之间丢帧现象,同时硬盘磁头需要频繁地读写数据与文件索引,磁头频繁跳动,对于每天十几到二十四小时连续读写硬盘的DVR系统,极容易造成硬盘故障。同时硬盘录满后,需要删除整段文件,但新录制的文件与老的文件大小不同,由此会在硬盘上产生大量碎片空间,影响硬盘的使用和系统效率。另外,FAT文件系统用做录像机录像资料管理还存在两个风险,一是文件分配表如果损坏,则录像资料大多会丢失,二是系统突然断电或遭到人为破坏,当前的录像数据不能够保存。 针对FAT文件系统在媒体数据流存储领域中的不足之处,专业公司开发了适合媒体数据流存储方式的硬盘管理文件系统,该系统可以高效率地管理整个硬盘,不受录像数据包大小影响,录像机从开始到结束为一个录像机段,录像机段长度可从几秒钟到几十小时,数据可从几K到几十T。采用这种硬盘管理方式,克服了FAT系统对长时间录像管理存在的缺陷。由于不存在分包录像,因此也不存在包与包之间丢帧现象;磁头不需要频繁读写数据与文件索引,延长硬盘使用寿命;硬盘录满后,采用逐帧覆盖技术,不存在硬盘碎片。可以将硬盘形象地比做一盘录像机带,硬盘任何地方的错误,不会影响前面或后面的录像。在突然断电的情况下,也能保存断电前瞬间的图像;同时,原始录像资料盘数据与PC不兼容,无法在PC上直接修改,保证原始资料的保密性和可靠性。 但由于开发难度和资金投入的限制,多数嵌入式DVR生产企业仍然会采用FAT文件存储方式对硬盘录像机进行数据管理。从嵌入式DVR硬盘文件系统的发展方向看,长时间稳定录像采用这种方式可以大幅度提高硬盘录像机的可靠性,但需要专业公司具备开发硬盘操作系统的能力与经验,目前国内只有少数几个厂家拥有该项技术。 专业文件系统 驱动器参数结构是文件系统访问驱动器的依据,它包含驱动器的操作状态、储存特征、链表指针、校验标记等信息。硬盘排列时,根据驱动器的操作状态(特别是录像起止时间),驱动器形成双向链表,链表指针被填充。硬盘格式化时,根据硬盘容量和分区个数生成DPT,再用DPT来初始化每个分区的驱动器参数结构,并保存到对应扇区。硬盘初始化时,根据DPT中的驱动器参数结构扇区偏移直接得到驱动器参数结构。 对于大数据量的流媒体应用,系统采用单位比较大的簇来管理数据,这样可以提高效率,而数据碎片的影响可以忽略不计。每簇与目录区和索引区中的目录结构、索引结构物理上一一对应。写数据时,目录结构、索引结构、簇在物理上都是顺序申请的,按照申请的时间先后次序,各个通道混合存放。 其中簇标志用于标识文件的起始和结束,数据标志和数据属性用于文件的查找和定位,关联属性将特定通道的簇链接起来,主要用于文件的连续读取。 簇标志 数据标志 数据属性 关联属性 保留 缓冲管理 为了提高缓冲的命中率,缓冲开设大小应该大于64个扇区单元,如果系统内存资源不存在问题,则加大开设的缓冲数。在大的缓冲数开设情况下,系统存在缓冲查找的时间开销,为减小这部分开销,在定位缓冲时采用hash查找。Hash表的长度定为缓冲数的2倍以上。由于访问上顺序特性,hash函数可以直接从LBA的低位生成。 在突然断电的情况下,为了能够恢复数据,对目录区必须进行随时保存,所以缓冲在任意情况下都能进行同步,同步方式有单缓冲、单驱动器、所有缓冲。 电源管理 |