完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>
标签 > FAT
FAT是一种由微软发明并拥有部分专利的文件系统,供MS-DOS使用,也是所有非NT核心的微软窗口使用的文件系统。
FAT在机械制造方面的意思为: Factory Acceptance Test,工厂验收测试对于大工厂来说还有另外的解释:FATFinal Acceptance Test 最终验收测试与之对应的缩写词是: SAT(SiteAcceptance Test),现场验收测试FAT还是IMF倡议的另一个新税种,针对金融机构的利润和薪酬征收,由财政部掌控,用于覆盖危机发生时的“广义成本”。由于金融行业存在准入壁垒,经济学家用“特许价值(franchise value)”来概括其高于完全竞争行业的利润,将这部分“天上掉下来的好处”归于税收,并用于危机之时,这个设计也不无道理。在IMF看来,FAT另外的好处是防止金融机构“太大”,从而降低危机时对整体经济所带来的系统性风险 。
FAT是文件配置表(英语:File Allocation Table,首字母缩略字:FAT),是一种由微软发明并拥有部分专利的文件系统,供MS-DOS使用,也是所有非NT核心的微软窗口使用的文件系统。FAT文件系统考虑当时电脑性能有限,所以未被复杂化,因此几乎所有个人电脑的操作系统都支持。这特性使它成为理想的软盘和存储卡文件系统,也适合用作不同操作系统中的数据交流。现在,一般所讲的FAT专指FAT32。但FAT有一个严重的缺点:当文件删除后写入新数据,FAT不会将文件整理成完整片段再写入,长期使用后会使文件数据变得逐渐分散,而减慢了读写速度。碎片整理是一种解决方法,但必须经常重组来保持FAT文件系统的效率。
释义一
FAT在机械制造方面的意思为: Factory Acceptance Test,工厂验收测试对于大工厂来说还有另外的解释:FATFinal Acceptance Test 最终验收测试与之对应的缩写词是: SAT(SiteAcceptance Test),现场验收测试FAT还是IMF倡议的另一个新税种,针对金融机构的利润和薪酬征收,由财政部掌控,用于覆盖危机发生时的“广义成本”。由于金融行业存在准入壁垒,经济学家用“特许价值(franchise value)”来概括其高于完全竞争行业的利润,将这部分“天上掉下来的好处”归于税收,并用于危机之时,这个设计也不无道理。在IMF看来,FAT另外的好处是防止金融机构“太大”,从而降低危机时对整体经济所带来的系统性风险[1] 。
释义二
文件配置表(英文:File Allocation Table,首字母缩略字:FAT)是一种由微软发明的并带有部分专利[1]的文件系统,供MS-DOS使用,也是非NT内核的微软窗口使用的文件系统。FAT文件系统考虑当时计算机效能有限,所以未被复杂化,因而被几乎所有个人计算机的操作系统支持。这特性使它成为理想的软盘和记忆卡文件系统,也适合用作不同操作系统中的数据交流。但FAT有一个严重的缺点:当文件被删除并且在同一位置被写入新数据,他们的片段通常是分散的,减慢了读写速度。磁盘碎片重整是一种解决方法,但必须经常重组来保持FAT文件系统的效率。FAT的缺点还有以下几点:⒈太浪费磁盘空间⒉磁盘利用效率低⒊文件存储受限制⒋不支持长文件名,只能支持8个字符。⒌安全性较差
历史
FAT文件系统遵行已用了多年的软件方法来进行规范。它在1977年由比尔·盖茨和马斯·麦当劳为了管理磁盘而发明,并在1980年被添·彼得逊的86-DOS操作系统采用。这也是86-DOS操作系统与CP/M操作系统最大的不同点,若非此项差异,86-DOS操作系统与CP/M操作系统几乎可说完全相同。
FAT12初期的FAT就是现在俗称的FAT12。作为软盘的文件系统,它有几项限制:不支持分层性结构,丛集寻址只有12位(这使得控制FAT有些棘手)而且只支持最多32M(216)的分区。当时入门级的磁盘是5.25“、单面、40磁道、每个磁道8个扇区、容量略少于160KB。上面的限制超过了这个容量一个或几个数量级,同时允许将所有的控制结构放在第一个磁道,这样在读写操作时移动磁头。这些限制在随后的几年时间里被逐步增大。由于唯一的根目录也必须放在第一个磁道,能够存放的文件个数就限制在了几十个。
目录为了很好地支持以带有10MB硬盘为特色的IBM PC XT新计算机,在1983年年初MS-DOS 2.0几乎与该计算机在同时发布,它引进了层次目录结构。除了允许更好地组织文件外,目录允许在硬盘上存储更多的文件,这是因为最大文件个数不再受制于(仍然是固定的)根目录大小。这个数目现在能够等同于簇的数目(甚至更大,这是考虑到长度为0的文件并不占据任何FAT簇)。FAT本身的格式并没有改变。PC XT的10MB的硬盘有4KB大小的簇。如果后来安装了一个20MB的硬盘,并且使用MS-DOS 2.0格式化,最后的簇大小将变为8KB,硬盘容量将变为15.9MB。
开始在1984年,IBM发布PC AT,这是一个20 MB的硬盘。微软公司也同步发布了MS-DOS 3.0。簇集地址增加至16位,允许更大数量的簇(最大 65,517),所以有更大的文件系统大小。但是,最大数量磁区及最大分割区(相当于磁盘)的大小仍是32 MB。所以,尽管技术上已经是“FAT16”,这种格式并不是我们今天常见到的这个名字所代表的格式。在MS-DOS 3.0格式化一个20 MB的硬盘,这硬盘将不能被MS-DOS 2.0或之前的版本所存取。当然,MS-DOS 3.0 仍然可存取MS-DOS 2.0的格式(8 KB簇的分割区)。MS-DOS 3.0也开始支持高密度1.2MB 5.25”磁盘,最著名的是每个磁道有15个扇区,这样就允许FAT有更大的空间。这或许促进了一个对于簇大小的不确定的优化,簇大小从2个扇区减到1个。这样做的最后结果是高密度磁盘比旧的双密度磁盘的速度大幅度降低。
扩展分区除了改进FAT文件系统本身的结构之外,一个并行的提高FAT存储空间的开发路线是支持多个磁盘分区。最初,由于主引导分区中文件分配表的固定结构的原因一个硬盘只能使用多达4个分区。然而,由于DOS设计要求只能有一个分区标识为“活动的”,它也是主引导代码启动所用的分区。使用DOS工具不可能创建几个“主”DOS分区,并且第三方的工具也至少会警告这样一个机制将与DOS不兼容。为了用一种兼容的方式使用更多的分区,一种新的分区类型被开发出来(1986年1月的MS-DOS 3.2),扩展分区它实际上是另外称为逻辑分区的一个容器。最初它里面只允许有一个逻辑分区、支持最大64MB的硬盘。在MS-DOS 3.3(1987年8月)这个限制更改到24个分区;它可能来自于强制性的C:-Z:的磁盘命名规则。逻辑分区表使用盘上的数据结构来描述,可能是为了简化编码它与主引导记录非常相似,并且它们组织成类似于俄罗斯套娃那样的结构。系统中只能有一个扩展分区。在扩展分区引入之前,一些硬盘控制器(当时是独立的板子,因为还没有IDE标准)能够将大硬盘显示为两个独立的硬盘。作为一种选择,如Ontrack[1]的磁盘管理员这样的一些特殊软件可以用于同样目的。
最终版本1987年11月我们今天称为FAT的格式最终到来,它在康柏 DOS 3.31中去掉了磁盘扇区的16位计数器。这个结果曾经一度被称为DOS 3.31大文件系统。尽管看起来磁盘上的变动很小,这个DOS的磁盘代码都必须检查并转换到32位的扇区数,由于它全部是16位的汇编语言这样一个现实,这项工作就变得非常复杂。1988年这项改进通过MS-DOS 4.0得到广泛应用。分区大小受限于每个簇的8位有符号扇区计数,它最大能达到2的64次方,对于一个常用的有32KB个簇每扇区512字节的硬盘来说,将FAT16分区大小的“明显”限制扩充到2GB。在磁光盘媒体上,它能使用1或者2KB的扇区,这样大小限制也就成比例地增大。后来,视窗NT通过将每个簇的扇区数当作无符号数将最大的簇大小增加到64KB。然而这个格式与当时其它的任何FAT实现都不兼容并且产生了大量内部碎片。视窗98也支持这种格式的读写操作但是它的磁盘管理工具不支持这种格式。
长文件名Windows 95设计人员的一个用户体验目标就是除了传统的8.3文件名以外在新操作系统中使用长文件名(LFN)。长文件名通过在目录条目排列时使用一个工作区来实现(参见下面)。按照Windows 95VxD设备驱动程序的命名规则这个新扩充的文件系统通常称为VFAT。有意思的是,VFAT驱动在早于Windows 95的Windows for Groups 3.11中就已经出现,但它仅仅用于实现32位文件访问,一个绕过DOS的视窗自带高性能保护模式文件管理系统,它能够直接使用BIOS或者更好的32位磁盘访问,如视窗自带的保护模式磁盘驱动程序。它是一个后门;微软为Windows for Groups 3.11所作的广告说32位文件访问基于“芝加哥项目的32位文件系统”。在Windows NT中,FAT文件系统对于长文件名的支持从3.5版就已经开始了。
FAT32为了解决FAT16对于卷大小的限制同时让DOS的真实模式在非必要情况下不减少可用常规内存状况下处理这种格式,微软公司决定实施新一代的FAT,它被称为FAT32,带有32位的簇数,用了其中的28位。理论上,这将支持总数达268,435,438(《228)的簇,允许磁盘容量达到2字节。然而,由于微软公司scandisk工具的限制,FAT不能大于4,177,920(《222)个簇,这将卷的容量限制在了124.55GB,除非不再使用“scandisk”。[2]FAT32随着Windows95 OSR2发布,尽管需要重新格式化才能使用这种格式并且DriverSpace 3(Windows95 OSR2和视窗98所带版本)从来都不支持这种格式。Windows98提供了一个工具用来在不丢失数据的情况下将现有的硬盘从FAT16转到FAT32格式。在NT产品线上对于它的支持从Windows2000开始。Windows 2000和 Windows XP能够读写任何大小的FAT32文件系统,但是这些平台上的格式化程序只能创建最大32GB的FAT32文件系统。Thompson and Thompson (2003)写道“奇怪的是微软公司说这种现象是故意设计的”[3] 微软公司知识库文章 184006[4]的确是这么说的,但是没有提出任何关于这个限制的合理解释。Peter Norton的观点是“微软公司在有意地削弱FAT32文件系统”[5]。
最大分区在FAT16中,采用了16bit宽的簇地址,32bit宽扇区地址。虽然32bit的扇区地址可以寻址2^32*512,约2个TB的容量,但于由规定每簇最大的容量不超过1024*32,所以FAT16文件系统的容量也就限制到了2^16*1024*32,大约2.1GB的空量,并且实际还达不到这个值。FAT32文件系统使用了32bit宽的簇地址,所以称为FAT32。但在微软件的文件系统中只使用了低28位,最大容量为2^28*1024*32,约8.7TB的空量。有的人认为32bit全用,最大容量为2^32*1024*32,这种说法是不正确的。虽然FAT32具有容纳近乎8.7TB的容量,但实际应用中通常不使用超过32GB的FAT32分区。WIN2000及之上的OS已经不直接支持对超过32GB的分区格式化成FAT32,但WIN98依然可以格式化大到127GB的FAT32分区,但不推荐这样做。
第三方支持其它IBM PC的可选操作系统—如Linux、FreeBSD和BeOS—都支持FAT格式,并且大部分都在相应的视窗版本发布以后很快就支持VFAT和FAT32格式。早期的Linux发布版本还包括称为UMSDOS的格式,它是保存在一个独立的称为--linux-。---的带有Unix文件属性(如长文件名和访问许可)的FAT。UMSDOS在VFAT发布以后就不再使用从Linux内核2.5.7开始就禁止了这项功能。Mac OS X操作系统在除启动盘之外的其它卷上也支持FAT文件系统。
其它数据流FAT文件系统本身不是为支持ADS而设计的,但是一些高度依赖它们的操作系统创造出不同的方法在FAT驱动器上处理它们。这些方法或者在额外的文件或路径中存储附加的信息(Mac OS),或者给那些磁盘数据结构中以前没有使用的变量赋予新的含义(OS/2和视窗NT)。第二种设计,尽管想象起来会更有效率,但是它们不能被不认识这种格式的工具复制或者备份;使用不能识别这种格式的磁盘工具(如碎片整理或CHKFSK)控制这些磁盘可能会破坏这些信息。Mac OS使用PC Exchange存储不同的数据,文件属性和文件名存在一个名为FINDER.DAT的隐藏文件中,资源分支(ADS)存在名为RESSOURCE.FRK的子目录中,这些数据都存在使用它们的每个目录中。从PC Exchange 2.1开始,它们将Mac OS的长文件名保存为标准的FAT长文件名,并且将超过31个字符的FAT长文件名转换为唯一的31字符能够被Macintosh应用程序识别的文件名。Mac OS X将元数据(资源分支、不同的ADS、文件属性)保存在与所有人相同并以“._”开始的名字的隐藏文件中,并且Finder将一些文件夹和文件元数据存在名为“.DS_Store”的隐藏文件中。OS/2高度依赖于扩展属性(EA)并且将它们存在位于FAT12或FAT16的根目录下名为“EA DATA. SF”的隐藏文件中。这个文件使用以前文件(或者目录)的目录清单中的两个保留字节索引。在FAT32格式中,这些字节中存有文件或者目录开始簇号的高16位,这样就使它难于在FAT32上保存EA。扩展属性可以通过Workplace Shell桌面、REXX脚本、许多系统图形用户接口和命令行工具(如4DOS|4OS2]]来访问。Windows NT支持HPFS、NTFS和FAT中所有扩展属性的处理(所用处理机制完全类似于OS/2),但是不能处理其它一些存于NTFS驱动器的ADS数据。试图从复制带有与NTFS驱动器属性不同扩展属性的ADS到FAT驱动器将报告一个警告信息提示ADS将会丢失。Windows 2000以后产品的处理类似于视窗NT但复制到FAT32时它们没有显示任何警告信息直接丢弃扩展属性(但报告其它象“Macintosh Finder Info”和“Macintosh Resource Fork”这些ADS引起的警告)。
前景微软公司获得了VFAT和FAT32的专利(但没有得到最初的FAT的专利),这引起人们对于微软将会寻求从Linux OS发布和初始化他们产品的媒体厂商收取专利费的担忧(参见下面的FAT授权协议)。尽管最初的裁定不利于微软公司,但是微软仍然取得了胜利并且得到了专利授权。由于微软公司已经宣布不再开发基于MS-DOS的消费用操作系统视窗Me的后续版本,所以不再有可能会有新版的FAT。对于大多数用途来说,为视窗NT系列开发的NTFS文件系统从效率、性能和可靠性来说都优于FAT;它的主要缺点是小容量文件所占的额外空间以及除了基于NT的视窗之外的很少有其他操作系统支持。由于确切的规范是微软公司的商业秘密,这就使得使用一个DOS软盘用于恢复目的很困难。微软公司提供了一个恢复界面来解决这个问题,由于安全的原因它严重限制了缺省情况下它能解决的问题。FAT仍然是活动媒体的常用文件系统(CD和DVD是例外),软碟使用的是FAT12,其它多数活动媒体用的是FAT16(如用于数位相机的快闪记忆卡和USB随身碟)。许多活动媒体还没有达到能够享用FAT32。出于兼容性和存储空间利用率的考虑FAT仍然用在这些驱动器上,同时也是由于这些活动媒体上的文件的许可更容易遇到麻烦而不是更重要这样一个事实。视窗2000和XP支持的FAT32格式化的限制是32GB,这非常有效地强迫使用现代硬盘的用户或者使用NTFS或者在视窗之外格式化驱动器。一个解决的办法是使用从Linux移植到视窗平台的一个工具version of mkdosfs。这里也有一个自由开源的工具。
设计
主磁盘结构一个FAT文件系统包括四个不同的部分。保留扇区,位于最开始的位置。第一个保留扇区是引导区(分区启动记录)。它包括一个称为基本输入输出参数块的区域(包括一些基本的文件系统信息尤其是它的类型和其它指向其它扇区的指针),通常包括操作系统的启动调用代码。保留扇区的总数记录在引导扇区中的一个参数中。引导扇区中的重要信息可以被DOS和OS/2中称为驱动器参数块的操作系统结构访问。FAT区域。它包含有两份文件分配表,这是出于系统冗余考虑,尽管它很少使用,即使是磁盘修复工具也很少使用它。它是分区信息的映射表,指示簇是如何存储的。根目录区域。它是在根目录中存储文件和目录信息的目录表。在FAT32下它可以存在分区中的任何位置,但是在早期的版本中它永远紧随FAT区域之后。数据区域。这是实际的文件和目录数据存储的区域,它占据了分区的绝大部分。通过简单地在FAT中添加文件链接的个数可以任意增加文件大小和子目录个数(只要有空簇存在)。然而需要注意的是每个簇只能被一个文件占有,这样的话如果在32KB大小的簇中有一个1KB大小的文件,那么31KB的空间就浪费掉了。例外情况Apricot PC的MS-DOS所用FAT的实现有一个不同的启动扇区组织以使用计算机与IBM不兼容的基本输入输出系统。跳转指令和OEM名被省略并且MS-DOS文件系统参数位于0x50(在标准扇区中偏移为0x0B - 0x17)。后来的Apricot MS-DOS版本除了Apricot特有的引导区之外也具有了读写标准启动分区的能力。BBC Master 512 上的DOS Plus根本就不使用传统的引导区。数据磁盘省略了引导区并且以一个单份的FAT开始(FAT的第一个字节用来确定磁盘容量),启动磁盘使用一个包含启动调用程序的小型ADFS文件系统,后面跟随一个单份的FAT。
文件分配表一个分区分成同等大小的簇,也就是连续空间的小块。簇的大小随着FAT文件系统的类型以及分区大小而不同,典型的簇大小介于2KB到32KB之间。每个文件根据它的大小可能占有一个或者多个簇;这样,一个文件就由这些这些(称为单链表)簇链所表示。然而,这些链并不一定一个接着一个在磁盘上存储,它们经常是在整个数据区域零散的储存。文件分配表(FAT)是映射到分区每个簇的条目列表。每个条目记录下面五种信息中的一种。链中下一个簇的地址一个特殊的文件结束符(EOF)符号指示链的结束一个特殊的符号标示坏簇一个特殊的符号标示保留簇0来表示空闲簇每个版本的FAT文件系统使用不同大小的FAT条目。这个大小已经由名字表示出来,例如FAT16文件系统的每个条目使用16位表示,32位文件系统使用32位表示。这个不同意味着FAT32系统的文件分配表能比FAT16映射更多的簇,它也允许FAT32有更大的分区大小。这也使得FAT32比FAT16更能有效地利用磁盘空间,因为每个驱动器能够寻址更小的簇,这也就意味着更少的空间浪费。
目录表目录表是一个表示目录的特殊类型文件(现今通常称为文件夹)。它里面保存的每个文件或目录使用表中的32字节条目表示。每个条目记录名字、扩展名、属性(档案、目录、隐藏、只读、系统和卷)、创建的日期和时间、文件/目录数据第一个簇的地址,最后是文件/目录的大小。除了FAT12和FAT16文件系统中的根目录表占据特殊的根目录区域位置之外,所有其它的目录表都存在数据区域。合法的DOS文件名包括下面一些字符:大写字母A-Z数字0-9空格(尽管结尾的空格被作为填充而不是文件名的一部分)! # $ % & () - @ ^ _ ` { } ~ ‘数值 128-255DOS文件名位于OEM字符集。长文件名(LFN)使用一个技巧存储在FAT文件系统上——在目录表中添加假的条目。这些条目使用一个普通文件无法使用的卷标属性标识,普通文件无法使用是由于它们被大多数旧的MS-DOS程序忽略。很显然,一个只包含卷标的目录被当作空卷,这样就允许删除;使用长文件名创建的文件在从普通的DOS删除就会发生这样的情形。校验和也允许检验长文件名是否与8.3文件名匹配;当一个文件删除之后使用DOS在同一个目录位置重新创建之后就会出现不匹配现象。校验和使用下面的算法计算。(注意pFcbName是指向如正常目录条目中所显示的文件名的指针,例如前八个字符是文件名,最后三个是扩展名。点是隐含的。文件名中没有使用的空间将使用空格(ASCⅡ 0x20)补齐。例如,“Readme.txt”将记录为“README TXT”。
1
2
3
4
5
6
7
8unsignedcharlfn_checksum(constunsignedchar*pFcbName)
{
inti;
unsignedcharsum=0;
for(i=11;i;i--)
sum=((sum&1)0x80:0)+(sum》》1)+*pFcbName++;
returnsum;
}
旧版的PC-DOS错误地将根目录中的长文件名当作卷标,这样它们就会显示错误的卷标。每个假条目包含13UTF-16个字符(26字节),通过使用包含文件大小或者时间记录的区域获得除了旧的8+3之外的另外15个字节(但是出于安全和磁盘检查工具的考虑开始簇的区域没有使用保留值为0)。参见8.3中另外的解释。如果一个文件名只包含小写字母、或者是一个小写字母的名加上大写扩展名的混合或者与此相反,没有特殊的字符并且满足8.3的限制,在视窗NT上就不创建VFAT的条目。相反,在目录条目的偏移0x0c处的没有说明的位用来指示文件名全部或者部分是小写字母。特别明确的是,位4意味着小写字母的扩展名,位3意味着名是小写字母,这样就允许如“example.TXT”和“HELLO.txt”这样的组合,但是不允许“Mixed.txt”这样的组合。很少有操作系统支持这种功能。非NT视窗版本当这个扩展使用时将把文件名当作大写字母。缺省情况下,Linux的最近版本将认识这个扩展但是在写时并不使用它。
第三方扩展在微软公司添加长文件名和创建/访问时间戳之前,其它的操作系统使用目录表字节0x0C-0x15存储其它的元数据。
授权
专利在二十世纪九十年代中期微软公司申请并获得了一系列的FAT文件系统内核部分的专利。由于具有广泛的兼容性和易于理解,FAT经常被选为用于数码相机和个人数码助理中闪存的数据交换格式。2003年12月3日微软公司宣布使用FAT规范和“相关智慧产权”将需要得到授权,每个销售单元支付0.25美元的版权费,每个授权协议最多250,000美元的版权费。为了这个目的,微软公司提及了四个关于FAT文件系统的专利作为它的知识产权主张的基础。所有这些与长文件名扩展有关的FAT首先出现在Windows 95中:美国专利 5,745,902 - 访问使用不同文件名格式的文件名的方法和系统。1992年7月6日备案。这包括生成、联系一个8.3兼容格式的短文件名和长文件名的方法(如“Microsoft.txt”和“MICROS~1.TXT”),以及列举相互冲突的短文件名的方法(如“MICROS~2.TXT”和“MICROS~3.TXT”)。还不清楚这个专利是否覆盖不具有显式长文件名能力的FAT实现。Unix文件系统中的硬连接看起来不是先行者:从长文件名删除一个FAT文件也将删除它的短文件名。将一个文件重命名为一个“短”文件名也将一致地更改长文件名;同样,将一个文件重命名为“长”文件名也将重新生成一个“短”文件名。在NTFS中,硬连结和两个名字是不同的概念,并且每个硬连结都有两个名字。最后,在API的层面上,当在系统中进行目录搜索时两个文件名都会出现;它们看起来不是两个独立的文件并且它们也没有有必要去“映射”确定同一个文件。美国专利 5,579,517 - 长、短文件名公用的命名空间。1995年4月24日备案。这包括将多个连续8.3目录条目链接在一起支持长文件名的方法,其中一些条目特殊进行标记阻止可能引起混淆地早期的不支持长文件名的FAT实现。公共专利基金会成功地对这项专利发起了挑战;这个专利申请由于所申请的技术在专利美国专利 5,307,494 和 美国专利 5,367,671中的先期发现在2004年9月14日被驳回]。这个决定后来在2006年1月10日被美国专利局所推翻。美国专利 5,758,352 - 长、短文件名公用的命名空间。1996年9月5日备案。它非常类似于5,579,517。公共专利基金会成功地对这项专利发起了挑战;美国专利商标局基于“the six assignees names were incorrect” [4]在2005年10月5日驳回了这项专利。这个决定也在后来的2006年1月10日被美国专利局推翻。美国专利 6,286,013 - 在操作系统中为长、短文件名提供一个公用的命名空间的方法和系统。1997年1月28日备案。它所申请的内容包括Windows 95、Windows 98和Windows Me的长文件名提供给它们MS-DOS兼容层所用的方法。它看起来不影响非微软的FAT实现。许多技术评论断言这些专利仅仅涵盖了支持长文件名的FAT实现,那些只使用短名字的移动固态媒体和消费设备将不受影响。另外,在微软2000年12月6日出版的“Microsoft Extensible Firmware Initiative FAT 32 File System Specification,FAT: General Overview of On-Disk Format”,微软公司明确地给出了一些授权,许多读者将它认为是微软允许操作系统厂商实现FAT。
控诉由于人们广泛要求重新审查这些专利,公众专利基金会向美国专利和商标局(USPTO)提出了一些证据争辩这些专利的有效性,其中包括施乐公司和IBM的早期参考资料。美国专利商标局承认这些证据提出了“可专利性的实质性的新问题”并且对于微软公司FAT专利的有效性展开调查。2004年9月30日,美国专利商标局主要基于公共专利基金会所提供的证据驳回了美国专利 5,579,517的专利主张。这个基金会的执行总裁Dan Ravicher说“现在专利局只不过是确认了我们已经知道了一段时间的事情,微软公司的专利是假的。”PUBPAT的新闻发布会说,“微软公司仍然有机会回应专利局的驳回。有代表性的是第三方的重新审查要求如PUBPAT提供的资料成功地减小了专利的范围或者有70%的机会完全驳回专利。”2005年10月5日,专利局宣布随着调查的深入它驳回了专利5.579,517的专利主张,另外它发现专利美国专利 5,758,352有错误的专利受益人而无效。最后在2006年1月10日,专利局裁定微软公司的FAT系统的实现特点是“新颖和非显然的”,推翻了早期的两个非最终裁决。
注解
^ 专利申请的是在文件系统中支持长文件名的技术,而不是文件系统内核本身。^ Duncan,Ray (1989)。 Design goals and implementation of the new High Performance File System. Microsoft Systems Journal 4 ⑸.^ Thompson,Robert Bruce and Barbara Fritchman Thompson,PC Hardware in a Nutshell,3rd Edition,,O’Reilly,ISBN 059600513X (p. 506 re Microsoft “bizarrely” saying 32 GB limitation is by design^ Limitations of FAT32 File System,Microsoft knowledge base article 184006^ Norton,Peter (2002页面文件)
两者转换
FAT32和NTFSFAT32转NTFS在开始——运行中输入CMD ,再输入 convert X:/FS:NTFS (X:是所要转化的分区盘符)重新启动之后就开始转化了。不过这样的转化方式有三个弊端:⒈其实也不能算是弱点,主要是转化为NTFS之后,系统默认Everyone(每个人)用户对所有目录、文件拥有完全权限,其实FAT32本来就默许所有用户访问!为了安全起见,需要重新设置安全特性。对一些重要文件,应该取消everyone用户的完全权限。⒉转化后的NTFS分区,第一次可能很容易产生磁盘碎片。⒊C盘在转换为NTFS分区前,一定要注意是不是多系统的,有没有安装WIN9X、ME等不认识NTFS分区的系统,如果安装了,那么C盘千万不能转换为NTFS分区,一定要保持原来的FAT分区。扩展分区里的逻辑分区则除了安装有WIN9X/ME系统的分区外,其他的分区都可以转换为NTFS分区。NTFS转FAT32目前为止,比较常用的方法就是用PQMagic进行转化(也可用Acronis公司的Partation Expert,英文版,但完全支持中文),但是一定要注意,如果有中文目录、文件,一定要集中起来用Winrar打包成英文名称的压缩包,否则这些中文目录、文件都将无法访问!!!常见问题⒈中途断电,分区成了PQRP类型,无法访问,怎么办?可以利用PQ安装目录下的PTEDIT32.exe(\PowerQuest\PartitionMagic 8.0)进行修复,只需将标志为PQRP的分区(类型为3C),转化为FAT32/NTFS(类型为07/0B)即可。如果是C盘出错,可以借助实模式 DOS加载DOS版的PTEDIT.exe(\PowerQuest\PartitionMagic 8.0\DOS)进行修复。注:其他PQ操作断电导致的问题也可以依法炮制,而且相对于Diskgenius,PTEDIT32.exe可以支持NTFS 分区。⒉转化分区后,中文目录无法访问,怎么办?可以利用GHOST克隆问题分区,然后用ghost Explorer打开gho备份文件,重命名中文目录即可。
两者对比
FAT与NTFS相比NTFS分区仅能通过Windows NT及之后的操作系统进行访问。如果您的Windows NT操作系统发生致命错误,您将无法简单的通过系统盘引导至命令行方式并修复NTFS分区上所出现的问题。为避免出现这种问题,Microsoft建议您在硬盘上安装第二套Windows NT操作系统,并通过这套操作系统来修复NTFS分区上所出现的问题。令人遗憾的是,这种方法存在某些严重缺陷。首先,根据您在安装过程中所设置的选项,第二套操作系统可能需要耗费150 MB左右硬盘空间。其次,在系统引导过程中,这两套操作系统将共享相同的文件。因此,如果您的系统分区(用以引导PC的分区)采用NTFS格式并且出现问题,那么,您可能无法启动任意一套Windows NT操作系统并修复问题。尽管系统分区出现错误的几率微乎其微,但当您对磁盘分区进行修改时,很多情况下都需要手工更新Boot.ini文件。如果您在这种更新过程中执行了错误操作,那么,Windows NT将无法正常启动。此时,由于初始引导文件位于系统分区上,因此,所有安装在系统中的Windows NT都将无法共享这一文件。一种较为理想的解决方案是将您的系统分区格式化为FAT文件系统。如果您对系统安全性的要求不高,那么,请为系统分区指定较小的分区容量并且不在该分区上存放除Windows NT系统文件以外的任何内容。请记住,除非未经授权的用户能够通过物理方式对您的计算机进行访问,否则,FAT文件系统在安全性方面还是完全值得信赖的。如果您由于某种原因必须将您的系统分区格式化为NTFS文件系统。那么,您还可以从网上下载PE工具箱,将PE安装在U盘里,使U盘成为驱动盘,PE的文件系统为FAT文件系统。这样,您就能在享受高性能的同时享受高系统安全性。PE将占用U盘150 MB左右的空间。当然,装有PE的U盘的剩余空间仍可以使用。
关于硬盘格式FAT,FAT32,和NTFS的区别
这些都是常见的文件系统,它们的特点有很多,对普通用户来讲,主要是兼容性、寿命和使用限制:
FAT:也叫FAT16,这个基本上已经淘汰掉了。因为支持最大分区只能2GB,最大单个文件2GB。
FAT32:这个一般是针对小硬盘的,比如40G。优点是兼容性最好,苹果、手机都能读,缺点是单个文件不能大于4GB。
NTFS:这个是目前在PC机上使用最广泛的格式,单个文件超过4G毫无问题。缺点是读写频繁,不适合在U盘等闪存盘使用。移动硬盘推荐用这个。
EXFAT:这个是微软为解决FAT32的缺点特别推出的,闪存盘专用。既没有NTFS的寿命短的缺点,也能放大文件。闪存盘首选。但这种格式的最大缺点是兼容性最差,很多智能设备甚至操作系统都不能识别,SP3以前版本的XP也不能识别。
SEGGER的BigFat规范允许在标准FAT媒体上存储大于4GB的文件
所有操作系统都支持FAT,它是格式化可移动存储(如SD卡和U盘)的行业标准。它也是在系统之间传输文件的一个很好的选择。
Linux 内核现在已经增加了对 exFAT 的支持,同时它也没有放弃维护原有 FAT 文件系统驱动,甚至现在从邮件列表上看,FAT 性能方面可能会有大幅提升。
数据恢复,FAT和NTFS区别有哪些? 在这个步步高教程之前的文章内,我们几乎讨论的都是关于存储在F...
磁盘结构与FAT文件系统FAT 文件系统的组织结构1. 软盘数据的逻辑存储软盘无须低级格式化和分区操作,只需用FORMAT 命令做高级格式化即可。经过格式化操作
编辑推荐厂商产品技术软件/工具OS/语言教程专题
电机控制 | DSP | 氮化镓 | 功率放大器 | ChatGPT | 自动驾驶 | TI | 瑞萨电子 |
BLDC | PLC | 碳化硅 | 二极管 | OpenAI | 元宇宙 | 安森美 | ADI |
无刷电机 | FOC | IGBT | 逆变器 | 文心一言 | 5G | 英飞凌 | 罗姆 |
直流电机 | PID | MOSFET | 传感器 | 人工智能 | 物联网 | NXP | 赛灵思 |
步进电机 | SPWM | 充电桩 | IPM | 机器视觉 | 无人机 | 三菱电机 | ST |
伺服电机 | SVPWM | 光伏发电 | UPS | AR | 智能电网 | 国民技术 | Microchip |
开关电源 | 步进电机 | 无线充电 | LabVIEW | EMC | PLC | OLED | 单片机 |
5G | m2m | DSP | MCU | ASIC | CPU | ROM | DRAM |
NB-IoT | LoRa | Zigbee | NFC | 蓝牙 | RFID | Wi-Fi | SIGFOX |
Type-C | USB | 以太网 | 仿真器 | RISC | RAM | 寄存器 | GPU |
语音识别 | 万用表 | CPLD | 耦合 | 电路仿真 | 电容滤波 | 保护电路 | 看门狗 |
CAN | CSI | DSI | DVI | Ethernet | HDMI | I2C | RS-485 |
SDI | nas | DMA | HomeKit | 阈值电压 | UART | 机器学习 | TensorFlow |
Arduino | BeagleBone | 树莓派 | STM32 | MSP430 | EFM32 | ARM mbed | EDA |
示波器 | LPC | imx8 | PSoC | Altium Designer | Allegro | Mentor | Pads |
OrCAD | Cadence | AutoCAD | 华秋DFM | Keil | MATLAB | MPLAB | Quartus |
C++ | Java | Python | JavaScript | node.js | RISC-V | verilog | Tensorflow |
Android | iOS | linux | RTOS | FreeRTOS | LiteOS | RT-THread | uCOS |
DuerOS | Brillo | Windows11 | HarmonyOS |