作为世界上最流行的电脑操作系统,Windows一直有一个让人津津乐道的特点:——高度兼容。最近有人发现了关于这件事的新证据。

  不久前,游戏制作人Kal yoshika在其社交媒体上公布了一些他发现的秘密,详细讲述了微软是如何解决软件兼容性问题的。

在电脑上玩模拟城市(为了玩家能玩模拟城市)(1)

  本文来自知名老牌科技博主Joel Spolsky在2000年发表的一篇博文,名为《鸡和蛋的问题》。内容讨论了平台和软件之间的相互依赖关系,其中提到了微软为确保旧软件仍能在新系统上运行所做的工作。

  Kal注意到了本文中的一个例子:为第三代Windows系统(1990年首次发布)编写的《模拟城市》原始版本中有一个BUG,它会读取一些已经释放的内存。不过当时游戏运行在Windows3.x上没有任何问题。后来在Windows95中,这个版本《模拟城市》因为这个“老化”的BUG而无法运行。

  然后,微软推出了他们在这方面的“找茬”精神。他们跟踪了这个漏洞,并在Win95中为这个游戏版本添加了特定的代码。如果检测到游戏正在运行,它不会立即释放内存。

  原文中还提到,微软投入了大量精力在Win95上测试过去系统的老软件,让32位系统也能运行16位软件。

  这种情况并不新鲜。几年前,Reddit用户测试过。Win10仍然可以运行26年前发布的Internet Explorer 2.0,无需任何调整。该事件一度成为新闻。

  游戏也是如此。在每一代的Window11系统中,玩家都会拿出旧游戏进行兼容性测试。到现在,很多上个世纪的老游戏在没有任何工具的情况下依然可以完美运行。对此,用户一直好评如潮,认为这是窗口系统完善发展带来的优势和便利。

在电脑上玩模拟城市(为了玩家能玩模拟城市)(2)

  Kal yoshika的推文在玩家中传播。虽然微软类似的故事已经听过很多次,但还是引起了很多网友的兴趣。其中一位网友展示了这样一个例子:在测试WinNT与《最终幻想7》的兼容性时,通过添加一个兼容性修复“Win95VersionLie”,游戏可以“认为”自己运行在Win95上。

  简单来说,Windows系统会对一些软件进行兼容性修改(或者后续的补丁修改)以方便其运行,而这些通常被认为是程序本身的“优点”,比如打开游戏时禁用Alt Tab切换、玩游戏时阻止某些游戏访问光驱等等。除了再次感受到Windows系统的完美,很多人也表示这是第一次发现可以享受老游戏,也是微软的工作在起作用。

,