1980 年代初期還是天價的 5 MB 硬碟,隨著技術演進,早已不可同日而語:當今硬碟不僅容量以 TB 計算,且價位亦已大眾化;甚至數位相機和手機廣為使用的記憶卡,亦動輒以 GB 計算。然而,儲存媒體隨各家作業系統不同,亦有不同檔案系統格式,故跨平台互通性,已是選擇儲存媒體不可忽略的重要考量。
目前個人電腦主流的 Windows XP、Windows Vista 及 Windows 7(以及舊版的 Windows 2000)作業系統,皆預設使用 NTFS 檔案系統;更早期的 Windows 95/98/Me 作業系統則使用 FAT32 作為檔案系統,而這也是目前使用記憶卡的眾多 3C 週邊產品(如數位相機、手機、行車記錄器、導航機等)所支援的唯一檔案系統格式。此外,隨著新一代 SDXC 超高儲存容量記憶卡的推出,exFAT 這個新型檔案系統,已有逐漸浮上檯面的趨勢。
在本文中,筆者將以目前主流的 FAT32、NTFS,以及exFAT 檔案系統,分別於 Windows XP Service Pack 3 (SP3)、Windows 7、Mac OS X 10.6.7 以及 Fedora 14 (Linux) 作業系統進行相容性實測。
格式化工具
以下是筆者用於磁碟格式化的工具:
1. Windows XP SP3 系統內建的格式化軟體。請於「開始」→「我的電腦」(Windows 7 的使用者,請點選「開始」→「電腦」)以滑鼠右鍵點選磁碟機圖示,再於功能表中選取「格式化…」。
▲Windows XP 系統內建格式化工具。
▲Windows 7 系統內建格式化工具。
2. SD/SDHC/SDXC 專用的格式化工具 SD Formatter 3.0(免費軟體),可至 http://www.sdcard.org/consumers/formatter_3/ 下載。
▲SD Formatter 3.0。
3. Mac OS X 10.6.7「磁碟工具程式」(位於「應用程式」→「工具軟體」檔案夾內)的「清除」標籤。
▲Mac OS X 10.6.7的「磁碟工具程式」。
4. Fedora 14 (x86_64) 的「磁碟公用程式」。(位於「應用程式」→「系統工具」,點選「格式化儲存區」)
▲Fedora 14的「磁碟公用程式」。
▲使用 Fedora 14「磁碟公用程式」格式化儲存區
<後面還有測試數據>
檔案格式支援情形
在預設狀態下,Windows XP、Windows 7、Mac OS X 以及 Fedora 14 對於 FAT32、NTFS 及 exFAT 檔案系統的支援情形,整理如下表:
▼主流檔案系統於作業系統上的支援情形
FAT32 |
NTFS |
exFAT |
|
Windows XP | 支援 (需小於32GB) |
支援 | 不支援 [註3] |
Windows 7 | 支援 (需小於32GB) |
支援 | 支援 |
Mac OS X | 支援 (無容量限制) |
只可讀取 [註1] | 支援(系統版本10.6.5以後) |
Fedora 14 (Linux) | 支援 (無容量限制) |
支援 [註2] | 不支援 [註4] |
- 註1:Mac OS X 10.6 起已經支援寫入 NTFS 檔案系統,但系統預設並未啟用此功能;建議以 SL-NTFS(下載網址為http://juicybinary.com/sl-ntfs/)啟用 NTFS 檔案系統的寫入功能。此外,Mac OS X 10.4~10.6 的用戶亦可安裝 ntfs-3g for Mac,下載網址為http://www.tuxera.com/products/tuxera-ntfs-for-mac/。
- 註2:須安裝 ntfs-3g。ntfs-3g 為 Fedora 14 預設的安裝套件之一,如果您的 Linux 系統並未安裝 ntfs-3g,則需自行安裝。
- 註3:Windows Vista SP1 及 Windows 7 業已支援 exFAT 檔案系統。Windows XP SP2/SP3 用戶,請自行下載安裝 KB955704 更新檔(下載網址為http://www.microsoft.com/downloads/details.aspx?FamilyID=1cbe3906-ddd1-4ca2-b727-c2dff5e30f61&displayLang=zh-tw)之後,即可支援 exFAT。
- 註4:雖然 Fedora 14 官方並未支援 exFAT,但透過安裝開放原始碼的第三方驅動程式,即可支援 exFAT 檔案系統的讀寫功能。方式如下:
- 1. 如果您的 Fodora 14 並未安裝 subversion、scons、fuse-devel 以及 gcc 套件,請先行安裝。
- 2. 開啟「終端機」,並輸入如下指令下載並編譯 exFAT 驅動程式:
- svn co http://exfat.googlecode.com/svn/trunk/ exfat-source
- cd exfat-source
- scons
- sudo scons install
- 3. 完成上述步驟之後,您的 Fedora 14 已經可以辨認並讀寫 exFAT 檔案系統了(但因 Fedora 14 並未原生支援 exFAT,現階段尚無法使用 exFAT 為磁碟格式化)。
- 1. 如果您的 Fodora 14 並未安裝 subversion、scons、fuse-devel 以及 gcc 套件,請先行安裝。
格式化實測結果
筆者分別使用創見 (Transcend) 8GB SDHC Class 6 記憶卡以及 1.5 TB USB 外接硬碟(內裝硬碟 Seagate Barracuda 7200.11 1.5 TB,型號:ST31500341AS)為例,分別於上述 3 種作業系統使用 FAT32、NTFS 及 exFAT 檔案系統進行格式化的結果:
▼Transcend(創見)8 GB SDHC Class 6 記憶卡
格式 | 檔案系統 所占空間 (位元組) |
可用空間 (位元組) |
叢集大小[註1] (位元組) |
格式化軟體 [註2] |
FAT32 | 32,768 | 8,059,846,656 | 32,768(32k) | SD Formatter 3.0 Windows 7 |
FAT32 | 4,096 | 8,048,332,800 | 4,096 (4k) (系統預設值) |
Windows XP SP3 |
FAT32 | 4,096 | 8,047,292,416 | 4,096 (4k) (系統預設值) |
Windows 7 |
NTFS | 65,445,888 | 7,998,623,744 | 4,096 (4k) (系統預設值) |
Windows 7 |
NTFS | 66,177,024 | 7,997,895,680 | 1,024 (1k) | Windows 7 |
exFAT | 98,304 | 8,061,878,272 | 32,768 (32k) (系統預設值) |
Windows XP SP3 Windows 7 |
exFAT | 4,096 | 8,054,374,400 | 4,096 (4k) | Windows 7 |
- 註1:叢集 (cluster) 是儲存媒體的最小儲存單元。
- 註2:以上格式化軟體為 Windows 7 及 Windows XP SP3,係表示使用該系統內建之工具軟體進行格式化(請參見「格式化工具」一節)。
▼Seagate Barracuda 7200.11 1.5 TB 硬碟(型號:ST31500341AS)
格式 [註1] |
檔案系統所占空間 (位元組) |
可用空間 (位元組) |
叢集大小 (位元組) |
格式化軟體 [註2] |
FAT32 | 1,769,472 | 1,499,933,868,032 | 32,768 (32k) | Mac OS X 10.6.7 |
FAT32 | 16,384 | 1,499,569,602,560 | 16,384 (16k) | Fedora 14 |
NTFS | 113,360,896 | 1,500,188,516,352 | 4,096 (4k) (系統預設值) |
Windows XP SP3 Fedora 14 |
NTFS | 135,675,904 | 1,500,166,201,344 | 4,096 (4k) (系統預設值) |
Windows 7 |
NTFS | 250,703,872 | 1,500,051,173,376 | 1,024 (1k) | Windows XP SP3 |
NTFS | 273,025,024 | 1,500,028,852,224 | 1,024 (1k) | Windows 7 |
exFAT | 1,703,936 | 1,500,252,864,512 | 131,072 (128k) (系統預設值) |
Windows XP SP3 Windows 7 |
exFAT | 2,490,368 | 1,500,252,078,080 | 131,072 (128k) | Mac OS X 10.6.7 |
- 註1:Windows XP SP3 及 Windows 7 無法在大於 32GB 的儲存媒體使用 FAT32 進行格式化。
- 註2:以上格式化軟體為 Windows 7、Windows XP SP3、Mac OS X 10.6.7 及 Fedora 14,係表示使用該系統內建之工具軟體進行格式化(請參見「格式化工具」一節)。
依據筆者的使用經驗,在相同的檔案系統(如 NTFS)之下,使用不同格式化軟體對於儲存媒體的效能並無明顯差異;但若選用的叢集大小不同,對於磁碟的儲存空間及讀寫效能上,則會產生決定性的影響。舉例而言,如果您在格式化磁碟時選擇 32k 位元組作為叢集大小,則儲存的資料將以 32k 位元組為單位進行配置。假設某個檔案大小為 32,770 個位元組 (=32,768+2) ,則因為超出 32,768 個位元組的部分(2 個位元組)亦需以 1 個叢集來儲存,所以這個檔案實際占用 2 個叢集,相當於 65,536 個位元組 (32k*2) 的儲存空間;也就是說,剩下的 32,766 個位元組就浪費掉了。
不過,如果儲存媒體有較大的叢集空間,一般而言也代表著較好的讀取效率(可一次讀入較多資料,減少讀寫頭移動的次數)。如果硬碟叢集過小,在頻繁地讀寫資料之下,資料檔案存放的位置將愈來愈零散,導致移動讀寫頭的機械動作過於頻繁,而嚴重減緩讀寫資料的速度。這時候,就必須經常搭配使用磁碟重組工具(Windows 系統內建於「附屬應用程式」→「系統工具」,但筆者建議改用重組速度更快、功能更強的 Smart Defrag 2,網址為 http://www.iobit.com/iobitsmartdefrag.html)重新編排資料檔案在硬碟中的位置,來提升磁碟效能。
至於檔案系統種類、讀寫效能與節省空間的選擇上,如何取捨,請繼續參考下一節。
哪種檔案系統是您的最佳選擇?
選擇最適合您的檔案系統,建議可從幾個面向考量:
1. 相容性:
以 SDHC 記憶卡為例,如果您的 SDHC 記憶卡係以提供數位相機、攝錄影機、車用導航機等週邊使用為主,則 FAT32 的高度週邊相容性,應是您的首要選擇;但如果您的週邊支援 32 GB 以上儲存空間的 SDXC 記憶卡,則 exFAT 或許是更佳考量。此外,對於市售儲存容量動輒超過 250 GB以上的外接硬碟,建議使用 NTFS 或 exFAT 檔案系統,在不同作業系統之間的相容性最佳。
2. 個人需求:
如果相容性並非您的主要考量(無需與其他電腦或週邊裝置共用儲存媒體),筆者建議您可依自己的需要訂作符合自身需求的檔案系統,至於 FAT32、NTFS 或 exFAT,因為主流作業系統皆已支援,皆是不錯的選擇。但對於常需要編輯影片的多媒體工作者而言,FAT32 有單一檔案儲存空間不得超過 4 GB 的限制,如果檔案大小有超過此限值的可能,則 NTFS 或 exFAT 檔案系統,應該是較好的選擇。而 NTFS 檔案系統支援日誌 (journaling) 功能,相較 FAT32 及 exFAT 有更佳的穩定性,但缺點是檔案系統本身占用較多的儲存空間(以筆者的 1.5 TB 外接硬碟為例,NTFS 檔案系統本身即占了數百 MB)。
當您決定選擇何種檔案系統,之後,建議再依據您主要的資料檔案類型,選擇搭配適當的叢集 (cluster) 大小(即Windows XP 及 Windows 7 格式化工具的「配置單位大小」下拉式清單項目),即可進一步將儲存空間做最有效率的使用。
最後,依據筆者的使用經驗,如果資料檔案類型係以文書、試算表等較小容量的檔案為主,則 4 kB 大小的叢集(或者更小的叢集)絕對是不錯的選擇。如果資料係以未壓縮型式 (RAW) 的數位照片、影音畫面等多媒體資料為主,則建議選用 32 kB 以上的大叢集,應可以增進您硬碟的讀寫效率。