分离式文件系统及其管理方法技术方案

技术编号:8190981 阅读:170 留言:0更新日期:2013-01-10 01:52
本发明专利技术公开了一种分离式文件系统及其管理方法,旨在提供一种用于无线传感网络节点的分离式文件系统及其管理方法。文件系统的物理结构包括主控MCU以及分别与主控MCU连接的E2PROM存储器和Flash存储器。文件系统的逻辑结构包括位于E2PROM存储器的功能辅助区、目录区、页面管理区和位于Flash存储器的数据区。目录区存放文件目录信息,页面管理区放置文件各部分在数据区的具体位置信息,数据区存放文件内容信息,文件内容信息写入和读取的基本单位为一条传感数据。数据区包括若干个页面,每一个页面可以存储若干条传感数据。本发明专利技术减少了内存占用、减少Flash存储器的擦写次数,适用于无线传感网络节点。

【技术实现步骤摘要】

本专利技术涉及ー种文件存储系统,尤其是涉及一种用于无线传感网络节点的。
技术介绍
自2009年8月温总理提出“感知中国”以来,物联网技术高速的发展着,传统的传感器正逐步实现微型化、智能化、信息化、网络化,即逐步完善物联网四大核心技术之ー的无线传感网技木。无线传感网络主要用于数据采集并通过网络传递。传感网络中可能有大量的传感数据需要本地存储并集中发送,以达到減少通信次数、降低功耗、减小对网络实时 性要求、提升数据传送成功率的目的。存储大量的传感数据需要一种适用的管理方式,而现有的基于Flash文件系统主要应用于嵌入式系统,对内存限制不高,外存容量也比较大。这对于无线传感器网络节点内存受限、以传感数据为信息単元的应用不适合。中华人民共和国国家知识产权局于2006年8月23日公开了公开号为CN1822230A的专利文献,名称是基于NADA Flash存储器文件系统的实现方法,它是建立NAND Flash存储器文件系统控制块索引,利用索引进行链表化区块分配和链表化垃圾数据收回,并以猝发式输入输出进行数据读写,使用垃圾区块回收机制来回收那些不再包含有效数据的块。但是本方案在读取和写入时仍然是以块为操作对象,具有较大的内存占用,难以适用于无线传感网络。
技术实现思路
本专利技术主要是解决现有技术所存在的读写基本単位较大、对内存占用大、对存储器的擦写频繁的技术问题,提供ー种以单条信息为读写对象、占用内存少、減少对存储器擦写次数的。本专利技术针对上述技术问题主要是通过下述技术方案得以解决的一种分离式文件系统,包括主控MCU、第一存储器和第二存储器,所述第一存储器和第二存储器分别与所述主控MCU连接,所述第一存储器为E2PR0M存储器,所述第二存储器为Flash存储器。E2pRom存储器能够单字节的读写,而Flash存储器由于本身特性,对于存储器的写操作只能将I写为0,反之不行,故对Flash进行操作时需要先擦除后写入数据,而Flash存储器只能对ー个数据段进行擦除。基于以上特性,提出了将需要经常进行修改保存的目录及页面管理区存储于可单字节读写的E2pR0M存储器中,而将数据量较大不需经常修改的传感数据存储于Flash存储器。本专利技术中的E2PR0M泛指可以直接进行单字节读写的存储器,如FRAM (铁电存储器,无读写次数的限制)。主控MCU控制数据在各存储器中的读取、写入和删除。一种分离式文件系统管理方法,具体为建立目录区、页面管理区和数据区三个逻辑区域,目录区和页面管理区位于E2PR0M存储器,数据区位于Flash存储器,目录区存放文件目录信息,页面管理区放置文件各部分在数据区的具体位置信息,数据区存放文件内容信息,文件内容信息为传感数据,文件内容信息写入和读取的基本单位为一条传感数据,数据区包括若干个页面(Page),每一个页面可以存储若干条传感数据。作为优选,还建立有开发预留区和功能辅助区,开发预留区和功能辅助区都位于E2PR0M存储器,开发预留区存放开发过程中使用到的序列号、密钥和系统参数中的一种或多种,功能辅助区包括存放文件的格式化标志的格式化标志区(FormatFlag)和存放要删除文件Fid号的被删文件区(FidToDelete)。文件Fid号为文件在目录区中所占的目录编号,例如第一条目录的文件Fid号为1,第一条目录的文件Fid号为2,以此类推。作为优选,所述目录区包括若干个目录数据单元,每个目录数据单元包括 文件名区,存放文件名称; 文件类型区(FileType),存放文件类型,并说明文件所存储的信息类型、信息单元的长度和数据区的一个页面能存储的数据条数; 起始页面区(StartPage),存放文件的起始页面号,可用于查找文件的起始位置; 页面总数区(PageCount),存放文件占用的页面数量,可用于指示文件占用存储空间的大小; 末页信息区(LstCount),存放文件在最后一个页面具有的传感数据条数,联合PageCount能计算出文件总的传感数据条数。信息单元具体指存储于Flash数据区的最小读写单元,即一条传感数据,每条传感数据的长度可根据应用的不同来设定。作为优选,所述页面管理区包括若干个页面管理单元,页面管理单元的数量与数据区的页面的数量相同,并且页面管理单元与数据区的页面按顺序一一对应,每个页面管理单元包括 下一页位置区(NextPage),存放下一个属于文件的页面的位置或者文件尾; 从属状态区(Fid),存放本页面管理单元所对应的页面的状态。从属状态包括此页为空和不为空两种状态。页面管理单元具有三种情况1、NextPage数据为O,Fid数据不为O,则表示该页面管理单元所对应的页面为文件尾;2、NextPage数据为O,Fid数据为O,表示该页面管理单元所对应的页面为空闲页; 3、NextPage数据不为O,Fid数据不为O,表示该页面管理单元所对应的页面已被文件占用。页面管理区为链表式结构,即每个页面管理单元都指明本文件的下一个页面管理单元的位置。而页面管理单元与数据区页面按顺序一一对应,读取数据区的数据时只要找到页面管理单元就可以找到对应的页面。作为优选,文件管理包括初始化、写入、读取、格式化和删除; 格式化具体操作为删除目录区的所有数据和页面管理区的所有数据,同时将格式化标志设置为已格式化的状态; 删除具体操作为=SlOl将要删除文件的Fid号存入被删文件区; S102通过遍历目录区查找到要删除的文件对应的目录数据単元; S103根据目录数据单元的起始页面区查找第一个页面管理単元; S104根据各页面管理単元的链式结构删除所有本文件的页面管理単元的数据直至最后ー页; S105将被删文件区中存放的要删除文件的Fid号删除。作为优选,初始化操作具体为 S201主控MCU上电,读取格式化标志,如果格式化标志表明文件已经格式化,则跳转到步骤S203,如果格式化标志表明文件未被格式化,则跳转到步骤S202 ; S202删除目录区的所有数据和页面管理区的所有数据,同时将格式化标志设置为已格式化的状态,然后跳转到步骤S203 ; S203读取要删除的文件信息,如果要删除的文件信息为有文件要删除的状态,则跳转到步骤S204,否则结束初始化; S204遍历目录区和页面管理区,删除目录区的所有数据和页面管理区的所有数据,减少文件碎片占用存储空间的可能,结束初始化。作为优选,写入的具体操作为 S301判断要写入的文件是否存在,如果存在则跳转到步骤S302,否则跳转到步骤S304 ; S302判断是否还有页面空间用于存储数据,如果没有页面空间则写入失败,告知用户空间不足,同时结束写入;如果还有页面空间,则跳转到步骤S303 ; S303根据文件的目录数据単元中的信息计算本条数据在Flash存储器中的位置,将数据写入相应的位置,修改页面总数区和末页信息区的相应信息,告知用户写入成功,结束写入; S304新建文件 ,然后判断文件建立是否成功,如果成功则跳转到步骤S303,如果建立不成功则告知用户空间不足,结束写入。作为优选,读取包括读单条传感数据和读整个文件; 读单条传感数据具体为判断所要读取的传感数据是否文件内;如果不在文件内,则直接退出并告知用户读取失败;如果本文档来自技高网...

【技术保护点】
一种分离式文件系统,其特征在于,包括主控MCU、第一存储器和第二存储器,所述第一存储器和第二存储器分别与所述主控MCU连接,所述第一存储器为E2PROM存储器,所述第二存储器为Flash存储器。

【技术特征摘要】

【专利技术属性】
技术研发人员:卢勇刘家春
申请(专利权)人:利尔达科技有限公司
类型:发明
国别省市:

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

1