支持动态管理的块映射文件系统技术方案

技术编号:24613331 阅读:32 留言:0更新日期:2020-06-24 01:03
本发明专利技术公开了一种支持动态管理的块映射文件系统,用于对磁盘空间进行管理,当块映射文件系统收到上层传来的文件操作请求时,块映射文件系统首先对DBI进行索引获得对应的DBI数据结构,再通过DBI数据结构中的分配的首BBM索引号定位到对应的BBM数据结构,通过BBM数据结构中后一BBM索引号确定一个文件是由哪些BBM索引组成,从而确定了一个文件由哪些数据单元DBU组成,再对数据单元DBU完成读写操作后更新BBM数据结构;其中一条DBI数据结构对应一个文件,一条BBM数据结构对应一个DBU。本发明专利技术采用映射表的方式管理磁盘空间,文件的追加、删除、磁盘空间的释放都将变得简单灵活。

Block mapping file system supporting dynamic management

【技术实现步骤摘要】
支持动态管理的块映射文件系统
本专利技术涉及嵌入式实时操作系统中的文件系统,特别涉及在航空机载环境中进行可靠数据存储的嵌入式文件系统中的一种支持动态管理的块映射文件系统。
技术介绍
嵌入式文件系统是嵌入式实时操作系统的重要组成部分,提供对海量数据在存储设备或分区上进行文件组织的方法。负责为用户建立、读取、写入、检索和删除文件等操作提供方法和相应软件接口。嵌入式文件系统能够实现对数据文件和目录的结构化管理,确定数据在存储设备上的存储方式和数据文件之间的逻辑关系,提高存储设备的空间使用效率,完成对数据文件的各种操作,并对用户提供透明的文件操作接口。目前航空机载环境普遍采用FAT32文件系统和部分定制文件系统。FAT32文件系统接口标准,数据结构复杂,在实际使用过程中,也暴露出可靠性差、文件易损坏等诸多问题;针对FAT32所暴露出来的问题,部分定制文件系统采用轻量化设计,具备可靠性高、文件掉电非易失等特点,但这类文件系统针对数据种类都划分了特定的存储区域与之对应,不同种类的数据不能跨区域进行存储,存储空间的使用上不够灵活。面对航空领域的飞速发展和更高要求,上述嵌入式文件系统都已不能同时满足高可靠性、高灵活度的要求。支持动态管理的块映射文件系统(DynamicDataBlockMappingFileSystem)在保证可靠性的大前提下,能够做到磁盘空间的动态管理,不再局限在磁盘特定区域只能存放固定种类数据的限制,各种类型数据都能灵活存放,文件删除后的空间会被文件系统回收用来存放其他类型的数据,实现了磁盘空间的动态管理;DDBM文件系统接口标准,能够无缝耦合进现有嵌入式实时操作系统,和标准通讯协议能够做到无需改动接口就可以直接挂接并使用;DDBM文件系统作为一款针对嵌入式环境开发的航空定制高可靠文件系统,可以满足航空机载环境的产品支撑,具有数据存放安全可靠,磁盘空间灵活管理,接口标准等特点。
技术实现思路
本专利技术的专利技术目的在于提供一种支持动态管理的块映射文件系统,打破原有一种数据类型对应一个数据分区的模式,将整个磁盘空间统一管理,采用映射表的方式管理磁盘空间,文件的追加、删除、磁盘空间的释放都将变得简单灵活,为现有和未来航空机载数据存储设备提供一个具有高可靠性、高灵活度和标准接口的航空嵌入式文件系统。本专利技术的专利技术目的通过以下技术方案实现:一种支持动态管理的块映射文件系统,用于对磁盘空间进行管理,当块映射文件系统收到上层传来的文件操作请求时,块映射文件系统首先对DBI进行索引获得对应的DBI数据结构,再通过DBI数据结构中的分配的首BBM索引号定位到对应的BBM数据结构,通过BBM数据结构中后一BBM索引号确定一个文件是由哪些BBM索引组成,从而确定了一个文件由哪些数据单元DBU组成,再对数据单元DBU完成读写操作后更新BBM数据结构;其中一条DBI数据结构对应一个文件,一条BBM数据结构对应一个DBU。本专利技术的有益效果在于:本专利技术大大提高了航空机载环境下嵌入式文件系统的可靠性,对通用文件系统和部分专用文件系统不能同时兼顾高可靠和高灵活的缺陷进行了有效的改进,将整个磁盘空间统一管理,采用映射表的方式管理磁盘空间,文件的追加、删除、磁盘空间的释放都将变得简单灵活,为航空机载嵌入式环境下的高可靠文件系统的研发提供了关键技术路线图。附图说明图1是块映射文件系统对磁盘空间的划分图。图2是块映射文件系统的DBI数据结构图。图3是块映射文件系统中块映射关系图。图4是块映射文件系统的BBM数据结构图。图5是块映射文件系统与I/O系统之间的关系框图。图6是块映射文件系统的层次图。图7是块映射文件系统中单个文件的组成示意图图8是块映射文件系统数据软件架构图。图9是块映射文件系统的数据结构关系图。具体实施方式下面结合附图和实施例对本专利技术作进一步的详细说明。本实施例所示的一种支持动态管理的块映射文件系统采用DOS分区规范,参见图1所示的块映射文件系统对磁盘空间的划分图,磁盘首扇区为主引导记录MBR(MainBootRecord),在此基础上,增加了数据索引区DBI(DataBlockIndex),磁盘块映射区BBM(BlocktoBlockMap)和数据区DBA(DataBlockAera)。数据区DBA又被切分成了若干连续的相同大小的数据单元DBU(DataBlockUnit),块映射文件系统的基本数据单位为DBU。同一产品中DBU大小固定大小根据具体应用的不同,在64MBytes到2GBytes范围之间可调,但在同一产品中大小固定。主引导记录MBR中存放块映射文件系统相关信息,包括DBI数据结构总条数,BBM数据结构总个数,磁盘标记,魔数等信息。MBR中的文件系统相关信息只读不写,其信息由地面工具在对磁盘格式化的时候写入,存储设备在磁盘插入设备初始化过程中进行读取。主引导记录MBR是最上层数据结构,记录了块映射文件系统的关键信息,通过MBR可以确定DBI位置、BBM位置、DBI总数和BBM总数等信息。磁盘末尾存有备份MBR信息MBR2。数据索引区DBI中存放DBI数据结构,磁盘末尾存有备份DBI2并自带校验和,防止因设备异常掉电或其他原因造成的数据存坏,从而保证块映射文件系统的可靠性。DBI数据结构建立的条件是每当新建文件时就建立一条DBI数据结构,同一文件夹下的DBI数据结构中的文件夹信息保持一致;当新建DBI数据结构时DBI的空间已满将启动循环记录,删除时间上最早的DBI数据结构并释放对应的BBM数据结构和DBU空间。参见图2所示,每条DBI数据结构对应一个文件分配的首BBM索引号,用于快速查找文件对应实际内容的BBM数据结构。DBI数据结构由于不需要频繁读写,建立和更新后都将直接将DBI数据结构写入磁盘。DBI数据结构中的具体含义由表1定义:表1磁盘块映射区BBM是DBA中数据单元DBU的映射,参见图3所示,每一个DBU对应BBM中的一条BBM数据结构,BBM数据结构总数和DBU总数保持一致,DBU1对应BBM1数据结构,DBU2对应BBM2数据结构,依此类推。DBU中只存放数据,DBU中存放的数据类型,属于哪一个文件,文件的完整路径、文件的读写位置等关键信息都存放在对应的BBM数据结构中,索引顺序与DBU划分顺序一一对应。参见图4所示,BBM数据结构中定义了对应DBU的起始地址和结束地址,块映射文件系统每次对DBU的操作都需要先查询对应的BBM以获取关键信息,操作完成后要及时更新相应的BBM信息。为保证数据的一致性,BBM数据结构和DBU的更新顺序规定为先写入数据暨先写入DBU,再更新BBM数据结构。通过这种写入方式,即便存储设备异常掉电,也不会出现BBM数据结构中指示的数据和实际DBU中存储的数据出现不一致的情况。磁盘块映射区BBM紧跟数据索引区DBI存放,磁盘末尾存有备份BBM2并自带校验和,防止因设备异常掉电或其他原因造本文档来自技高网
...

