CN102314490B - 一种Linux FAT文件***修复方法及装置 - Google Patents

一种Linux FAT文件***修复方法及装置 Download PDF

Info

Publication number
CN102314490B
CN102314490B CN2011102348858A CN201110234885A CN102314490B CN 102314490 B CN102314490 B CN 102314490B CN 2011102348858 A CN2011102348858 A CN 2011102348858A CN 201110234885 A CN201110234885 A CN 201110234885A CN 102314490 B CN102314490 B CN 102314490B
Authority
CN
China
Prior art keywords
entry
bunch
fat
file system
maximum length
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
CN2011102348858A
Other languages
English (en)
Other versions
CN102314490A (zh
Inventor
余德军
孙明勇
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
MStar Software R&D Shenzhen Ltd
MStar Semiconductor Inc Taiwan
Original Assignee
MStar Software R&D Shenzhen Ltd
MStar Semiconductor Inc Taiwan
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by MStar Software R&D Shenzhen Ltd, MStar Semiconductor Inc Taiwan filed Critical MStar Software R&D Shenzhen Ltd
Priority to CN2011102348858A priority Critical patent/CN102314490B/zh
Priority to TW101100661A priority patent/TWI461904B/zh
Publication of CN102314490A publication Critical patent/CN102314490A/zh
Priority to US13/555,279 priority patent/US20130046736A1/en
Application granted granted Critical
Publication of CN102314490B publication Critical patent/CN102314490B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1415Saving, restoring, recovering or retrying at system level
    • G06F11/1435Saving, restoring, recovering or retrying at system level using file system or storage system metadata

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Library & Information Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明实施例公开了一种Linux FAT文件***修复方法,本发明实施例还提供相应的装置。本方法通过获取文件对应的FAT链;依次检查FAT链中的登记项是否有效;如果检查出有无效的登记项,则将该登记项改为有效;通过上述方式,本发明能够在Linux***中快速修复FAT文件,以使损失降到最低,并且避免可能导致的***崩溃。

Description

一种Linux FAT文件***修复方法及装置
技术领域
本发明涉及计算机领域,特别是涉及一种Linux FAT文件***修复方法以及相应的装置。
背景技术
文件配置表(FAT,File Allocation Table)文件***,是一种由微软发明并拥有部分专利的文件***,供MS-DOS使用;FAT文件***考虑当时计算机效能有限,所以未被复杂化,因而被几乎所有个人计算机的操作***支持,此特性使其成为理想的软盘和记忆卡文件***,也适合用作不同操作***中的数据交流。目前,在嵌入式***中,依赖于外接存储设备的应用越来越多,FAT文件***以其简单、高效等优点,在Linux嵌入式应用中占据较多的应用。
FAT文件***包括FAT表,FAT表记录着硬盘数据的存储地址,每一个文件都有一组FAT链指定其存放的一个或者多个簇的簇地址。在磁盘上的每一个可用的簇在FAT表中就只有一个登记项,通过在对应簇号的登记项内填入“表项值”来表明数据区中的该簇是否占用、空闲或是已损坏的。
在对Linux FAT文件***的读写中,如果由于意外断电或者用户非法拔盘等操作,导致FAT文件***损坏,现有技术没有做相应的文件修复,对这些损坏的文件,如果后续再对其操作可能会造成无法读取损坏的文件甚至可能会造成整个***崩溃的严重后果。
在现有技术中,可以通过修复工具进行完全修复,但这种修复方法耗时太长,不适用于嵌入式***。
因此,亟待提供一种在Linux***中快速修复FAT文件的方法,以使损失降到最低,并且避免可能导致的***崩溃。
发明内容
本发明主要解决的技术问题是提供一种Linux FAT文件***修复方法以及装置,能够通过自动修复因意外断电或者非法拔盘等造成的FAT文件***损坏,使用户感觉不到由此带来的不便与困扰,提高了用户体验。
一种Linux FAT文件***修复方法,包括:
获取文件对应的FAT链;
依次检查获取的FAT链中的登记项是否有效;
如果检查出登记项无效,则将该登记项改为有效;
其中,依次检查FAT链中的登记项是否有效的步骤包括:
从FAT链的目录项中获取第一个簇的簇号;
根据簇号获取对应的簇的登记项;
判断登记项是否为已使用状态,如果登记项为已使用状态,且如果登记项为下一个簇的簇号,则判断登记项有效,如果登记项并非为已使用状态,即显示为空闲状态,则判断登记项无效;
其中,如果检查出登记项无效,则将登记项改为有效的步骤包括:
如果判断出登记项是空闲状态,则将登记项改为结束标识。
一种Linux FAT文件***修复装置,包括:
第一获取模块,用于获取文件对应的FAT链;
检查模块,用于依次检查第一获取模块获取的FAT链中的登记项是否有效;
第一更改模块,当检查模块检查出登记项无效,用于将该登记项改为结束标识;
其中,检查模块包括:
第一获取单元,用于从获取模块获取的FAT链的目录项中获取第一个簇的簇号;
第二获取单元,用于根据第一获取单元获取的簇号获取对应的簇的登记项;
第一判断单元,用于判断第二获取单元获取的登记项是否为已使用状态,如果登记项为已使用状态,且如果登记项为下一个簇的簇号,则判断登记项有效,如果登记项并非为已使用状态,即显示为空闲状态,则判断登记项无效。
本发明的有益效果是:区别于现有技术的情况,本发明通过检查FAT表的有效性,当无效时,将其更改为有效,使得后续对文件的读写都可以正常进行;通过自动修复因意外断电或者非法拔盘等造成的FAT文件***损坏,使用户感觉不到由此带来的不便与困扰,提高了用户体验。
附图说明
图1是本发明实施例Linux FAT文件***修复方法的数据流程图;
图2是本发明实施例FAT链出错情况的示意图;
图3是本发明实施例图2中的FAT链修复后的示意图;
图4是本发明实施例FAT链另一出错情况的示意图;
图5是本发明实施例图4中的FAT链修复后的示意图;
图6是本发明实施例FAT链另一出错情况的示意图;
图7是本发明实施例图6中的FAT链修复后的示意图;
图8是本发明实施例图4中的FAT链修复方法的数据流程示意图;
图9是本发明实施例Linux FAT文件***修复装置的逻辑结构示意图;
图10是本发明实施例Linux FAT文件***修复装置的另一逻辑结构示意图。
具体实施方式
参阅图1所示,图1为本发明一实施例Linux FAT文件***修复方法的数据流程图,包括:
101、获取文件对应的FAT链;
FAT文件***包括FAT表,FAT表记录着硬盘数据的存储地址,每一个文件都有一组FAT链指定其存放的一个或者多个簇的簇地址;在取得文件后,首先获取该文件在FAT表中对应的FAT链。
102、从FAT链的目录项中获取第一个簇的簇号;
在获取文件对应的FAT链后,从FAT链的目录项中获取第一个簇的簇号。
103、根据簇号获取对应的簇的登记项;
每个簇有唯一对应的簇号,且每个簇有一个唯一登记项,用于记载该簇是否占用、空闲或是已损坏的;获取到簇号,就能根据该簇号获取对应的簇的登记项。
104、判断登记项是否为已使用状态;
登记项用于记载该簇是否已占用、空闲或是已损坏的;在根据簇号获取对应的簇的登记项后,根据该登记项的数据判断登记项是否为已使用状态,如果登记项记录的是一个簇号,即下一个簇的簇号,则判断该登记项为已使用状态,是有效的,如果登记项记录的是空闲状态,例如FREE(0),则说明本簇的簇号已经写入到FAT链的目录项中,而该簇对应的登记项却仍然未更新,则判断该登记项无效。
105、将登记项改为结束标识;
如果步骤104中判断出登记项是空闲状态,例如为FREE(0),则将登记项改为结束标识并结束流程,例如为EOF(0x0FFFFFFF);例如,请参阅图2、图3,具体而言:
如图2所示,从FAT链的目录项中获取第一个簇的簇号为218,根据簇号218查找对应的簇的登记项,该登记项显示为FREE(0),为空闲状态,说明文件或者文件夹已经分配第一个簇,并且该簇的簇号已经写入到目录项中,而与该簇对应的FAT表中的登记项却仍然未更新,仍然标识为空闲状态,这种情况会导致读取文件或者文件夹时,读不到数据,导致出错甚至***崩溃;所以对于这种情况,可以将FAT表中与该簇对应的登记项设置为EOF(0x0FFFFFFF),即设置为结束标识,如图3所示;虽然该操作会丢失一部分数据,但是读文件时不至于会出错或者出现导致***崩溃的错误。
106、判断登记项的簇号是否等于本FAT文件***所能表示的最大长度;
如果步骤104中判断出登记项是已使用状态,则获取登记项的簇号以及本FAT文件***所能表示的最大长度,并判断登记项的簇号是否等于本FAT文件***所能表示的最大长度。
簇号包括逻辑簇号和虚拟簇号,相互一一对应,逻辑簇号是对整个卷中所有的簇从头到尾所进行的简单编号,虚拟簇号则是对属于特定文件的簇从头到尾进行编号,因为每个簇的大小一定,所以根据虚拟簇号就能清楚地知道到从第一个簇开始到本簇为止,该文件的大小,因为逻辑簇号和虚拟簇号一一对应,所以知道逻辑簇号也能清楚地知道特定文件的大小。
107、将登记项改为结束标识;
如果步骤106中判断出登记项的虚拟簇号等于本FAT文件***所能表示的最大长度,则将该登记项改为结束标识并结束流程;例如,请参阅图4、图5,具体的:
以FAT32为例,最大能存放4G的文件,对应最大的虚拟簇号为0x100000;在图4中,目录项中第一个簇的逻辑簇号为218,逻辑簇号218对应的虚拟簇号为0x1;簇218中的登记项中记录的下一个簇的逻辑簇号为1000,逻辑簇号1000对应的虚拟簇号为0x2;如此一个簇接一个簇,形成FAT链;簇m对应的虚拟簇号为0x100000,已经是FAT32的最大文件存储长度,但是簇m的登记项中显示本簇并不是文件的最后一个簇,还有下一个簇n;FAT链中显示的文件长度大于4G,但是实际数据区存不下超过4G部分的数据,文件在读取的时候,会因为找不到数据而读取失败,导致由于检测到异常、损坏而被设置为只读,或者导致***崩溃;所以对于这种情况,可以将末尾簇的登记项设置为EOF(0x0FFFFFFF),即设置为结束标识,末尾簇为FAT链中登记项中下一个簇的虚拟簇号等于FAT文件***所能表示的最大长度的簇,如图5所示;虽然该操作会丢失一部分数据,与完备的、无任何数据损失的修复相比有一定差距,但是由于这种完全无数据损失的修复需要对整个FAT表和所有目录项进行扫描、分析,耗时较长,特别是当FAT分区的容量增长时,所耗的时间呈几何增长,并且又考虑到耗时长的修复不适合实时要求比较高的嵌入式领域,所以本实施例提供的修复方法是简单有效的;增强了FAT文件***的稳定性,提高了用户体验。
108、判断是否已经到FAT链结尾;
判断是否已经检查到本文件FAT链的结尾,如果已经到FAT链的结尾,即登记项中的记录为EOF(0x0FFFFFFF),则检测结束;如果还没有到FAT链的结尾,则执行步骤109。
109、获取下一个簇的簇号;
如果步骤108中判断出还未到文件结尾,则获取下一个簇的簇号,直至FAT链的结尾;请参阅图6、图7,具体的:
如果FAT链在中间断开,如图6所示,从FAT链的目录项中获取第一个簇的簇号为218,簇218的登记项中记录了下一个簇的簇号为1000,通过簇号1000找到簇1000,簇1000的登记项中记录了下一个簇的簇号为800,簇800的登记项记录的不是结束标识EOF(0x0FFFFFFF),说明该FAT链还没有结束,但是簇800的登记项显示FREE(0),即是空闲的,在还没有检查到结束标识EOF(0x0FFFFFFF)之前,FAT链中出现FREE(0)的登记项,说明该FAT链在中间断开了;这种情况会导致读取文件或者文件夹时,读不到数据,导致出错甚至***崩溃;所以对于这种情况,可以将出错的登记项设置为EOF(0x0FFFFFFF),即设置为结束标识,如图7所示;虽然该操作会丢失一部分数据,但是读文件时不至于会出错或者出现导致***崩溃的错误。
请参阅图8,在另一实施例中,对于FAT链的长度超过FAT文件***所能表示的最大长度的情况,还可以这么解决,具体的:
801、获取FAT链的长度和本FAT文件***所能表示的最大长度。
802、判断FAT链的长度是否大于本FAT文件***所能表示的最大长度,如果FAT链的长度小于本FAT文件***所能表示的最大长度,则结束流程,如果FAT链的长度大于本FAT文件***所能表示的最大长度,则执行步骤803。
803、查找末尾簇;
从FAT链的第一个簇开始,依次查找末尾簇,末尾簇是登记项中记录的下一个簇的簇号等于本FAT文件***所能表示的最大长度的簇。
804、将簇的登记项改为结束标识;
在步骤803中从FAT链中查找到末尾簇后,将该末尾簇的登记项改为结束标识并结束流程。
虽然本实施例中的操作会丢失一部分数据,与完备的、无任何数据损失的修复相比有一定差距,但是由于这种完全无数据损失的修复需要对整个FAT表和所有目录项进行扫描、分析,耗时较长,特别是当FAT分区的容量增长时,所耗的时间呈几何增长,并且又考虑到耗时长的修复不适合实时要求比较高的嵌入式领域,所以本实施例提供的修复方法是简单有效的;增强了FAT文件***的稳定性,提高了用户体验。
请参阅图9,本发明Linux FAT文件***修复装置的实施例包括:
第一获取模块901,用于获取文件对应的FAT链;
检查模块902,用于依次检查第一获取模块901获取的FAT链中的登记项是否有效;
第一更改模块903,用于当检查模块902检查出登记项无效时,将所述登记项改为有效。
其中,检查模块902包括:
第一获取单元,用于从获取模块901获取的FAT链的目录项中获取第一个簇的簇号;
第二获取单元,用于根据第一获取单元获取的簇号获取对应的簇的登记项;
第一判断单元,用于判断第二获取单元获取的登记项是否为已使用状态,如果是下一个簇的簇号则该登记项有效,如果该登记项显示为空闲状态,即为FREE(0),则判断该登记项无效。
进一步的,本实施例中的Linux FAT文件***修复装置还包括:
第二获取模块904,用于当第一判断单元判断出登记项是已使用状态时,获取下一个簇的簇号。
请参阅图10,进一步的,本实施例中Linux FAT文件***修复装置还包括:
第二判断模块905,用于当第一判断单元判断出登记项是已使用状态时,再判断该登记项的簇号是否等于本FAT文件***所能表示的最大长度;
第二更改模块906,用于当所述第二判断模块判断出所述登记项的簇号等于本FAT文件***所能表示的最大长度时,将所述登记项改为结束标识;
第三获取模块907,用于当第二判断模块905判断出登记项的簇号小于本FAT文件***所能表示的最大长度时,获取下一个簇的簇号。
在另一实施例中,本实施例中Linux FAT文件***修复装置还包括:
第三更改模块,用于当FAT链的长度大于本FAT文件***所能表示的最大长度时,将末尾簇的登记项改为结束标识,该末尾簇是登记项为该FAT文件***所能表示的最大长度的簇;
其中,第三更改模块包括:
获取单元,用于获取FAT链的长度和本FAT文件***所能表示的最大长度;
判断单元,用于判断获取单元获取的FAT链的长度是否大于本FAT文件***所能表示的最大长度;
更改单元,用于当判断单元判断出FAT链的长度大于本FAT文件***所能表示的最大长度时,查找末尾簇,该末尾簇是登记项中记录的下一个簇的簇号等于该FAT文件***所能表示的最大长度的簇,并将该末尾簇的登记项改为结束标识。
在本实施例中,通过检查FAT表的有效性,当无效时,将其更改为有效,使得后续对文件的读写都可以正常进行;通过自动修复因意外断电或者非法拔盘等造成的FAT文件***损坏,使用户感觉不到由此带来的不便与困扰,提高了用户体验度。
以上所述仅为本发明的实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。

Claims (10)

1.一种Linux FAT文件***修复方法,其特征在于,包括:
获取文件对应的FAT链;
依次检查所述FAT链中的登记项是否有效;以及
如果检查出所述登记项无效,则将所述登记项改为有效;
其中,所述依次检查所述FAT链中的登记项是否有效的步骤包括:
从所述FAT链的目录项中获取第一个簇的簇号;
根据所述簇号获取对应的簇的登记项;
判断所述登记项是否为已使用状态,如果所述登记项为已使用状态,且如果所述登记项为下一个簇的簇号,则判断所述登记项有效,如果所述登记项并非为已使用状态,即显示为空闲状态,则判断所述登记项无效;
其中,所述如果检查出所述登记项无效,则将所述登记项改为有效的步骤包括:
如果判断出所述登记项是空闲状态,则将所述登记项改为结束标识。
2.根据权利要求1所述的方法,其特征在于,所述判断登记项是否为已使用状态,如果为下一个簇的簇号则所述登记项有效,如果所述登记项显示为空闲,则判断所述登记项无效的步骤之后还包括:
如果判断出所述登记项为已使用状态,则获取下一个簇的簇号,直至所述FAT链的结尾。
3.根据权利要求2所述的方法,其特征在于,所述判断所述登记项是否为已使用状态,如果是下一个簇的簇号则所述登记项有效,如果所述登记项显示为是空闲,则判断所述登记项无效的步骤之后还包括:
如果判断出所述登记项为已使用状态,则再判断所述登记项的簇号是否等于本FAT文件***所能表示的最大长度;
如果所述登记项的簇号等于本FAT文件***所能表示的最大长度,则将所述登记项改为结束标识;
如果所述登记项的簇号小于本FAT文件***所能表示的最大长度,则获取下一个簇的簇号,直至所述FAT链的结尾。
4.根据权利要求1所述的方法,其特征在于,所述方法还包括:
如果所述FAT链的长度大于本FAT文件***所能表示的最大长度,则将末尾簇的登记项改为结束标识,该末尾簇是登记项为所述FAT文件***所能表示的最大长度的簇的登记项。
5.根据权利要求4所述的方法,其特征在于,所述如果所述FAT链的长度大于本FAT文件***所能表示的最大长度,则将末尾簇的登记项改为结束标识的步骤包括:
获取FAT链的长度和本FAT文件***所能表示的最大长度;
判断所述FAT链的长度是否大于本FAT文件***所能表示的最大长度;
如果所述FAT链的长度大于本FAT文件***所能表示的最大长度,则查找末尾簇,所述末尾簇是登记项中记录的下一个簇的簇号等于所述FAT文件***所能表示的最大长度的簇,并将所述末尾簇的登记项改为结束标识。
6.一种Linux FAT文件***修复装置,其特征在于,包括:
第一获取模块,用于获取文件对应的FAT链;
检查模块,用于依次检查所述FAT链中的登记项是否有效;以及
第一更改模块,用于当检查出所述登记项无效时,将所述登记项改为结束标识;
其中,所述检查模块包括:
第一获取单元,用于从所述获取模块获取的FAT链的目录项中获取第一个簇的簇号;
第二获取单元,用于根据所述第一获取单元获取的簇号获取对应的簇的登记项;
第一判断单元,用于判断所述第二获取单元获取的登记项是否为已使用状态,如果所述登记项为已使用状态,且如果所述登记项为下一个簇的簇号,则判断所述登记项有效,如果所述登记项并非为已使用状态,即显示为空闲状态,则判断所述登记项无效。
7.根据权利要求6所述的装置,其特征在于,所述装置还包括:
第二获取模块,用于当第一判断单元判断出所述登记项是已使用状态时,获取下一个簇的簇号,直至所述FAT链的结尾。
8.根据权利要求7所述的装置,其特征在于,所述装置还包括:
第二判断模块,用于当第一判断单元判断出所述登记项是已使用状态时,再判断所述登记项的簇号是否等于本FAT文件***所能表示的最大长度;
第二更改模块,用于当所述第二判断模块判断出所述登记项的簇号等于本FAT文件***所能表示的最大长度时,将所述登记项改为结束标识;
第三获取模块,用于当所述第二判断模块判断出所述登记项的簇号小于本FAT文件***所能表示的最大长度时,获取下一个簇的簇号,直至所述FAT链的结尾。
9.根据权利要求6所述的装置,其特征在于,所述装置还包括:
第三更改模块,用于当所述FAT链的长度大于本FAT文件***所能表示的最大长度时,将末尾簇的登记项改为结束标识,该末尾簇是登记项为所述FAT文件***所能表示的最大长度的簇。
10.根据权利要求9所述的装置,其特征在于,所述第三更改模块包括:
获取单元,用于获取FAT链的长度和本FAT文件***所能表示的最大长度;
判断单元,用于判断所述FAT链的长度是否大于本FAT文件***所能表示的最大长度;
更改单元,用于当所述FAT链的长度大于本FAT文件***所能表示的最大长度时,查找末尾簇,所述末尾簇为登记项中记录的下一个簇的簇号等于所述FAT文件***所能表示的最大长度的簇,并将所述末尾簇的登记项改为结束标识。
CN2011102348858A 2011-08-16 2011-08-16 一种Linux FAT文件***修复方法及装置 Expired - Fee Related CN102314490B (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
CN2011102348858A CN102314490B (zh) 2011-08-16 2011-08-16 一种Linux FAT文件***修复方法及装置
TW101100661A TWI461904B (zh) 2011-08-16 2012-01-06 Linux FAT檔案系統修復方法及裝置
US13/555,279 US20130046736A1 (en) 2011-08-16 2012-07-23 Recovering method and device for linux using fat file system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2011102348858A CN102314490B (zh) 2011-08-16 2011-08-16 一种Linux FAT文件***修复方法及装置

Publications (2)

Publication Number Publication Date
CN102314490A CN102314490A (zh) 2012-01-11
CN102314490B true CN102314490B (zh) 2013-07-10

Family

ID=45427655

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2011102348858A Expired - Fee Related CN102314490B (zh) 2011-08-16 2011-08-16 一种Linux FAT文件***修复方法及装置

Country Status (3)

Country Link
US (1) US20130046736A1 (zh)
CN (1) CN102314490B (zh)
TW (1) TWI461904B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102831025B (zh) * 2012-08-06 2015-09-23 厦门市美亚柏科信息股份有限公司 一种fat32文件***的dbr数据修复方法
US9785517B2 (en) * 2015-06-10 2017-10-10 International Business Machines Corporation Rebuilding damaged areas of a volume table using a volume data set
CN105072372B (zh) * 2015-07-30 2019-03-19 成都亿盟恒信科技有限公司 Dvr终端上的fat文件***自动修复方法
CN106528830B (zh) * 2016-11-16 2019-05-10 华为技术有限公司 一种恢复文件索引目录的方法和装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1272672A (zh) * 1999-02-26 2000-11-08 索尼公司 记录方法、管理方法和记录设备
CN1890645A (zh) * 2003-12-03 2007-01-03 松下电器产业株式会社 信息记录介质的数据处理装置以及数据记录方法
CN101051317A (zh) * 2007-05-11 2007-10-10 北京中星微电子有限公司 一种fat文件***及其处理方法

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5623651A (en) * 1994-06-21 1997-04-22 Microsoft Corporation Method and system for repairing cross-linked clusters and reattaching lost directories on a storage device
TW548542B (en) * 1999-10-12 2003-08-21 Finaldata Inc Data recovery method, said method stored on computer readable medium, and remote data control method and system
CN100442393C (zh) * 1999-10-21 2008-12-10 松下电器产业株式会社 半导体存储卡的访问装置、初始化方法和半导体存储卡
KR100893277B1 (ko) * 2001-08-02 2009-04-17 파나소닉 주식회사 정보 기록 매체, 정보 기록 방법, 정보 기록 장치, 정보 재생 방법 및 정보 재생 장치
CN100458734C (zh) * 2003-11-21 2009-02-04 深圳市朗科科技股份有限公司 移动存储装置的数据管理方法
US7523140B2 (en) * 2004-03-01 2009-04-21 Sandisk Il Ltd. File system that manages files according to content
KR100678888B1 (ko) * 2004-07-19 2007-02-05 삼성전자주식회사 정보를 기록하고 읽는 장치 및 방법
TWI300186B (en) * 2004-07-30 2008-08-21 Mediatek Inc Method and apparatus for data recording with pseudo-merge
WO2006098212A1 (ja) * 2005-03-15 2006-09-21 Matsushita Electric Industrial Co., Ltd. メモリコントローラ、不揮発性記憶装置、不揮発性記憶システム、及びデータ書き込み方法
US7350049B1 (en) * 2005-09-13 2008-03-25 Vimicro Corporation Method and apparatus for managing access to a file allocation table
JP4859837B2 (ja) * 2005-09-22 2012-01-25 パナソニック株式会社 情報記録媒体アクセス装置、及びデータ記録方法
JP2007122221A (ja) * 2005-10-26 2007-05-17 Sony Corp 情報処理装置、および情報処理方法、並びにコンピュータ・プログラム
CN100446000C (zh) * 2006-08-16 2008-12-24 珠海金山软件股份有限公司 Fat卷中重建目录结构和恢复数据的方法
US7917479B2 (en) * 2007-03-20 2011-03-29 Micron Technology, Inc. Non-volatile memory devices, systems including same and associated methods
KR20090097696A (ko) * 2008-03-12 2009-09-16 삼성전자주식회사 파일 액세스 방법 및 이를 이용한 시스템
US8271751B2 (en) * 2008-04-24 2012-09-18 Echostar Technologies L.L.C. Systems and methods for reliably managing files in a computer system
JP5198245B2 (ja) * 2008-12-27 2013-05-15 株式会社東芝 メモリシステム
TWI408551B (zh) * 2009-10-28 2013-09-11 Phison Electronics Corp 快閃記憶體儲存系統及其控制器與資料處理方法
US9110919B2 (en) * 2009-10-30 2015-08-18 Symantec Corporation Method for quickly identifying data residing on a volume in a multivolume file system
CN101706783A (zh) * 2009-11-16 2010-05-12 中兴通讯股份有限公司 一种嵌入式设备文件检测修复方法和装置
JP5558093B2 (ja) * 2009-12-25 2014-07-23 株式会社東芝 半導体装置及びメモリシステム
US8468439B2 (en) * 2011-06-02 2013-06-18 Nexus Technology, Inc. Speed-optimized computation of cyclic redundancy check codes

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1272672A (zh) * 1999-02-26 2000-11-08 索尼公司 记录方法、管理方法和记录设备
CN1890645A (zh) * 2003-12-03 2007-01-03 松下电器产业株式会社 信息记录介质的数据处理装置以及数据记录方法
CN101051317A (zh) * 2007-05-11 2007-10-10 北京中星微电子有限公司 一种fat文件***及其处理方法

Also Published As

Publication number Publication date
CN102314490A (zh) 2012-01-11
TWI461904B (zh) 2014-11-21
US20130046736A1 (en) 2013-02-21
TW201310227A (zh) 2013-03-01

Similar Documents

Publication Publication Date Title
AU2007221429B2 (en) Multi-protocol removable storage device
US7743292B2 (en) Apparatus and method for memory card testing
CN1179281C (zh) 利用逻辑闪速存储器件进行最小单元更新的方法和设备
CN102314490B (zh) 一种Linux FAT文件***修复方法及装置
CN106708421A (zh) 数据储存装置及其数据维护方法
CN105183388B (zh) 一种硬盘物理序列号的获取方法、装置以及***
CN104461925A (zh) 一种存储设备地址对齐的自动纠正方法和装置
CN109496292A (zh) 一种磁盘管理方法、磁盘管理装置及电子设备
CN101794261A (zh) 映射表数据恢复方法及装置
CN112631516A (zh) 一种具有寿命管理的flash文件管理***
CN101604290B (zh) 一种后台模块测试方法和后台模块测试***
CN109144754A (zh) 一种可靠性测试方法及装置
CN103578566B (zh) 存储器存储装置及其修复方法
CN105302679A (zh) 一种智能终端存储稳定性的检测方法及***
CN109815059A (zh) 一种数据备份方法、***及板卡和存储介质
CN102479211A (zh) 基于数据库的海量数据处理***及方法
KR101670473B1 (ko) MySQL InnoDB 데이터베이스에서 삭제된 데이터를 복원하는 방법
CN101799820A (zh) 闪存、文件***挂载方法及装置、数据管理方法及装置
CN106445737A (zh) 一种多备份启动方法
CN105094999A (zh) 一种清除希捷硬盘非常驻缺陷表的方法
CN116150121A (zh) 网络附属存储替换方法及相关装置
CN101201766A (zh) 设备信息修复***及方法
US6229743B1 (en) Method of a reassign block processing time determination test for storage device
CN108733501A (zh) 一种盘符校正方法、装置、设备及计算机可读存储介质
CN101593153B (zh) 一种将数据写入非易失性存储介质的方法、装置及计算机

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20130710

Termination date: 20190816

CF01 Termination of patent right due to non-payment of annual fee