本帖最后由 oyljerry 于 2013-12-19 10:56:38 编辑

解决方案 »

  1.   

    我一猜就是安防行业的,你们不买磁阵吗?不会是ext3格式的吧?什么公司?
      

  2.   

    我一猜就是安防行业的,你们不买磁阵吗?不会是ext3格式的吧?什么公司?
    现在用的就是磁阵
      

  3.   

    我一猜就是安防行业的,你们不买磁阵吗?不会是ext3格式的吧?什么公司?
    现在用的就是磁阵
    自己定义文件系统吧,不然迟早要换,我手里有套按照通道进行分块和区进行存储的,直接写裸盘。。
      

  4.   

    我一猜就是安防行业的,你们不买磁阵吗?不会是ext3格式的吧?什么公司?
    现在用的就是磁阵
    自己定义文件系统吧,不然迟早要换,我手里有套按照通道进行分块和区进行存储的,直接写裸盘。。
    >>可否分享?
      

  5.   

    我一猜就是安防行业的,你们不买磁阵吗?不会是ext3格式的吧?什么公司?
    现在用的就是磁阵
    自己定义文件系统吧,不然迟早要换,我手里有套按照通道进行分块和区进行存储的,直接写裸盘。。
    >>可否分享?
    这个牵涉到公司信息安全,没办法了,建议就是自己写裸盘,能提高利用率和查找,读写速度,还能解决ext3断电重启带来的bug
      

  6.   

    在微软可好?
    hehe,not bad。
      

  7.   

    在裸盘或磁阵上,根据偏移量自己将硬盘格式化为区,块,每个区上有块索引信息,块上有视频帧索引信息,比如帧的宽高,是否关键帧,时间戳等;然后一路视频就顺序的往块上写,一个块写满了就申请下一个,这样就保证是顺序写的了,方便查找,也充分利用了磁盘,写完帧数据要更新索引,这样即便断电也不影响文件索引。。
    你一个人是做不出来的,哪家安防?
    >>为什么一个人做不出来?算法复杂 还是 工作量很大?
      

  8.   

    首先对于文件系统本身的设计,需要从你的实际需求出发考虑很多问题,块分配/回收策略,坏块处理,索引结构设计,元数据,可恢复性,等等;从实现上讲,你下需要和存储设备驱动打交道(甚至有可能要自己处理物理存储设备,编写存储设备驱动),上需要和IO manager、FastIO(Cache manager)等等系统组件打交道,另外你可能还要小心翼翼处理好各种插在driver stack上的filter。
    无论是设计,还是实现,都很复杂。在裸盘或磁阵上,根据偏移量自己将硬盘格式化为区,块,每个区上有块索引信息,块上有视频帧索引信息,比如帧的宽高,是否关键帧,时间戳等;然后一路视频就顺序的往块上写,一个块写满了就申请下一个,这样就保证是顺序写的了,方便查找,也充分利用了磁盘,写完帧数据要更新索引,这样即便断电也不影响文件索引。。
    你一个人是做不出来的,哪家安防?
    >>为什么一个人做不出来?算法复杂 还是 工作量很大?首先对于文件系统本身的设计,需要从你的实际需求出发考虑很多问题,块分配/回收策略,坏块处理,索引结构设计,元数据,可恢复性,等等;从实现上讲,你下需要和存储设备驱动打交道(甚至有可能要自己处理物理存储设备,编写存储设备驱动),上需要和IO manager、FastIO(Cache manager)等等系统组件打交道,另外你可能还要小心翼翼处理好各种插在driver stack上的filter。
    无论是设计,还是实现,都很复杂。
      

  9.   

    在裸盘或磁阵上,根据偏移量自己将硬盘格式化为区,块,每个区上有块索引信息,块上有视频帧索引信息,比如帧的宽高,是否关键帧,时间戳等;然后一路视频就顺序的往块上写,一个块写满了就申请下一个,这样就保证是顺序写的了,方便查找,也充分利用了磁盘,写完帧数据要更新索引,这样即便断电也不影响文件索引。。
    你一个人是做不出来的,哪家安防?
    >>为什么一个人做不出来?算法复杂 还是 工作量很大?首先对于文件系统本身的设计,需要从你的实际需求出发考虑很多问题,块分配/回收策略,坏块处理,索引结构设计,元数据,可恢复性,等等;从实现上讲,你下需要和存储设备驱动打交道(甚至有可能要自己处理物理存储设备,编写存储设备驱动),上需要和IO manager、FastIO(Cache manager)等等系统组件打交道,另外你可能还要小心翼翼处理好各种插在driver stack上的filter。
    无论是设计,还是实现,都很复杂。那么复杂? 这些知识可以从哪里得到? 有书 还是开源的系统?
      

  10.   

    在裸盘或磁阵上,根据偏移量自己将硬盘格式化为区,块,每个区上有块索引信息,块上有视频帧索引信息,比如帧的宽高,是否关键帧,时间戳等;然后一路视频就顺序的往块上写,一个块写满了就申请下一个,这样就保证是顺序写的了,方便查找,也充分利用了磁盘,写完帧数据要更新索引,这样即便断电也不影响文件索引。。
    你一个人是做不出来的,哪家安防?
    >>为什么一个人做不出来?算法复杂 还是 工作量很大?首先对于文件系统本身的设计,需要从你的实际需求出发考虑很多问题,块分配/回收策略,坏块处理,索引结构设计,元数据,可恢复性,等等;从实现上讲,你下需要和存储设备驱动打交道(甚至有可能要自己处理物理存储设备,编写存储设备驱动),上需要和IO manager、FastIO(Cache manager)等等系统组件打交道,另外你可能还要小心翼翼处理好各种插在driver stack上的filter。
    无论是设计,还是实现,都很复杂。那么复杂? 这些知识可以从哪里得到? 有书 还是开源的系统?在裸盘或磁阵上,根据偏移量自己将硬盘格式化为区,块,每个区上有块索引信息,块上有视频帧索引信息,比如帧的宽高,是否关键帧,时间戳等;然后一路视频就顺序的往块上写,一个块写满了就申请下一个,这样就保证是顺序写的了,方便查找,也充分利用了磁盘,写完帧数据要更新索引,这样即便断电也不影响文件索引。。
    你一个人是做不出来的,哪家安防?
    >>为什么一个人做不出来?算法复杂 还是 工作量很大?首先对于文件系统本身的设计,需要从你的实际需求出发考虑很多问题,块分配/回收策略,坏块处理,索引结构设计,元数据,可恢复性,等等;从实现上讲,你下需要和存储设备驱动打交道(甚至有可能要自己处理物理存储设备,编写存储设备驱动),上需要和IO manager、FastIO(Cache manager)等等系统组件打交道,另外你可能还要小心翼翼处理好各种插在driver stack上的filter。
    无论是设计,还是实现,都很复杂。那么复杂? 这些知识可以从哪里得到? 有书 还是开源的系统?
    从头设计一个简单的文件系统分两部分:设计,和实现。
    设计方面你可以参考一下《Practical File System Design》(这本书以BeOS的文件系统作为例子),《UNIX Filesystems: Evolution, Design, and Implementation》(比较老但是好在文件系统的变化不是特别大),以较简单的文件系统如FAT入手学习设计一个文件系统要考虑哪些方面。
    实现方面,你需要首先决定在哪个OS上实现你的文件系统,Windows,还是Linux。视OS不同,内核编程、调试的基础知识必不可少,再结合一些开源项目,仔细分析学习代码。
      

  11.   

    Windows上,《Inside the Windows NT File System》和《Windows NT File System Internals》也是必不可少的;Linux上,因为都是开源的,以开源文档和代码为主要学习材料吧。