菜鳥進階十二:大容量U盤文件系統分析
文件系統是指文件命名、存儲和組織的總體結構。作為最常見的操作系統Windows來說,它支持的文件格式就是我們所要研究的。FAT(16)、FAT32和NTFS都是Windows的文件系統。其實文件系格式也就是我們經常所說的“磁盤格式”或“分區格式”,總體都是一個概念,只不過“分區”只針對硬盤來說的,而文件系統是針對所有磁盤及存儲介質的。
FAT,FAT32,NTFS,這些我們耳熟能詳的分區格式,他們分別有什么用途呢?
● FAT16文件系統
最初的U盤,也就是以MB為存儲單位的U盤,所使用的文件系統格式統一為FAT16,所以我們首先就來講講FAT16。
在說明FAT16文件系統之前,我們必須清楚FAT是什么?FAT(File Allocation Table)是“文件分配表”的意思。顧名思義,就是用來記錄文件所在位置的表格,它對于磁盤的使用是非常重要的,假若丟失文件分配表,那么硬盤上的數據就會因無法定位而不能使用了。
FAT16使用了2個字節(也就是16位)的空間來表示每個扇區(Sector)配置文件的情形,故稱之為FAT16。
FAT16由于受到先天的限制,因此每超過一定容量的分區之后,它所使用的簇(Cluster)大小就必須擴增,以適應更大的磁盤空間。所謂簇就是磁盤空間的配置單位,就象圖書館內一格一格的書架一樣。每個要存到磁盤的文件都必須配置足夠數量的簇,才能存放到磁盤中。FAT16各分區與簇大小的關系如下表:
分區大小 FAT16簇大小16MB-127MB 2KB
128MB-255MB 4KB
256MB-511MB 8KB
512MB-1023MB 16KB
1024MB-2047MB 32KB
如果你在一個1GB容量的U盤分區中存放50KB的文件,由于該分區簇的大小為16KB,因此它要用到4個簇才行。而如果是一個1KB的文件,它也必須使用一個簇來存放。那么每個簇中剩下的空間可否拿來使用呢?答案是不行的,所以在使用磁盤時,無形中都會或多或少損失一些磁盤空間。

2GB的分區使用FAT16系統格式化
● FAT16的缺點
- 磁盤分區最大只能到2GB。因此從Win98系統開始,FAT16已經基本被FAT32所取代,但當時U盤剛剛起步,容量多為64MB、128MB,其默認分區只能是FAT16;
- 使用簇的大小不恰當。試想,如果一個只有1KB大小的文件放置在一個1000MB的磁盤分區中,它所占的空間并不是1KB,而是16KB,足足浪費了15KB!一般文本文檔及HTML碎文件的體積多是個位數,如果用來存儲這些文件的話,空間浪費就極為嚴重了。
能解決這兩個問題的,就是FAT32文件系統了。
關注我們