【技术保护点】
1.一种支持动态管理的块映射文件系统,用于对磁盘空间进行管理,其特征在于当块映射文件系统收到上层传来的文件操作请求时,块映射文件系统首先对DBI进行索引获得对应的DBI数据结构,再通过DBI数据结构中的分配的首BBM索引号定位到对应的BBM数据结构,通过BBM数据结构中后一BBM索引号确定一个文件是由哪些BBM索引组成,从而确定了一个文件由哪些数据单元DBU组成,再对数据单元DBU完成读写操作后更新BBM数据结构;其中一条DBI数据结构对应一个文件,一条BBM数据结构对应一个DBU。/n

【技术特征摘要】
1.一种支持动态管理的块映射文件系统,用于对磁盘空间进行管理,其特征在于当块映射文件系统收到上层传来的文件操作请求时,块映射文件系统首先对DBI进行索引获得对应的DBI数据结构,再通过DBI数据结构中的分配的首BBM索引号定位到对应的BBM数据结构,通过BBM数据结构中后一BBM索引号确定一个文件是由哪些BBM索引组成,从而确定了一个文件由哪些数据单元DBU组成,再对数据单元DBU完成读写操作后更新BBM数据结构;其中一条DBI数据结构对应一个文件,一条BBM数据结构对应一个DBU。


2.根据权利要求1所述的一种支持动态管理的块映射文件系统,其特征在于所述磁盘空间包含主引导记录MBR、数据索引区DBI、磁盘块映射区BBM和数据区DBA,数据区DBA又被切分成了若干连续的相同大小的数据单元DBU,数据索引区DBI存储DBI数据结构,磁...

【专利技术属性】
技术研发人员:王博王夕臣王波章诗晨
申请(专利权)人:中国航空无线电电子研究所
类型:发明
国别省市:上海;31

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1