1. 程式人生 > >FAT16和FAT32檔案系統的區別和對比

FAT16和FAT32檔案系統的區別和對比

        FAT(File Allocation Table)是“檔案分配表”的意思。就是用來記錄檔案所在位置的表格,它對於硬碟的使用是非常重要的,假若丟失檔案分配表,那麼硬碟上的資料就會因無法定位而不能使用了。

       扇區:一般扇區為512個位元組。
       簇:由若干個扇區組成,是存取資料的最小單位。如果簇大小為16K,檔案大小為1位元組,那也要用一個簇來存,而且該簇不用再拿來他用。

        微軟在Dos和Windows系列作業系統前後曾使用了6種不同的檔案系統,FAT12、FAT16、FAT32、NTFS、NTFS5.0和WINFS,現在的CF卡以及SD卡等快閃記憶體卡大部分都可以支援FAT16和FAT32。

一、FAT16使用了16bit來描述一個簇,故稱之為FAT16。看了上一篇介紹FAT16 的文章就知道,FAT16由於受到最大支援容量和簇大小關係的限制,因此每超過一定容量的分割槽之後,它所使用的簇(Cluster)大小就必須擴增,以適應更大的磁碟空間。FAT16各分割槽與簇大小的關係如下表:

分割槽大小

FAT16簇大小

16MB-127MB

2KB

128MB-255MB

4KB

256MB-511MB

8KB

512MB-1023MB

16KB

1024MB-2047MB

32KB

        如果你在一個1000MB的分割槽中存放50KB的檔案,由於該分割槽簇的大小為16KB,因此它要用到4個簇才行。而如果是一個1KB的檔案,它也必須使用一個簇來存放。那麼每個簇中剩下的空間可否拿來使用呢?答案是不行的,所以在使用磁碟時,無形中都會或多或少損失一些磁碟空間,形成大量的磁碟碎片。 
  由上可知,FAT16檔案系統有兩個最大的缺點: 
  (1)磁碟分割槽最大隻能到2GB。FAT16檔案系統已不能適應當前這種大容量的硬碟,必須被迫分割槽成幾十甚至幾百個磁碟空間。而分割槽磁碟的大小又牽扯出簇的問題來,可謂影響頗大。

  (2)使用簇的大小不恰當。試想,如果一個只有1KB大小的檔案放置在一個1000MB的磁碟分割槽中,它所佔的空間並不是1KB,而是16KB,足足浪費了15KB。

  以上這兩個問題常常使得使用者在“分多大的分割槽,才能節省空間,同時又可使硬碟的使用更加方便有效”的抉擇中徘徊不定。 

二、FAT32檔案系統 
  為了解決FAT16存在的問題,開發出FAT32系統。FAT32使用了32bit來表示每個簇。利用FAT32所能使用的單個分割槽,最大可達到2TB(2048GB),而且各種大小的分割槽所能用到的簇的大小,也是恰如其分,上述兩大優點,造就了硬碟使用上更有效率。現將與分割槽與簇的大小彙整如下,我們可仔細做個比較: 

FAT16和FAT32的對比:

以當前硬體所能支援的情況下,如將8GB硬碟劃分為單個分割槽的話,使用的簇的大小也只有4KB,比起以往的FAT16來說,真是節省了許多空間。 

  FAT32就是微軟為了取代FAT16而開發出的又一種檔案管理系統,FAT32最大可支援2TB(2048GB),對磁碟空間的管理也優於FAT16。

   FAT32是比FAT16更先進、效能更好的檔案管理系統。大容量快閃記憶體卡用FAT32,小容量快閃記憶體卡用FAT16。

 

作者:曹祥銘-Charles 
來源:CSDN 
原文:https://blog.csdn.net/Ming_5257/article/details/73014942 
版權宣告:本文為博主原創文章,轉載請附上博文連結!