跳到主要內容

WinSXS的官方解! 實測能奉還多少空間出來?

話說最近幫老家的Windows 7排除問題發現在去年年底微軟釋出一個針對WinSXS會日漸肥大的清理修正檔案。Windows 7吃下後就可以用「磁碟清理」去減少所占用的空間。據微軟的說法,放在WinSXS資料夾裡的就是系統更新元件時所需要的檔案。在這個磁碟清理程式的外掛釋出之前,是只有清除Service Pack檔案的官方解

據微軟的說法,Windows 7的這個套件的功能在Windows 8之後已經內建。而事隔一年之後(Windows 8在2012年10月29日正式發佈)才推出這個給Windows 7用,感覺上有一點遲到,不過至少是出現了。可惜的是還在使用Vista的使用者並沒有這個福利,沒辦法,這完全得看微軟的心情…畢竟除了不受歡迎之外,目前Vista也已經過了主流支援快兩年,正常來說微軟不會提供對應的功能性加強產品。


我們很好奇這個套件能讓系統刪掉多少不必要的東西。於是用虛擬機安裝乾淨的系統來測試,並且與其他新舊Windows系統比較。為了講求儘可能的公平,規劃了下列流程:

  1. 直接使用VMware Player內建的Easy Install執行系統安裝。Windows 8.1使用的也是本機帳戶,讓差異儘可能減少。
  2. 修改預設的設定,RAM從原來預設設定成2GB。Vista/7/8.1都是32位元的企業版,處理器也開成兩個核心增加執行效率。
  3. 為增加執行的效率,Vista以後的系統安裝完先跑內建的評分。
  4. 為了拉齊元件的一致性,.Net Framework 3.5 SP1、.Net Framework 4.0(XP)/4.5.1、該平台最新版本IE和Flash ActiveX元件,防毒一律上Microsoft Security Essentials,還有XP昇級Windows Media Player 11。
  5. 因反覆測試發現會有因重開機次數等原因造成的落差。所以一律以清除系統還原,以及刪除MU下載下來的更新檔(%systemroot%/software distrobution/download),根目錄下亂數產生安裝暫存資料夾,和XP在%systemroot%下以$KBXXXXXXX$暫存的資料夾後再進行計算。

Windows 7 SP1 台灣繁體中文企業版(32位元)

雖然新電腦多數搭載Windows 8和8.1,不過因為多數人對於Metro/Modern/Windows 8 Style UI不適應,Windows 7仍然是在XP之後多數人偏好的Windows平台。

VMWare Tools給系統吃到很高的分數…我記得之前Host裝WinTPC(給企業裡舊電腦使用的簡化版Windows 7)處理器也才拿到5.2分,這5.9分和RAM拿到5.5分、圖形在內顯GMA945竟然有5.7分,看到我有點傻眼OTZ

測試下來,「Windows Update清理」這項清理WinSXS資料夾的選項只清出了不到100MB的空間,隨便刪除系統還原或是Windows Update所下載的Hotfix安裝檔案都相對多很多。
  • 乾淨安裝完成 C: 7.27GB、WinSXS 3.86GB、分頁檔(pagefile.sys) 1.99GB
  • 安裝完Adobe Flash Player 12 ActiveX plugin、Windows Internet Explorer 11、.net Framework 4.5.1和Microsoft Security Essential及更新定義檔後重開機,C: 9.39GB、WinSXS 4.05GB。清理暫存檔514MB+刪除系統還原313.16MB+安裝IE11所需的Hotfix安裝檔案暫存計91.4MB後,C:減少至8.70GB。
  • 到Windows Update更新106個重要更新及40個選用更新後,C: 12.2GB、WinSXS 4.95GB。在清理磁碟顯示「Windows Update清理」有93.3MB,清理後C: 12.1GB、WinSXS 4.86GB。
  • 清理暫存檔514MB+刪除系統還原1.5GB+Hotfix暫存計241MB後,C:減少至10.2GB。


Windows 8.1 台灣繁體中文企業版(32位元)

Windows 8.1說穿了就是Windows 8的Service Pack 1,只是這次連命名法則也改成和Unix陣營(Mac OS X及Linux distro等)的方式一樣了。Windows 8.1主要是改進Windows 8的Windows 8 Style UI的介面和內建的App,不過顯然還是沒能讓多數消費者增加昇級意願。就等接下來四月要上的Windows 8.1 Update 1了…

