作为世界上最普及的电脑操作系统,Windows 系统一直以来有一个为人津津乐道的特点 ———— 兼容能力极强。关于这件事,有人最近又找出了新的证据。
不久前,游戏制作人 Kal yoshika 在自己的社交媒体上公布了一些自己发现的秘辛,来讲述微软是如何细致地解决软件兼容性问题。
这篇内容来自著名老牌科技博主 Joel Spolsky 于 2000 年发布过一篇博文,名为“鸡和蛋的问题”,内容讨论了平台与软件之间互相依存关系,其中就提到了为了确保旧软件依然能够在新系统上运行,微软的实行了哪些做法。
Kal 注意到文中举了一个实例:为 Windows 第三代系统(始发行于 1990 年)编写的原始版本的《模拟城市》中存在一个 BUG,会读取一些已经释放掉的内存,不过当时游戏在 上运行没有任何问题。在后来的 Windows95 中,该版本《模拟城市》却因为这个“陈年”BUG 而无法运行。
然后,微软发动了他们在这方面“吹毛求疵”的精神。他们追踪到了这个漏洞,并为该游戏版本专门在 Win95 中添加了特定代码,如果检测到游戏在运行,则不会立即释放内存。
原文中还提到,微软曾投入大量精力在 Win95 上测试过去系统的旧软件,让 32 位系统一样可以运行 16 位的软件。
这样的情况倒并不新鲜。前几年,曾有 Reddit 用户测试过,Win10 在不做任何调整的情况下依然能运行 26 年前发布的 Internet Explorer ,事件一度成为新闻。
在游戏方面亦是如此,每一代 Windows 系统,都有玩家拿出老游戏进行兼容性测试,到如今的 Windows11,许多上世纪老游戏依然能不依靠任何工具完美运行。对此,用户向来好评不断,认为这是 Windows 系统开发足够完善带来的优势和便利。
Kal yoshika 的推文在玩家间流传开来,虽然微软类似的故事已经听过许多,但依然引起了不少网友的兴趣。其中一位网友就展示了这样一个例子:用《最终幻想 7》检测 WinNT 兼容性时,只要加上一个兼容性修复程序“Win95VersionLie”,就可以让游戏“认为”自己在 Win95 上运行。
简单来说,Windows 系统会对一些软件做出兼容性修改(或是后续追加补丁修改),方便其运行,而这些通常被认为是程序本身的“功劳”,比如在打开游戏时禁用 Alt+Tab 切换、阻止某些游戏在播放时访问 CD 驱动等等。
除了再一次感慨 Windows 系统的完备,不少人也表示,这是他们第一次发现原来能好好玩老游戏,也有微软的工作在起作用。
本文来自微信公众号:游戏研究社 (ID:yysaag),作者:铂伊西娅