作為全球最火的遊戲之一,《英雄聯盟》的受眾可謂是遍佈五湖四海,因此這款遊戲的每一次版本更新也牽動了無數人的關注。日前《英雄聯盟》方面在3月8日發佈的13.5版本更新公告中宣佈,自2023年4月4日(即 13.7 版本更新後)開始,將不再支持32位的Windows操作系統。也就是說,此後《英雄聯盟》及《雲頂之弈》都需要64位的Windows系統才能運行。
根據《英雄聯盟》製作方拳頭遊戲的說法,使用32位操作系統的玩家在13.7版本更新後,就將收到一條遊戲不再支持該系統的提示。而促使其做出這一改變的原因,則是目前正在使用64位操作系統的玩家,已經佔據了整個用戶群體的99.9%。而在發佈新內容的同時還要維護老硬件,無論從開發、還是測試的角度無疑都需要更多的資源,因此放棄維護老設備顯然也是更經濟的做法。
《英雄聯盟》不再支持32位Windows這件事,或許有許多玩家其實並不在意。畢竟根據Steam今年2月公佈的軟硬件調查數據顯示,64位操作系統已經成為了Steam玩家中的主流,僅僅只有0.09%的用戶還在使用32位的Windows 7,至於更早的Windows XP則早已“消失”。然而《英雄聯盟》這款覆蓋了全球大量玩家的現象級網遊放棄32位系統,絕對可以稱得上是個標誌性事件,同時也意味著一個時代的終結。
為什麼直到2023年,拳頭遊戲才放棄在32位操作系統上部署遊戲呢?其實回答這個問題就要先搞清楚,32位與64位這兩個關鍵詞的差異。
從馮·諾依曼機到現在大家熟知的個人電腦,計算機設備一直用的是二進制邏輯,也就是0和1(實際是高電位和低電位)來表示信息,因此32位和64位分別指的就是處理器在單位時間內,能夠一次處理的二進制數位數分別為32位和64位。
而Windows是32位還是64位也並非由微軟來決定,而是取決於比操作系統更底層的CPU。Intel早在1978年就推出了著名的16位處理器Intel 8086,並且這顆CPU對計算機的發展影響巨大,此後的286、386、486、奔騰處理器也都是在8086的基礎上演變而來,而8086使用的這套指令集則稱為x86指令集。
所以在此之後的CPU為更好的兼容性,就需要運行在16位模式下,這就是實模式(Real Mode)。然後再根據引導跳轉到32位的保護模式(Protection Mode),如果是64位系統,則會再被引導至64位的長模式(Long Mode)。
32位和64位操作系統最大的差異,就在於系統的最大尋址空間。工作在32位保護模式下的CPU,它的內存尋址範圍理論上是2^32bytes、也就是4GB,而64位系統的最大內存尋址空間為2的64次方bytes,可尋址空間達到了驚人的16TB。當然,尋址能力造成的內存限制其實是可以通過技術手段來突破的,當年硬件廠商就在CPU中加入了一個叫做“物理地址擴展(PAE)”的功能。
但問題在於,PAE這樣的技術還存在兼容性問題,所以它並不穩定。在硬件廠商與微軟來回扯皮之後,微軟方面強制在Windows內核中把物理地址空間限制為4GB,又強行關閉了MMIO重映射,導致32位的Windows系統就只有3.24GB內存可用。此時即使是將內存增加到16GB,也仍然只有3.24GB可用。也就是說增加的內存非但沒有用,反倒是被白白浪費掉了。
那麼3.24GB的內存意味著什麼呢?對於一款在2009年就已問世的網遊而言,它顯然是綽綽有餘了。彼時主流網遊對於系統內存的要求,普遍也只停留在1GB、乃至2GB的水平。只不過在過去十餘年間硬件技術的快速迭代,導致如今16GB內存才是玩家的主流配置,《英雄聯盟》官網上的推薦配置也已經從當年的1GB、變成了現在的4GB。
然而想必許多玩家都知道,遊戲廠商給出的最低配置基本上就等同於遊戲僅僅能夠運行,但這顯然是不夠的,特別是對於《英雄聯盟》這樣的MOBA遊戲來說,玩家追求的是流暢。
現階段如果繼續使用32位操作系統來玩《英雄聯盟》,體驗必然會相當糟糕。畢竟隨著遊戲版本的更迭,更精美的貼圖、更絢麗的特效對於內存的壓力越來越大。當32位Windows系統只有3.24GB內存可用時,《英雄聯盟》要求的卻是4GB才能流暢運行。
系統內存緊張時會發生什麼呢?當一個應用在申請內存時,系統會查看是否有空閒的物理內存,如果有就直接分配物理內存,並建立虛擬內存與物理內存之間的映射關係。可如果沒有空閒的物理內存,那麼系統內核就會開始進行回收內存的工作,一旦執行內存回收後,空閒的物理內存仍無法滿足此次的物理內存申請,系統就會觸發OOM(Out of Memory)機制。
OOM機制會根據算法選擇一個佔用物理內存較高的進程、然後將其殺掉,以便釋放內存資源。簡單來說,如果電腦的內存有限,由於Windows系統自身也會佔據一定的內存,再加上《英雄聯盟》本身對內存的需求上漲,在2009年時還有些富餘的3.24GB內存到了2023年,就變得有些捉襟見肘了,以至於使用32位Windows系統的玩家,會遇到遊戲運行時突然崩潰的情況。畢竟《英雄聯盟》的內存開銷大、優先級又不高,系統就會優先回收這部分資源。
然而不那麼熟悉PC相關知識的玩家可能並不瞭解這些,此時他們只知道遊戲玩著玩著就沒了,也就只會對拳頭遊戲有抱怨了。為了這部分玩家的體驗,在過去的很長一段時間裡,拳頭遊戲就必須要投入資源來維護32位版本的體驗。可隨著時間的推移,即使PC的換機週期再長,越來越多的玩家陸續完成了PC的更新換代,所在使用32位CPU的電腦也越來越少,因此這才是拳頭遊戲敢於宣佈《英雄聯盟》需要64位Windows才能玩的原因。
事實上,隔壁的《魔獸世界》早在2018年就已宣佈將停止支持32位系統,《DOTA2》也在2021年宣佈移除對32位系統的支持。所以在許多業內人士看來,以《英雄聯盟》放棄32位操作系統為標誌,未來64位系統也勢必將會成為整個遊戲行業唯一的選擇。
SIM卡的痼疾如何破解?iSIM或將成為關鍵
iSIM的商用,或將會成為破局的關鍵。