複製鏈接
請複製以下鏈接發送給好友

FAT

(文件配置表)

鎖定
FAT是文件配置表(英語:File Allocation Table,首字母縮略字:FAT),是一種由微軟發明並擁有部分專利的文件系統,供MS-DOS使用,也是所有非NT核心的微軟窗口使用的文件系統。
FAT文件系統考慮當時電腦性能有限,所以未被複雜化,因此幾乎所有個人電腦的操作系統都支持。這特性使它成為理想的軟盤和存儲卡文件系統,也適合用作不同操作系統中的數據交流。現在,一般所講的FAT專指FAT32。
但FAT有一個嚴重的缺點:當文件刪除後寫入新數據,FAT不會將文件整理成完整片段再寫入,長期使用後會使文件數據變得逐漸分散,而減慢了讀寫速度。碎片整理是一種解決方法,但必須經常重組來保持FAT文件系統的效率。
中文名
文件配置表
外文名
File Allocation Table
縮    寫
FAT
別    名
文檔分配表

FAT釋義一

FAT在機械製造方面的意思為: Factory Acceptance Test,工廠驗收測試
對於大工廠來説還有另外的解釋:FATFinal Acceptance Test 最終驗收測試
與之對應的縮寫詞是:  SAT(SiteAcceptance Test),現場驗收測試
FAT還是IMF倡議的另一個新税種,針對金融機構的利潤和薪酬徵收,由財政部掌控,用於覆蓋危機發生時的“廣義成本”。由於金融行業存在准入壁壘,經濟學家用“特許價值(franchise value)”來概括其高於完全競爭行業的利潤,將這部分“天上掉下來的好處”歸於税收,並用於危機之時,這個設計也不無道理。在IMF看來,FAT另外的好處是防止金融機構“太大”,從而降低危機時對整體經濟所帶來的系統性風險 [1] 

FAT釋義二

飛客數據恢復中心提供 飛客數據恢復中心提供
文件配置表(英文:File Allocation Table,首字母縮略字:FAT)是一種由微軟發明的並帶有部分專利[1]的文件系統,供MS-DOS使用,也是非NT內核的微軟窗口使用的文件系統。
FAT文件系統考慮當時計算機效能有限,所以未被複雜化,因而被幾乎所有個人計算機的操作系統支持。這特性使它成為理想的軟盤和記憶卡文件系統,也適合用作不同操作系統中的數據交流。
但FAT有一個嚴重的缺點:當文件被刪除並且在同一位置被寫入新數據,他們的片段通常是分散的,減慢了讀寫速度。磁盤碎片重整是一種解決方法,但必須經常重組來保持FAT文件系統的效率。
FAT的缺點還有以下幾點:
⒈太浪費磁盤空間
⒉磁盤利用效率低
⒊文件存儲受限制
⒋不支持長文件名,只能支持8個字符。
⒌安全性較差

FAT歷史

FAT文件系統遵行已用了多年的軟件方法來進行規範。它在1977年由比爾·蓋茨和馬斯·麥當勞為了管理磁盤而發明,並在1980年被添·彼得遜的86-DOS操作系統採用。這也是86-DOS操作系統與CP/M操作系統最大的不同點,若非此項差異,86-DOS操作系統與CP/M操作系統幾乎可説完全相同。

FATFAT12

初期的FAT就是現在俗稱的FAT12。作為軟盤的文件系統,它有幾項限制:不支持分層性結構,叢集尋址只有12位(這使得控制FAT有些棘手)而且只支持最多32M(216)的分區。
當時入門級的磁盤是5.25"、單面、40磁道、每個磁道8個扇區、容量略少於160KB。上面的限制超過了這個容量一個或幾個數量級,同時允許將所有的控制結構放在第一個磁道,這樣在讀寫操作時移動磁頭。這些限制在隨後的幾年時間裏被逐步增大。
由於唯一的根目錄也必須放在第一個磁道,能夠存放的文件個數就限制在了幾十個。

FAT目錄

為了很好地支持以帶有10MB硬盤為特色的IBM PC XT新計算機,在1983年年初MS-DOS 2.0幾乎與該計算機在同時發佈,它引進了層次目錄結構。除了允許更好地組織文件外,目錄允許在硬盤上存儲更多的文件,這是因為最大文件個數不再受制於(仍然是固定的)根目錄大小。這個數目現在能夠等同於簇的數目(甚至更大,這是考慮到長度為0的文件並不佔據任何FAT簇)。
FAT本身的格式並沒有改變。PC XT的10MB的硬盤有4KB大小的簇。如果後來安裝了一個20MB的硬盤,並且使用MS-DOS 2.0格式化,最後的簇大小將變為8KB,硬盤容量將變為15.9MB。

FAT開始