測試下來,「Windows Update清理」這項清理WinSXS資料夾的選項顯示有123MB的空間,清完後整體空間總量卻沒有減少,怪哉。不過仍然是無損其空間占用少於Windows 7的事實,即便把pagefile.sys差距算進去仍然有超過1GB以上空間的精簡:

10.2 - (1.99-1.12) - 7.91 = 1.42GB
  • 乾淨安裝完成 C: 8.18GB、WinSXS 3.50GB、分頁檔(pagefile.sys) 1.12GB,另外Windows 8開始另外有給Windows 8 Style App專用的分頁檔swapfile.sys,占248MB。
  • 安裝.net Framework 2.0/3.0/3.5後重開機,C: 8.55GB、WinSXS 3.65GB。刪除系統還原695.92MB+安裝的所需的安裝檔案暫存計147MB後,C:減少至 7.27GB。
  • 到Windows Update更新42個重要更新後,C: 9.6GB、WinSXS 4.75GB。在清理磁碟顯示「Windows Update清理」有136MB,清理後C: 9.6GB、WinSXS 4.63GB。
  • 刪除系統還原275.58MB+Hotfix暫存計123MB後,C:減少至7.91GB。


對照組1:Windows Vista SP2 英文企業版(32位元)

Windows Vista在Windows XP之後伴隨著多數使用者的期待出現,卻因為初期問題太多導致沒有太多人想用,現在有的應該是剩下當年隨機搭載Vista的使用者…這個大補丸如果Vista吃得到的話,應該是最大的受益者了吧? 所以原諒我只找到了英文版的企業版代表,理論上繁體中文版的結果不會差太多。

VMWare Tools給系統吃到很高的分數…內顯GMA945竟然和RAM一起拿到有5.9分,所以Aero也被打開來了XD

測試過程中,Vista大約都多Windows 7有固定約2.8GB的差距。
  • 乾淨安裝完成 C: 9.97GB、WinSXS 3.73GB、分頁檔(pagefile.sys) 2.29GB
  • 安裝完Adobe Flash Player 12 ActiveX plugin、Windows Internet Explorer 9、.net Framework 4.5.1和Microsoft Security Essential及更新定義檔後重開機,C: 13.1GB、WinSXS 3.84GB。清理暫存檔418MB+刪除系統還原?MB+磁碟清理暫存檔案暫存計1.33GB後,C:減少至 9.57GB。
  • 到Windows Update更新160個重要更新更新後,C: 14.9GB、WinSXS 5.83GB。
  • 清理暫存檔76.4MB+刪除系統還原?MB+磁碟清理暫存檔案暫存計2.96GB後+Hotfix暫存計314MB後,C:減少至13.0GB。


對照組2:Windows XP 台灣繁體中文專業版(32位元)

Windows XP在過幾天就要光榮退役了(4月8日)…我指的是對於微軟和合作夥伴而言。不過對於一般使用者來說,用得好好的老P4如果沒有1GB RAM可能上Windows 7會跑得很累,而XP仍然可以做很多事情,並且游刃有餘…

因為沒有完全實做WinSXS機制,所以也是唯一沒有用到GB計算該資料夾的系統。所有的暫存和系統還原都不刪才約莫等於Windows 8.1清理完後的大小:

7.35 + (5.75 - 4.89) = 8.21GB

另外,裝.net Framework 3.5和4.0都是選用性的。如果沒有用到大可不裝,可以省下不少硬碟空間,系統也會感覺比較順暢:
  • 乾淨安裝完成 C: 3.51GB、WinSXS 19.8MB、分頁檔(pagefile.sys) 1.99GB
  • 安裝完Adobe Flash Player 12 ActiveX plugin、Windows Internet Explorer 8、.net Framework 3.5 SP1+4.0、Windows Media Player 11和Microsoft Security Essential及更新定義檔後重開機,C: 5.75GB、WinSXS 25.2MB。刪除系統還原後,C:減少至 4.89GB。
  • 到Windows Update更新完成後,C: 7.35GB、WinSXS 39.1MB。
  • 清理暫存檔514MB+刪除系統還原+安裝Hotfix安裝檔案暫存計981+529MB後,C:減少至5.99GB。


