Longhorn(Windows Server 2008) 將是最後一版支援 32bit 的 Windows Server

Bill Laing, Windows Server Division GM 在 Microsoft Looks to 64-Bit Future 的 eWeek 專訪中提到 Windows Server 2008 將會是最後一版支援 32bit 的 Windows Server 作業系統。我想大家應該早就料到會有這樣的發展了吧。自從 Intel 和 AMD 相繼在去年停止純 32bit 的 CPU 出貨後,目前市面上買的到的 CPU 都是支援 32bit/x64 或 EM64T 的型號。既然未來市面上將不會再有只支援 32bit 的 CPU,在伺服器端的作業系統改成 x64/IA64 only 也是合理的進展。

x64 作業系統對應用程式來說最大的改變就是虛擬記憶體定址的大小;在 32bit 作業系統虛擬記憶體定址只有 32bit = 4GB,作業系統使用 2GB 應用程式使用 2GB,這對伺服器上的應用程式來說是不大夠的。在 32bit 作業系統雖然可以使用 /3GB 的 Boot.ini 參數來將記憶體配置改成應用程式 3GB 作業系統 1GB,但是一些副作用。在 64bit 作業系統上虛擬記憶體定址空間有 64bit = 16TB,作業系統 8TB 應用程式 8TB,對應用程式來說就是可以使用到所有的實體記憶體來處理使用者要求。對於效能頻頸發生在記憶體的應用程式來說,64bit 作業系統的 8TB 虛擬記憶體會大幅改善應用程式效能。下表示 Windows Update 網站使用相同的硬體進行的效能測試數據:

Measure Windows Server 2003 Enterprise Edition SP1 Windows Server 2003 Enterprise x64 Edition
Mbps average 784 976
Concurrent connections average 15,746 13,600
Get req/sec average 2,000 3,400
Get req/sec max 2,200 6,800
CPU average 32% 60%
Application process (VM usage) 2GB 3.2GB
HTTP 500 errors 2% 0%

由上表可發現除了 Concurrent User 與 HTTP 500 errors 之外,其他代表伺服器負載的數字都是增加的,Get req/sec 在尖峰時間的處理能力增加了三倍之多。至於 Concurrent User 數字下降的部分,根據 Moving Microsoft Update Downloads to x64 文中的說法是因為 64bit 環境上因為處理速度增加導致使用者連線時間縮短所致。

如果您的伺服器應用程式因為 2GB 記憶體限制導致效能不佳而且 Server 硬體支援 x64,建議您升級作業系統到 64bit。透過升級到 64bit 作業系統來解除 4GB 定址封印,釋放伺服器原有的潛能。也能進一步做到 Server Consolidation。誰說要做 Server Consolidation 只能用虛擬化? 64bit 是您不可忽略的有力武器。