Windows 95曾發佈專門的補丁 隻是為修復《模擬城市》中的兼容問題


在PC上很容易把向後兼容視為理所當然,以至於我們甚至很少使用"向後兼容"這個短語。大多數老遊戲都能簡單地運行,而對於其他的東西,通常有一個內置於Windows或DOSBox的兼容模式來讓它運行。這並不是偶然發生的,正如一位前微軟程序員的舊博文所解釋的那樣。

simcity-1_xU684Tc.jpg

例如,當微軟希望用戶切換到Windows 95時,他們甚至未操作系統添加特定的代碼來尋找《模擬城市》,如果它正在運行,就改變內存分配的方式,這樣遊戲就不會崩潰。

這篇博文是Joel Spolsky在2000年5月寫的,但最近被播客和遊戲制作人Kal Yoshika在Twitter上重新發現。Spolsky寫的是"雞和蛋的問題",即讓用戶采用沒有大量軟件的平臺,以及讓軟件制造商為沒有大量用戶的平臺生產軟件。他說,微軟的解決方案是確保舊的軟件能夠運行--包括《模擬城市》。

"Windows 95?沒問題。漂亮的新32位API,但它仍然可以完美地運行舊的16位軟件。微軟對此非常著迷,花一大筆錢來測試他們能找到的每一個使用Windows 95的舊程序,"Spolsky寫道。"喬恩·羅斯(Jon Ross)為Windows 3.x編寫《模擬城市》的原始版本,他告訴我,他不小心在《模擬城市》中留下一個錯誤,即他讀取剛剛釋放的內存。是的。它在Windows 3.x上工作得很好,因為內存從來沒出現過泄露。?

"驚人的是,在Windows 95的測試版本中,《模擬城市》在測試中並不正常工作。微軟追蹤到這個錯誤,並在Windows 95中加入特定的代碼以在計算機中尋找《模擬城市》。如果它發現《模擬城市》正在運行,它就會以一種特殊的模式運行內存分配器,不會立即釋放內存。這就是那種對向後兼容性的執著,使人們願意升級到Windows 95"。

諸如此類的例子並不鮮見,例如,初代版本《最終幻想7》如果運行在Windows NT而不是Windows 95上就會崩潰,所以Windows會對遊戲謊報其實際運行的操作系統。


相關推薦

2022-09-03

無論你運行的是Windows、macOS還是Linux發行版,如果你是Chrome用戶,現在有一個極其重要的更新需要安裝。Google已經為所有三個平臺發佈Chrome105.0.5195.102,以解決這個被追蹤為CVE-2022-3075的漏洞。這個安全漏洞與Mojo運行庫中的數據驗

2022-06-24

不少Windows11的用戶都曾或多或少的意識到過:微軟自傢的.NET框架和這套新的系統,似乎有一些不那麼兼容。在此前,微軟就以為.NET的兼容性問題,專門對Windows11進行過更新維護,但現在,又有大量使用VisualStudio2022用戶反饋,稱

2022-07-13

在7月的補丁星期二活動日,Windows11通過WindowsUpdate可以獲得KB5015814累積更新,安裝後版本號升至Build22000.795。本次更新在引入諸多常規修復和安全更新,並向更多用戶開放SearchHighlights之外,還對PowerShell進行重大調整。本次更新修

2022-09-22

今年7月微軟為交錯發佈,向Beta頻道的WindowsInsider項目成員發佈2個Windows11預覽版。今天微軟再次交錯發佈Build22621.601和Build22622.601兩個新版本,以進一步測試功能和穩定性。在更新日志中,微軟寫道:Windows Insider 成員,你好!今

2022-08-10

在本月的補丁星期二活動日中,Windows10系統獲得KB5016616更新。本次更新為安全更新,因此修復大量的安全問題。該補丁目前已經通過WindowsUpdate方式推出,用戶也可以根據本文下方鏈接下載離線包進行手動部署。Windows 10 KB5016616

2022-07-14

在昨日的補丁星期二活動日中,微軟面向Windows11設備發佈累積更新KB5015814,向更多用戶開放WindowsSearchHighlights功能之外,還修復諸多BUG並進行諸多改進。不過用戶反饋安裝該更新中出現諸如“0x8000ffff”、“0x8007007e”和“0x80073701

2024-04-15

上個月,我們報道一個有趣的實驗,該實驗證明Windows在Office的幫助下具有出色的向後兼容性。YouTuberMattKC也做過類似的實驗,但規模要大得多,他著手復活28年前發佈的Windows95的"數千個應用程序"。這主要是在

2022-09-14

在本月的補丁星期二活動中,微軟發佈適用於Windows11系統的累積更新KB5017328。本次更新修復當用戶登錄/登出微軟賬號之後,網頁對話框並不會顯示的情況。這個問題自KB5016691更新開始就已經存在。在安裝本次更新之後,系統版

2022-10-22

版幾天前發佈時帶來大量的新功能。其中一項是專門針對Windows用戶的,他們現在可以將私密瀏覽窗口固定在任務欄上,這一模式還配備更精美的用戶界面,特別是為"增加隱私感",正如Mozilla自己解釋的那樣。此外,Firefox

2022-09-14

期二之前在 Microsoft Edge 中修復的 16 個漏洞。有關非安全 Windows 更新的信息,您可以閱讀今天的 Windows 10 KB5017308、 KB5017315 updates 和 Windows 11 KB5017328 update.本月的補丁星期二修復兩個公開披露的零日漏洞,其中一個在攻擊中被積極

2022-10-11

在今天的"Windows1122H2這次搞壞什麼"的節目中,下一個登場的是WindowsHello認證系統。根據微軟的最新公告,用戶在使用WindowsHello登錄時可能會遇到問題,如人臉識別、指紋或普通PIN碼驗證過程中。微軟表示,這

2022-11-01

微軟的Windows1122H2(2022更新)發佈後,AMD和微軟都可能都需要花更多時間為Ryzen7000CPU優化操作系統。據報道,升級到Windows11後,遊戲在某些AMD配置上的運行速度會比之前差。報道稱,Windows 11的一個潛在錯誤和AMD硬件的兼容性問題

2022-06-25

019又讓那些離開舊瀏覽器的用戶失望瞭。微軟更新瞭官方Windows Health Dashboard文檔,通知瞭關於修復Windows 11和10中一個惱人錯誤。據該公司稱,KB5014019引入瞭一個導致Microsoft Edge中的IE標簽被卡住的錯誤。安裝KB5014019及以後的更新

2023-05-16

微軟今天發佈Windows1122H2版本的最新ISO文件,新的光盤鏡像將Moment2和Moment1的功能更新帶給用戶。這些ISO文件基於上周發佈的本月的補丁星期二(KB5026372,構建22621.1702)。這個周二補丁的發佈,修復一個關鍵的安全啟動引導工具