電腦為什麼會產生磁碟碎片
使用電腦的時候,不少人會把被浪費了的7KB空間理解成檔案碎片,這其實是不對的。。下面小編簡單的說下。
參考如下:
首先,介紹下磁碟碎片的概念。
很多人會把檔案碎片跟簇的概念混淆起來。其實對windows系統來說硬碟上的每個分割槽都是由最小儲存單元——簇組成的。就好比,一面牆是由一塊塊 轉頭組成的。簇的大小可以在分割槽格式化時由使用者定義,一般是數個KB大小,比如是8KB。假設我有一個檔案,大小是80MB零 1KB1MB=1000KB,換算一下就是80,001KB,其中的80,000KB正好佔用10000個簇,剩下的那1KB,不得以也要佔用1個 簇,但這最後一個簇還有7KB的空間沒用上了。而且這個未完全使用的簇,其他檔案也不允許繼續使用。這就造成了一點點的空間浪費。
或許你會想,要是將簇設為1KB,甚至1B那豈不是很好?但你要知道硬碟是按照簇來讀寫的,對於同樣的檔案,簇設得越小,檔案佔用的簇的數目就越多。這樣讀這個檔案要訪問的簇就多了,資料讀寫就會變慢。所以硬碟的空間利用率和檔案讀寫的時間效率是一對矛盾。
而磁碟碎片實際上指的是一個檔案佔據那些簇是不連續的,就相當於檔案被分割開來,分別存放在相互間斷的幾段簇上。檔案被分割為幾個部分就是幾個碎 片。所以碎片其實是指檔案碎片,可以理解成,檔案破碎成片之意。而且檔案碎片之間有時候順序還是錯亂的。比如說,有時候“檔案裡靠後的碎片”所佔的簇段在 硬碟上反而會排在“檔案裡位置靠前的碎片”簇段的前面。這樣一來,一個檔案就會以比較混亂的順序存放在硬碟上。 轉自電腦入門到精通網
顯然計算機讀取連續的有序的資料肯定要比不連續的亂序的資料來得快。所以整理碎片可能會大幅度提高系統性能。
舉個例子,起初硬碟某個分割槽是空白的,寫入三個檔案A、B和C。顯然這個時候,三個檔案都是順次佔用三個簇段。故而三個檔案不會產生碎片。
現在假設你刪除了B檔案,這個時候A和C中間就有一塊空閒簇段了。此時還是不存在檔案碎片的,因為每個檔案各自佔據的簇段都是連續的,沒有檔案被分 割。而如果現在需要寫入一個檔案D,而且D比剛剛刪去的檔案B要大。那麼A和C之間的空閒簇段就不足以放入D,再假設C後面的空閒簇段也不足以放下D,這 個時候D就勢必要分割成兩塊存放,一塊放在A和C之間,另一塊放在C之後。這樣一來,檔案碎片就產生了。D檔案有兩個檔案碎片。
磁碟碎片整理要做的工作就是:把C檔案前移,一直移到緊接A檔案的簇段上去。這樣A和C之間就沒有空閒簇了,C之後剩下的將是一段完整的空閒簇段,足以放下檔案D。這樣D就也佔據一段連續的簇段。碎片也就消除了。
所以換個思路,不用專業的磁碟碎片整理軟體也可以實現磁碟碎片的整理工作。
將一個分割槽的檔案全部剪切出去,再複製回來,那麼由於複製回來的時候,檔案是一個接一個寫入的,這樣每個檔案就會順次佔用簇段,從而也就不會產生碎 片了。不過剪切出去再複製回來的這種方法,需要其他分割槽裡足夠的空間來存放待整理的分割槽裡所有的檔案。其缺點是沒有碎片的檔案也被剪下複製了,這樣整體效 率上就不如專業軟體了。
但相對於某些軟體卻有某種優勢,比如windows自帶的哪個整理工具,在分割槽的佔用率較高時,常常會因為沒有足夠空閒空間來作檔案的中轉站,導致不能徹底地消除碎片。而上面提到方法對付這種情況就很理想。
而且如果在複製中優先複製那些有價值的,幾乎永遠不會刪除的檔案,將它們存放在分割槽靠前的部位,這也有利於降低磁碟碎片的產生。
同理也可以將待整理的分割槽做個ghost備份,再恢復回來,這樣也能有效消除磁碟碎片,而且速度也相當快。