[发明专利]建立磁盘空簇表及查找磁盘空簇的方法和装置有效
申请号: | 200810125792.X | 申请日: | 2008-06-25 |
公开(公告)号: | CN101303667A | 公开(公告)日: | 2008-11-12 |
发明(设计)人: | 马魁勇 | 申请(专利权)人: | 炬力集成电路设计有限公司 |
主分类号: | G06F12/02 | 分类号: | G06F12/02;G06F3/06 |
代理公司: | 北京德琦知识产权代理有限公司 | 代理人: | 宋志强;麻海明 |
地址: | 519085广东省珠海市*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 建立 磁盘 空簇表 查找 方法 装置 | ||
1.一种建立磁盘空簇表的方法,所述磁盘包括磁盘文件分配表FAT,所述FAT中包括用于标示磁盘中对应簇是否为空簇的记录项,其特征在于,该方法包括步骤:
将所述FAT中的至少两个所述记录项设置为一个FAT段,且FAT段之间连续;
建立空簇表,所述空簇表中包括和所述FAT段一一对应的表项,所述表项的表项值标示对应的FAT段中是否包括标示空簇的记录项。
2.如权利要求1所述的方法,其特征在于,所述空簇表在磁盘所在系统开机后建立,所述表项的表项值标示对应的FAT段中是否包括标示空簇的记录项的设置过程为:
A1、为所述空簇表中的表项设置初始值,所述初始值标示对应的FAT段中不包括标示空簇的记录项;将从FAT起始位置开始的第一个FAT段作为当前FAT段;
B1、读取当前FAT段,通过检查当前FAT段中的记录项的值,判断当前FAT段中是否包括标示空簇的记录项,如果是,则执行步骤C1;否则直接执行步骤D1;
C1、将当前FAT段对应的表项的初始值,修改为标示对应的FAT段中包括标示空簇的记录项的表项值,然后执行步骤D1;
D1、将当前FAT段的下一个FAT段作为更新后的当前FAT段,判断所述更新后的当前FAT段的起始位置是否超出所述FAT的结束位置,如果是则结束流程,否则继续返回执行步骤B1。
3.如权利要求2所述的方法,其特征在于,所述判断当前FAT段中是否包括标示空簇的记录项为:
从当前FAT段起始位置开始,依次检查记录项的值,当检查到一个记录项的值标示空簇时,确定当前FAT段中包括标示空簇的记录项。
4.如权利要求2所述的方法,其特征在于,磁盘的引导区域中存储有所述FAT的起始位置和大小;所述判断更新后的当前FAT段的起始位置是否超出所述FAT的结束位置,是依据所述引导区域中的存储内容进行的。
5.如权利要求1所述的方法,其特征在于,每个FAT段的大小为一个扇区。
6.一种查找磁盘空簇的方法,所述磁盘包括磁盘文件分配表FAT,所述FAT中包括用于标示磁盘中对应簇是否为空簇的记录项;其特征在于,将FAT中的至少两个所述记录项设置为一个FAT段,且FAT段之间连续;建立空簇表,该空簇表包括和FAT段一一对应的表项,所述表项的表项值标示对应的FAT段中是否包括标示空簇的记录项;该方法还包括:
通过检查空簇表中标示对应的FAT段中包括标示空簇的记录项的表项值,确定对应的包括标示空簇的记录项的FAT段;
通过确定的FAT段中的记录项,查找磁盘中对应的空簇。
7.如权利要求6所述的方法,其特征在于,所述确定对应的包括标示空簇的记录项的FAT段为:
将从空簇表起始位置开始的第一个表项作为当前表项;
检查当前表项的表项值是否标示对应的FAT段中包括标示空簇的记录项,如果是则继续执行查找磁盘中空簇的位置的步骤,并在查找结束后将当前表项的下一表项作为更新后的当前表项,再返回执行检查当前表项的表项值的步骤,直到更新后的当前表项为空簇表中的最后一个表项;否则将当前表项的下一表项作为更新后的当前表项,再返回执行检查当前表项的表项值的步骤,直到更新后的当前表项为空簇表中的最后一个表项。
8.一种建立磁盘空簇表的装置,该装置中包括:FAT模块,存储用于标示磁盘中对应簇是否为空簇的记录项;其特征在于,该装置还包括:
设置模块,用于将所述FAT模块中存储的至少两个所述记录项设置为一个FAT段,且FAT段之间连续;
建立模块,用于建立包括和所述FAT段一一对应的表项的空簇表,所述表项的表项值标示对应的FAT段中是否包括标示空簇的记录项。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于炬力集成电路设计有限公司,未经炬力集成电路设计有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200810125792.X/1.html,转载请声明来源钻瓜专利网。