發表日期 2003/03/11
更新日期 2004/12/23
在登錄檔中增加 ConfigFileAllocSize 設定,可增進系統效能嗎?
適用範圍:All Windows
感想:
為什麼那麼多人都喜歡「優化」系統?「優化」的結果,經常是變得一團混亂...到底「優」在哪了?
問題
在網路上一直流傳著這樣的說法:
將 HKEY_LOCAL_MACHINE\System\CurrentControlSet\
Control\FileSystem 中 ,新增 DWORD
值:ConfigFileAllocSize,設數值為000001f4(16進制),這樣可以優化檔案、提高系統性能。
這說法是真的嗎?
回答
無論是在網路上也好、或是一些所謂的介紹
Windows「密技」的書裡面,常告訴使用者可以改登錄中的某某機碼來增進「系統效能」,但是,很少有書能夠仔細的說清楚,為什麼要這麼改、又為什麼這樣改可以增進效能?都沒有說明白...,於是產生了很多誤導使用者的觀念。
改 ConfigFileAllocSize
可以「提高系統性能」有一點言過其實了,會給人過高的期望,因為要提升你整個「系統性能」,是一件很複雜的事情,不可能只透過修改某某機碼就可以做到的。
那麼,ConfigFileAllocSize 是做什用的呢?就是指定作業系統在儲存檔案時,搜尋連續空間的最小單位。
對於體積大的檔案來講,加大 ConfigFileAllocSize
可以有效避免檔案產生斷離(Fragmentation) 的情況,而達到所謂「提高系統性能」。
好比說,假設我預設值是 500K 的話,這時我有一個 600K
的檔案要存檔,電腦檔案系統就首先會找出一個「連續」500K 的空間讓我擺這 600K 的檔案。
因為我的最小單搜尋位已指定為 500K,但由於我檔案是 600K,所以電腦找到第一個500K
之後,還會繼續找下一個 500K 才放得下我這 600K 大小的檔案,換言之,我這 600K
的檔案有可能被分散在硬碟碟片四處,不是一個連續的檔案。
所以,在讀取這檔案的時候,電腦要在硬碟中四處來回讀取,相對於一個位在連續位置的檔案而言,這種斷離的檔案,讀起來就會花時間(磁碟讀取頻繁),這就是我們為什麼每當使用一段時間之後,就要做磁碟重整的原因,把斷離的檔案重組在一起,改善檔案存取效率。
所以當檔案一大,我的檔案可能被切成好幾段分散在硬碟各處,所以適當的加大,可以減少檔案被切的機會。
一般檔案產生斷離,影響不大,不是很容易察覺,但是如果SWAP檔(虛擬記憶體交換檔)、或者體積很大的多媒體檔案(如
mpeg)產生斷離,就會明顯影響這類大檔案的讀取效率,當然,所謂的「性能」也就打折扣了。
設定 ConfigFileAllocSize
嚴格說,不能算真正釜底抽薪的解決檔案斷離的問題,不過,定期的進行磁碟重組的工作,對於消除檔案的斷離的確有 100%
的幫助。
附帶一提:
ConfigFileAllocSize 正確設定如下:
機碼位置:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\
Control\FileSystem
數值名稱:ConfigFileAllocSize
資料類型:DWORD(REG_DWORD)
數值資料:512(單位KB,10進位,512K 僅是習慣預設值,不代表一定必須是512K)
意見或問題請寄至:

版權所有,本站文、圖未經授權,請勿任意轉載與節錄,作者:車成斌

|