第二回合:實戰壓縮WinSXS資料夾

Windows Vista以來的WinSXS直到Windows 8開始才算是有真正得到解決。在這之前,除了把它搬到C槽以外的磁碟區解決不夠的問題…那如果把它壓縮呢?

因為需要特殊權限,我借用了呆丸北拜的管理員取得所有權右鍵選單,然後在取得之後進行壓縮。但因為實質上裡面的元件有許多都在運作無法壓縮,故遇到一律略過處理。

普遍來說WinSXS帳面上榨出了約1.5GB,實際上真正空出來的空間並沒有那麼多。最多的是Windows 8.1接近1GB。而這個方法很費工,不過只要做一次就一勞永逸,也是個能弄出一些空間的方法之一。


結論

WinSXS官方在Windows 8終於出現像樣的解決方案。再來是遲來的Windows 7 SP1補丁,假若您的電腦安裝了一些時日,那麼可能可以意外的取回幾基嘎的硬碟空間。在本次實驗中唯一沒有辦法模擬到實際情況的是VMWare Tools替代了所有真實裝機會安裝的驅動程式和公用程式,這些都是現在WinSXS會列管的部分,可能會大大的增加WinSXS資料夾佔用的空間。

相對的,不安裝用不到的軟體和.net Framework,尤其是.net Framework更是有世代的斷層,XP只能使用4.0而無法使用新版本的4.5.1,也是唯一沒有內建2.0以上版本的主流Windows作業系統系列:
  • Windows Vista內建.net Framework 2.0 & 3.0
  • Windows 7內建.net Framework 2.0, 3.0 & 3.5
  • Windows 8/8.1內建.net Framework 4.5
對於一般桌機和傳統筆電的使用者,WinSXS多大可能沒有太多的感覺,不過對於搭載固態硬碟(SSD)或是eMMC的Windows 8/8.1平板就有差了。我們可以看到Windows 8的確有在精簡系統架構,雖然和平板常見的16GB eMMC相比,沒有手動清理Windows 8.1會占掉四分之三的空間,不過畢竟實質上Windows仍然是為傳統電腦設計的作業系統,即便Windows 8開始變成雙面人,桌面環境也還是Windows的根本。Windows仍然龐大不過已有進步,值得關注後續的發展。

而即將退休的XP這一仗勝利打得漂亮。如果實驗中的那些元件不裝的話,那我們可以想像會有多麼輕省! 或者您也可以挑戰同為NT 5.x架構的Server 2003改作桌面系統(笑),更輕省可以選擇已經退休多年的Windows 2000加上黑異貓的更新檔案!

WinSXS不論是Windows 8以後,還是Windows 7 SP1的補丁,都已經加入了定期清理機制。所以一般使用者還是定期清理系統還原和Windows Update暫存的安裝檔案資料夾 (%systemroot%\SoftwareDistribution\Download) 會比較實際喔。

留言

這個網誌中的熱門文章

Windows 10試用:中文輸入法跟上微軟的車尾燈了嗎?

我們提到Windows 10有很多實用的新功能,也讓Windows完全回歸以桌面為主軸的作業模式。不過基本上除了Windows本身要好用之外,Windows 8中文使用者最沉重的問題莫過於輸入法這件事。這個問題,Windows 10也繼承了Windows 8的架構,完全以從XP開始支援的TSF(Text Service Framwork)架構輸入法為主,而傳統的輸入法需要大幅度調整才能轉換成這種架構。 其實新架構和以往架構對使用者最大的差別,一是新的才能支援新的Metro app,二是切換的某些重要快速鍵大不相同。其實還有第三個,那就是因應對觸控操作加強,輸入法除了所有程式統一一種設定,還會自行判斷在那個輸入框下該只能輸入英數字,還是直接提供中文輸入模式。這些種種的不同,到Windows 10上會不會繼續成為大家裹足不前的因素呢?

減肥版的Windows 7:就叫Thin PC!

瘦客戶端(Thin client)其實不是什麼新玩意。於是輕量化的Windows 7作業系統WinTPC因應而生。