Windows XP Windows 7 Windows 2003 Windows Vista Windows教程綜合 Linux 系統教程
Windows 10 Windows 8 Windows 2008 Windows NT Windows Server 電腦軟件教程
 Windows教程網 >> Windows XP系統教程 >> XP系統基礎知識 >> Windows XP在浪費你的錢?

Windows XP在浪費你的錢?

日期:2017/1/24 11:57:17      編輯:XP系統基礎知識
對於CPU二級緩存(L2 Cache)的作用,想必大家都多多少少有一定了解,即使不完全明白其中道理,至少也可以從Pentium 4和Celeron的差價判斷出其重要性—256KB二級緩存的Celeron D 2.4GHz比512KB二級緩存的Pentium 4 2.4C便宜近一半。如果這時候有人說Windows XP操作系統並沒有充分利用CPU的二級緩存,你會怎麼想?這簡直就是在浪費用戶的投資嘛!

  事實上,有一種廣為流傳的說法是Windows XP沒有對CPU進行優化,理由就是它默認狀態下並沒有打開CPU的二級緩存。如果你打開注冊表編輯器,找到“HKEY_LOCAL_MacHINE\SYSTEM\ CurrentControlSet\Control\Session Manager\Memory Management”,在其中可以看到一個名為“SecondLevelDataCache”的項,它的默認值為“0”。再明顯不過了,“SecondLevelDataCache”就是二級數據緩存的意思,既然被設置為“0”,那就是關閉了二級緩存。



  正是基於以上論斷,才出現了優化二級緩存的技巧,也就是把“SecondLevelDataCache”的值設置為CPU的二級緩存容量(單位KB)。在眾多的優化軟件中也包含了優化CPU二級緩存的設置,例如“超級兔子魔法設置”、“Windows優化大師”和PcMedik等。這樣的優化到底有多大的效果呢?還是讓事實說話比較好,請看我們進行的對比測試。

  從測試結果來看,修改“SecondLevel DataCache”的值對測試結果沒有任何影響,這是為什麼呢?事實上,在微軟的知識庫文章(http://support.microsoft.com/default.ASPx?scid=kb;en-us;183063)中可以看到,從Windows NT4開始,“SecondLevelData Cache”的默認設置就已經是“0”了。這篇文章指出,當“SecondLevelDataCache”為“0”時,系統會嘗試通過硬件抽象層(Hardware Abstraction Layer,HAL)獲取二級緩存容量,即便是硬件抽象層無法獲取二級緩存容量,系統也默認設定二級緩存為256KB,而不是完全關閉二級緩存。在另外一篇Windows 2000的知識庫文章中(http://support.microsoft.com/default.ASPx?scid=kb;en-us;228766)中,明確地告訴用戶,一些第三方資料宣稱修改“SecondLevelDataCache”可以優化系統性能,這是不正確的。Windows XP與Windows NT4/2000都是NT內核,因此在設計上具有一定的繼承性,雖然這兩篇知識庫文章並不是直接針對Windows XP提出的,但可以看到這個問題由來已久,Windows NT系列操作系統在最初就已經把這個問題考慮周全了。

  從實際測試的結果和微軟知識庫文章的解釋可以得出結論,所謂的Windows系統沒有對CPU進行優化的說法是錯誤的,雖然手動修改“SecondLevelDataCache”也沒有帶來什麼負面影響,但這種“優化”絕對是多此一舉。


  測試平台:
  CPU Pentium 4 2.8E
  主板 微星865PE Neo2
  內存 Kingston DDR400(256MB×2)
  硬盤 Maxtor Plus 9 120GB(SATA)
  顯卡 ELSA影雷者FX534DV
  操作系統 Windows XP Pro+SP1

  SecondLevelDataCache Super Pi 209萬位測試
   0 110秒
   1024 110秒
   512 110秒
   256 110秒
   128 110秒
   64 110秒
   32 110秒
   16 110秒
   8 110秒

Copyright © Windows教程網 All Rights Reserved