目前網路流傳的仍然有很多是錯誤或無用的甚至反而降低效能
隨便列幾個例如:
強迫從記憶體釋放DLL
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer]
"AlwaysUnloadDLL"=dword:00000001
系統會自動判定dll是否仍然需要用到而保留或unload為何要強制unload所有dll?
如果要從硬碟再load一次不是反而降低效能?記憶體不是就是用來放需要用的程式嗎?
禁用記憶體頁面調度
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management]
"DisablePagingExecutive"=dword:00000001
系統本來就會自動將核心程式盡量維持在記憶體中,如果真的吃緊到需要把它放到分頁檔,表示你的記憶體已不夠了,這時還強制把它鎖在記憶體中只是造成出問題的機率大增,加記憶體才是正途
加大系統快取
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management]
"LargeSystemCache"=dword:000000001
這個機碼是給伺服器專用的,一般使用並非為伺服器開發的軟體和驅動不會從中得到任何好處
設定輸入/輸出快取大小IoPageLockLimit
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management]
"IoPageLockLimit"=dword:somevalue
沒有證據證明此值有任何效果,官方也沒有任何關於這個值的文件或說明
關閉在啟動電腦時執行 Defrag程式
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Dfrg\BootOptimizeFunction]
"Enable"="N"
系統在idle10分鐘後會自動以優化開機速度為前提defrag硬碟,為何要關掉它?
啟用預讀設定以提高系統速度減少XP開機所需時間
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management\PrefetchParameters]
"EnablePrefetcher"=dword:00000003
系統預設本來就是3而且已經是最佳設定,超過3的值並無任何效果,低於3只會降低效能
還有幾乎一定會改的tcpwindow的值
網路上流傳的值各有不同
哪一個是正確的?
這個值要發揮最佳效能必須盡量接近bdp(頻寬延遲乘積)
也就是不同頻寬不同延遲的線路這個值不會相同
而且它最好是mss的偶數倍
而mss的值是mtu-40
mtu的值各isp不同
seednet是1480 hinet好像是1492(我是用seednet所以不太確定hinet的值)
所以這個值沒有完美的理想值
只能調整它在一個合理的點
tcpoptimizer是網路上流傳最能做到這一點的軟體
就算你懶得算自己線路的bdp是多少
只要知道自己的頻寬和mtu(它也提供計算mtu的方法)
它就能給你一個比較合理的值
另外在vista中這個值已失效,vista有更先進的自動動態調整方法
除了這些以外還有不少無用或效能反降的優化
欲知詳情請參閱以下網站(英文):
http://www.tweakhound.com/xp/xptweaks/supertweaks1.htm
這是我看過寫的最詳細的
從系統服務到登錄優化
作者花了數年時間一一重複的調整加以實驗並參閱官方文件
且分成4個等級使用者的分別供人選擇自己適合的
非一般未經查證的轉貼
且歡迎任何有意見的人附上自己的證據和他討論
這個網站當然未必完全不會有任何錯誤
但比起一般不負責任的以訛傳訛自然是不可同日而語