定義
磁碟上的檔案和資料夾通常占用磁碟的多個簇,並且每個簇大多分散在磁碟上,這些分散的簇稱為檔案碎片。磁碟上的檔案碎片越多,系統讀取和新建檔案的速度越慢。
其他如
IE瀏覽器瀏覽信息時生成的
臨時檔案或
臨時檔案目錄的
設定也會造成
系統中形成大量的碎片。檔案碎片一般不會在
系統中引起問題,但檔案碎片過多會使系統在讀檔案的時候來回尋找,引起系統性能下降,嚴重的還要縮短
硬碟壽命。另外,過多的檔案碎片還有可能導致存儲檔案的丟失。
檔案碎片
產生
(1)在檔案操作過程中,Windows
系統可能會調用
虛擬記憶體來同步管理程式,這樣就會導致各個程式對
硬碟頻繁讀寫,從而產生檔案碎片。
(2)還有一種情況就是當中間的一個
扇區內容被刪除後,新寫入一個較小的檔案,這樣在這個檔案兩邊就會出現一些空間,這時候再寫入一個檔案,兩段空間的任意一部分都不能容納該檔案,這時候就需要將檔案分割成兩個部分,碎片再次產生了。
(3)最常見的就是下載電影之類的大檔案,這期間大家一般都會處理一下其它事情,而下載下來的電影檔案被迫分割成若干個碎片存儲於
硬碟中。因此下載是產生碎片的一個重要源頭。還有就是經常刪除、添加檔案,這時候如果檔案空間不夠大,就會產生大量的檔案碎片,隨著檔案的刪改頻繁,這種情況會日益嚴重。
影響
雖然說檔案碎片對於正常工作影響並不大,但是會顯著降低
硬碟的運行速度,這主要是硬碟讀取檔案需要在多個碎片之間跳轉,增加了等待碟片旋轉到指定
扇區的潛伏期和
磁頭切換
磁軌所需的
尋道時間。
磁碟讀寫操作的原理
知道了檔案碎片的產生原因之後,我們還有必要了解一下程式運行時
磁碟的讀寫動作。一般運行一個程式時,
磁碟驅動器的
磁頭所做的工作是先搜尋該程式運行必需的檔案,然後讀取數據,最後做讀後處理——將
數據傳送至磁碟
高速快取(Cache)和
記憶體中。搜尋時間在
硬碟性能指標中被稱為平均
尋道時間(Average seek time),單位為毫秒(ms),當下主流硬碟的平均尋道時間小於9.5ms。如果能將
應用程式的相關檔案放在
磁碟的連續空間內,
磁頭搜尋的時間將會減少很多。讀取時也是如此,
磁碟讀取位於
磁頭下方
扇區的數據所需時間僅為將磁頭移到另一地點再讀取相同數據所需時間的五分之一。
讀盤時,
系統先檢查數據是否在
高速快取中,如果有則直接讀取;如果沒有則訪問
磁碟,也就是讀盤。當需要多次讀取同一份數據時,Cache的作用很大,但對於第一次讀取某個檔案,Cache就無能為力了。於是搜尋時間和讀取時間在很大程度上影響著程式執行的效率。
為何要整理磁碟
Windows系統並不能自動將每個檔案按照最大程度減少
磁頭搜尋時間的原則放到磁碟上最合適的位置。於是Microsoft在Windows中加入了“Disk Defragment”(檔案碎片整理程式),並提供了“TaskMonitor”(任務監視器)來跟蹤程式啟動過程中的
磁碟活動,以利於“Disk Defragment”能夠更有效地工作。“TaskMonitor”是隨Windows啟動而自動運行的(當然要在“啟動”中選中“TaskMonitor”)。當載入某個
應用程式時,它通過監視
磁碟的訪問動作來了解該程式啟動時搜尋和調用的檔案,對所需檔案進行定位,並將監視結果儲存在“C:\Windows\Applog”隱藏
目錄中。這個
目錄中的大多數檔案以“.lgx”為擴展名,其中“lg”代表
記錄檔案(Log File),“x”表示盤符,如D糟程式就以“.lgd”為擴展名;記錄檔案的檔案名稱為TaskMonitor所監視的
應用程式的檔案名稱,如E盤上的WinZip程式記為“Winzip32.lge”。用戶進行檔案
碎片整理時,該程式會根據Applog
目錄中的信息把
應用程式的相關檔案移動到
磁碟上的連續空間內。
TaskMonitor僅在程式載入過程中對檔案信息進行搜尋,並且根據程式的載入頻率調整最佳化的順序,也就是說使用次數最多的軟體可獲得最多的關照。Applog
目錄中的APPLOG.ind檔案就記錄了
應用程式運行的次數。用戶需要將常用軟體多次啟動,接受TaskMonitor的監視和記錄,再使用Disk Defragment進行整理,才能真正實現程式
啟動速度的提高。但如果用戶中途改變了常用軟體,比如以前常用WinZip,改用ZipMagic,那么在相當長的時間內Disk Defragment還是先把與WinZip相關的檔案移到連續的空間內,而不是ZipMagic,除非ZipMagic的載入次數超過WinZip。要解決這個問題,用戶可將“Winzip32.lgx”檔案刪除,記錄檔案不存在了,Disk Defragment也就不會去最佳化它了。
解決辦法
定期整理硬碟
實際上,定期整理
硬碟應該是毫無疑問的。如果說
硬碟碎片整理真的會損害硬碟的話,那也將是在對硬碟進行近乎天文數字般次數的整理之後。
硬碟使用的時間長了,檔案的存放位置就會變得支離破碎——檔案內容將會散布在硬碟的不同位置上。這些“
碎片檔案”的存在會降低
硬碟的工作效率,還會增加數據丟失和數據損壞的可能性。
碎片整理程式把這些碎片收集在一起,並把它們作為一個連續的整體存放在
硬碟上。Windows自帶有這樣的程式:檔案
碎片整理程式(DiskDefragmenter),但在工具軟體NortonUtilities和Nuts&Bolts中有更好的此類程式。
然而,
碎片整理對
硬碟里的運轉部件來說的確是一項不小的工作。如果
硬碟已經到了它生命的最後階段,
碎片整理的確有可能是一種自殺行為。但在這種情況下,即使您不進行
碎片整理,
硬碟也會很快崩潰的。
實際上在大多數情況下,定期的
硬碟碎片整理減少了硬碟的磨損。 至於多久整理一次要看你的讀寫頻繁度了 如果經常下載、刪除什麼的
建議1-2個月一次 檔案
碎片整理時,請關閉螢幕保護程式,並且不要在電腦上乾其他的事情,如聽音樂,玩遊戲等.讓電腦只運行檔案碎片整理程式,這樣會快些
同時建議不要很頻繁的整理
硬碟,因為那樣的話硬碟不停的進行讀寫,這樣可是影響硬碟的使用壽命的,推薦三四個月整理一次.
整理前的準備工作
我們在整理
硬碟前一般都要對它清理垃圾信息,檢查有無錯誤,最後才能談到碎片的整理和最佳化。因此,我們在整理
硬碟前,應該首先做好這些工作:
1、應該把
硬碟中的
垃圾檔案和垃圾信息清理乾淨。
系統工作一段時間後,
垃圾檔案就會非常之多,有程式安裝時產生的
臨時檔案、上網時留下的緩衝檔案、刪除軟體時剩下的DLL檔案或強行關機時產生的錯誤檔案等,建議“菜鳥”朋友還是使用
微軟的“
磁碟清理程式”代勞,“老鳥”當然可以使用一些功能更強的軟體或手工清理。
2、檢查並修復
硬碟中的錯誤。首選的仍然是
微軟的“
磁碟掃描程式”,雖然它的速度實在不怎么樣,但只要你有足夠的耐心,經過這個程式對磁碟完整而詳細的掃描後,相信
系統中的絕大多數錯誤已經被修復了。當然你也可以嘗試一下其他工具,如扁鵲神醫“Norton WinDoctor”,它的速度可比Windows中的“
磁碟掃描工具”快多了。
整理方法及注意
在Windows里,用戶可以從“開始”選單中選擇“程式/附屬檔案/
系統工具/檔案
碎片整理程式”,彈出選擇驅動器視窗,選擇要整理的分區,然後點擊[確定]即可開始整理,但此方法碎片整理過程非常耗時,一般2GB左右的分區需要1個小時以上,所以建議讀者:
1、整理檔案碎片的時候,要關閉其他所有的
應用程式,包括
螢幕保護程式,最好將
虛擬記憶體的大小
設定為固定值。不要對
磁碟進行讀寫操作,一旦Disk Defragment發現磁碟的檔案有改變,它將重新開始整理。
2、整理檔案碎片的頻率要控制合適,過於頻繁的整理也會縮短
磁碟的壽命。一般經常讀寫的
磁碟分區一周整理一次。
磁碟掃描程式的命令參數
命令參數在 DOS時代可以說是一項基本的技能,很多程式都要靠命令參數來啟動,而到了圖形化界面時代,已很難再見到其蹤跡,但它卻實實在在地存在著,而且發揮著不小的作用。如很多 Windows遊戲的
設定程式就是用 /Setup 參數來實現的。通常我們不會太留意某些程式的命令參數,但他們往往包含著某些隱秘的功能,如果運用適當對你很有幫助。
Windows 中的
磁碟掃描程式就包含著許多命令參數,你可以在MS_DOS方式下或在“運行”對話框中實現,如果需要經常用命令參數,還可以建立一個
捷徑。
X: X 表示指定要檢查的驅動器號(不需要 / 的命令參數)
舉例:
SCANDSKW E: /N
SCANDSKW /A /P
運行過其他檔案整理程式怎么辦
當運行了其他
磁碟檔案整理程式(如WinAlign)後,它可能擾亂了TaskMon記錄的數據,若此時直接進行
碎片整理,可能會得不償失,達不到最佳化性能的目的。解決的辦法是在進行
碎片整理之前,多次運行Windows和自己最常用的程式,這樣可以讓TaskMon重新收集到正確的統計數據,指導進行
磁碟最佳化。
最後,當啟動Windows98的檔案
碎片整理程式時,可能會詫異界面中的Intel標誌。為什麼處理器的生產廠商會參與編寫這個最佳化
磁碟的軟體呢?這是因為
硬碟尋道時間的緩慢會導致
系統整體性能的下降,這樣會有損CPU超級計算能力的形象,讓人誤以為是CPU性能的低下。Microsoft的一個測試表明,在奔騰233的機器上啟動Windows僅僅比奔騰150快3%,也就是說,快速的CPU並不能克服
磁碟延遲的缺點。於是,在共同利益的驅動下,Intel和Microsoft聯合開發了Windows98的檔案
碎片整理程式,用來消除
硬碟尋道緩慢的瓶頸。
快速地整理檔案碎片
每次需要整理檔案碎片時都需要選擇“開始”*“程式”*“附屬檔案”*“
系統工具”*“檔案
碎片整理程式”,然後再指定驅動器,很麻煩。能否有簡單的方法完成這一系列操作?
在Windows
資源管理器中,選擇“查看”*“
資料夾選項”(或“查看”*“選項”),選擇“
檔案類型”選項卡,並在“已註冊的檔案類型”列表中選擇“
驅動器”。單擊“編輯”按鈕,打開“編輯
檔案類型”對話框,選擇“新建”,在“操作”欄中,鍵入“快速整理檔案碎片”。在“用於執行操作的
應用程式”欄中鍵入“C:\Windows\defrag.exe "%1" \noprompt”。