[发明专利]一种快速的FAT32磁盘分区遍历及文件查找方法有效
| 申请号: | 201510355756.2 | 申请日: | 2015-06-24 |
| 公开(公告)号: | CN105045528B | 公开(公告)日: | 2018-08-31 |
| 发明(设计)人: | 梅业龙;舒展 | 申请(专利权)人: | 武汉烽火众智数字技术有限责任公司 |
| 主分类号: | G06F3/06 | 分类号: | G06F3/06;G06F17/30 |
| 代理公司: | 武汉宇晨专利事务所 42001 | 代理人: | 黄瑞棠 |
| 地址: | 430074 湖*** | 国省代码: | 湖北;42 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 快速 fat32 磁盘分区 遍历 文件 查找 方法 | ||
本发明公开了一种快速的FAT32磁盘分区遍历及文件查找方法,涉及FAT32文件系统、磁盘数据查找及还原技术。本方法是裸盘读取根目录区及各子目录区磁盘扇区数据到内存中,对各级目录区进行目录项搜索查找:在同一个目录区逐步增加32字节进行“横向搜索”、对查找到的子目录项进行“向下搜索”到其子目录区起始位置及当前目录区查找完成后通过“向上搜索”回退到上一级目录区保存的搜索位置进行查找,依次遍历完成根目录区各目录项子树的搜索查找,并对文件目录项进行文件属性查找、归类及有序保存。本发明提高了遍历和查找速度,为后续文件查找、读取或者下载提高了整体性能;特别适用于嵌入系统中FAT32文件系统分区遍历及文件查找。
技术领域
本发明涉及FAT32文件系统、磁盘数据查找及还原技术,尤其涉及一种快速的FAT32磁盘分区遍历及文件查找方法。
背景技术
FAT32文件系统是一种由微软发明并拥有部分专利的文件系统,FAT32文件的位置及属性以目录项形式保存在目录区中,数据区存储文件数据;
FAT32文件系统通过字段标志区分不同的类别的目录项:按照文件存放目录层次划分为根目录项或子目录项,根目录项及子目录项位于各级目录区(对应不同的磁盘簇)中;按照文件名长度划分为长文件名目录项或短文件名目录项;并且,通过字段标志位可以识别父目录项或者当前簇目录项。
FAT32文件系统将组织数据使用的目录抽象为文件,以简化对数据的管理。FAT32文件系统短文件名目录项占用32个字节,长文件名目录项长度随文件名的长短变化不等(为32个字节倍数);
FAT32文件系统中使用FAT(File Allocation Table)表示记录的磁盘簇信息,是用于磁盘数据位而引起的一种链式结构。文件的存储按照FAT表制定的簇链式存储结构来进行;FAT32文件的簇地址,是使用4个字节记录在FAT表项中。这些地址为FAT表项,FAT表项记录的值称为FAT表项值。
FAT32 文件系统在WINDOWS、LINUX及嵌入式系统中得到较好支持或应用。但是在不同系统间不方便遍历及查找文件,特别是对于分区中大量文件的遍历及下载,通过上层软件共享或识别查找的方式,需要经过上层软件处理中转及同一目录区触发多次磁盘读取操作,效率较低。
发明内容
本发明目的就在于克服现有技术存在的缺点和不足,提供一种快速的FAT32磁盘分区遍历及文件查找方法。
本发明的目的是这样实现的:
裸盘读取根目录区及各子目录区磁盘扇区数据到内存中,对各级目录区进行目录项搜索查找:在同一个目录区逐步增加32字节进行“横向搜索”、对查找到的子目录项进行“向下搜索”到其子目录区起始位置及当前目录区查找完成后通过“向上搜索”回退到上一级目录区保存的搜索位置(包含当前簇地址、当前扇区编号及扇区内偏移地址)进行查找,依次遍历完成根目录区各目录项子树的搜索查找,并对搜索到的文件目录项进行文件属性查找、归类及有序保存到内存或者其它介质中。
具体地说,本方法包括下列步骤:
①获取分区相关参数及计算相关扇区位置信息;
②裸盘读取根目录区磁盘起始扇区到内存中,设置扇区偏移地址为0;
③内存中临时保存当前目录项搜索位置;
④判断搜索位置是否为父目录项或者当前目录项;
⑤判断搜索位置是否为长文件名目录项;
⑥判断搜索位置是否为子目录项(短文件名目录项);
⑦判断搜索位置为文件目录项并且文件大小字段大于或等于0;
⑧文件属性查找、归类及有序保存;
⑨判断搜索位置是否位于根目录区最后一个扇区尾部;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于武汉烽火众智数字技术有限责任公司,未经武汉烽火众智数字技术有限责任公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201510355756.2/2.html,转载请声明来源钻瓜专利网。





