首頁 > 硬體

「檔案大小」和「佔用空間」的差別

2020-10-09 23:39:26

windows用NTFS和FAT的檔案系統管理磁碟檔案,所有檔案系統都是基於簇(分配單元)大小,它代表了可以分配用來儲存檔案的最小磁碟空間量。
Windows XP NTFS下最大的預設簇大小為 4 千位元組 (KB)。也就是說,每個檔案都是按4K的空間劃分儲存的,即使這個檔案只有100位元組。
打個比方,作文紙,每頁可以寫400字;超過400字,就要翻一頁。可是隻寫一首20字的詩,也要用一頁紙

操作方法

  • 01

    1.「檔案大小」與「所佔空間」的差別 為了便於大家理解,我們先來看兩個例子:
    例1:找到D槽上的Ersave2.dat檔案,用滑鼠右鍵單擊該檔案,選擇「屬性」,即可開啟對話方塊,我們可以看到,Ersave2.dat的實際大小為655,628 Byte(位元組),但它所佔用的空間卻為688,128 Byte,兩者整整相差了32KB。
    例2:同樣是該檔案,如果將它複製到A盤,你會發現該檔案實際大小和所佔空間基本一致,同為640KB,但位元組數稍有差別。再將它複製到C槽,檢視其屬性後,你會驚奇地發現它的大小和所佔空間的差別又不相同了!
    顯然,在這三種情況中,檔案的實際大小沒有變化,但在不同的磁碟上它所佔的空間卻都有變化。事實上,只要我們理解了檔案在磁碟上的儲存機制後,就不難理解上述的三種情況了。檔案的大小其實就是檔案內容實際具有的位元組數,它以Byte為衡量單位,只要檔案內容和格式不發生變化,檔案大小就不會發生變化。但檔案在磁碟上的所佔空間卻不是以Byte為衡量單位的,它最小的計量單位是「簇(Cluster)」。

  • 02

    2.分割區格式與簇大小
    在例2中,同一個檔案在不同磁碟分割區上所佔的空間不一樣大小,這是由於不同磁碟簇的大小不一樣導致的。簇的大小主要由磁碟的分割區格式和容量大小來決定,其對應關係如表1所示。
    筆者的軟碟採用FAT分割區,容量1.44MB,簇大小為512 Byte(一個磁區);C槽採用FAT 32分割區,容量為4.87GB,簇大小為8KB;D槽採用FAT 32分割區,容量為32.3GB,簇大小為32KB。計算檔案所佔空間時,可以用如下公式:
    簇數=取整(檔案大小/簇大小)+1 所佔空間=簇數×磁碟簇大小 公式中檔案大小和簇大小應以Byte為單位,否則可能會產生誤差。如果要以KB為單位,將位元組數除以1024即可。利用上述的計算公式,可以計算ersave2.dat檔案的實際佔用空間。

  • 03

    3.輕鬆檢視簇大小
    ①用Chkdsk檢視簇大小 在Windows作業系統中,我們可以使用Chkdsk命令檢視硬碟分割區的簇大小。例如我們要在Windows XP下檢視C槽的簇大小,可以單擊「開始→執行」,鍵入「CMD」後回車,再鍵入「C:」後回車,然後輸入「Chkdsk」後回車,稍候片刻從它的分析結果中,我們就可以得到C槽的簇大小,不過它把簇稱之為「分配單元」或者「Allocation unit」。
    ②用PQ Magic等磁碟工具來檢測 很多磁碟工具都具備磁碟資訊顯示等功能。例如在PQ Magic中,選擇要檢視的磁碟分割區,然後單擊右鍵選擇「高階→調整簇大小」功能,即可從顯示的對話方塊中可以看到該磁碟當前設定的簇大小。
    ③手工檢視 手動建立一個100位元組以下的文字檔案。然後將該檔案複製到欲檢視簇大小的磁碟分割區中,在Windows下顯示該檔案的屬性,其中「所佔空間」處顯示的數值就是簇大小.

  • End

IT145.com E-mail:sddin#qq.com