在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文件系統本身的結構之外,一個並行的提高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]的磁盤管理員這樣的一些特殊軟件可以用於同樣目的。

FAT最終版本

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也支持這種格式的讀寫操作但是它的磁盤管理工具不支持這種格式。

FAT長文件名

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版就已經開始了。

FATFAT32

為了解決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]。

FAT最大分區

在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分區,但不推薦這樣做。

FAT第三方支持

其它IBM PC的可選操作系統—如Linux、FreeBSD和BeOS—都支持FAT格式,並且大部分都在相應的視窗版本發佈以後很快就支持VFAT和FAT32格式。早期的Linux發佈版本還包括稱為UMSDOS的格式,它是保存在一個獨立的稱為--linux-.---的帶有Unix文件屬性(如長文件名和訪問許可)的FAT。UMSDOS在VFAT發佈以後就不再使用從Linux內核2.5.7開始就禁止了這項功能。Mac OS X操作系統在除啓動盤之外的其它捲上也支持FAT文件系統。

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引起的警告)。

FAT前景

微軟公司獲得了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設計

FAT主磁盤結構

一個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文件分配表

一個分區分成同等大小的簇,也就是連續空間的小塊。簇的大小隨着FAT文件系統的類型以及分區大小而不同,典型的簇大小介於2KB到32KB之間。每個文件根據它的大小可能佔有一個或者多個簇;這樣,一個文件就由這些這些(稱為單鏈表)簇鏈所表示。然而,這些鏈並不一定一個接着一個在磁盤上存儲,它們經常是在整個數據區域零散的儲存。
文件分配表(FAT)是映射到分區每個簇的條目列表。每個條目記錄下面五種信息中的一種。
鏈中下一個簇的地址
一個特殊的文件結束符(EOF)符號指示鏈的結束
一個特殊的符號標示壞簇
一個特殊的符號標示保留簇
0來表示空閒簇
每個版本的FAT文件系統使用不同大小的FAT條目。這個大小已經由名字表示出來,例如FAT16文件系統的每個條目使用16位表示,32位文件系統使用32位表示。這個不同意味着FAT32系統的文件分配表能比FAT16映射更多的簇,它也允許FAT32有更大的分區大小。這也使得FAT32比FAT16更能有效地利用磁盤空間,因為每個驅動器能夠尋址更小的簇,這也就意味着更少的空間浪費。

FAT目錄表

目錄表是一個表示目錄的特殊類型文件(現今通常稱為文件夾)。它裏面保存的每個文件或目錄使用表中的32字節條目表示。每個條目記錄名字、擴展名、屬性(檔案、目錄、隱藏、只讀、系統和卷)、創建的日期和時間、文件/目錄數據第一個簇的地址,最後是文件/目錄的大小。
除了FAT12和FAT16文件系統中的根目錄表佔據特殊的根目錄區域位置之外,所有其它的目錄表都存在數據區域。
合法的DOS文件名包括下面一些字符:
大寫字母A-Z
數字0-9
空格(儘管結尾的空格被作為填充而不是文件名的一部分)
! # $ % & () - @ ^ _ ` { } ~ '
數值 128-255
DOS文件名位於OEM字符集。
長文件名(LFN)使用一個技巧存儲在FAT文件系統上——在目錄表中添加假的條目。這些條目使用一個普通文件無法使用的卷標屬性標識,普通文件無法使用是由於它們被大多數舊的MS-DOS程序忽略。很顯然,一個只包含卷標的目錄被當作空卷,這樣就允許刪除;使用長文件名創建的文件在從普通的DOS刪除就會發生這樣的情形。
校驗和也允許檢驗長文件名是否與8.3文件名匹配;當一個文件刪除之後使用DOS在同一個目錄位置重新創建之後就會出現不匹配現象。校驗和使用下面的算法計算。(注意pFcbName是指向如正常目錄條目中所顯示的文件名的指針,例如前八個字符是文件名,最後三個是擴展名。點是隱含的。文件名中沒有使用的空間將使用空格(ASCⅡ 0x20)補齊。例如,“Readme.txt”將記錄為"README TXT"。
unsignedcharlfn_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的最近版本將認識這個擴展但是在寫時並不使用它。

FAT第三方擴展

在微軟公司添加長文件名和創建/訪問時間戳之前,其它的操作系統使用目錄表字節0x0C-0x15存儲其它的元數據。

FAT授權

FAT專利

在二十世紀九十年代中期微軟公司申請並獲得了一系列的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。

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系統的實現特點是“新穎和非顯然的”,推翻了早期的兩個非最終裁決。

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頁面文件)

FAT兩者轉換

FAT32和NTFS
FAT32轉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兩者對比

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盤的剩餘空間仍可以使用。
參考資料
  • 1.    劉偉.數據恢復技術深度揭秘:電子工業出版社,2010