Windows 95曾发布专门的补丁 只是为了修复《模拟城市》中的兼容问题

在PC上很容易把向后兼容视为理所当然,以至于我们甚至很少使用"向后兼容"这个短语。大多数老游戏都能简单地运行,而对于其他的东西,通常有一个内置于Windows或DOSBox的兼容模式来让它运行。这并不是偶然发生的,正如一位前微软程序员的旧博文所解释的那样。

例如,当微软希望用户切换到Windows95时,他们甚至未操作系统添加了特定的代码来寻找《模拟城市》,如果它正在运行,就改变内存分配的方式,这样游戏就不会崩溃。

这篇博文是JoelSpolsky在2000年5月写的,但最近被播客和游戏制作人KalYoshika在Twitter上重新发现了。Spolsky写的是"鸡和蛋的问题",即让用户采用没有大量软件的平台,以及让软件制造商为没有大量用户的平台生产软件。他说,微软的解决方案是确保旧的软件能够运行--包括《模拟城市》。

"Windows95?没问题。漂亮的新32位API,但它仍然可以完美地运行旧的16位软件。微软对此非常着迷,花了一大笔钱来测试他们能找到的每一个使用Windows95的旧程序,"Spolsky写道。"乔恩·罗斯(JonRoss)为编写了《模拟城市》的原始版本,他告诉我,他不小心在《模拟城市》中留下了一个错误,即他读取了刚刚释放的内存。是的。它在上工作得很好,因为内存从来没出现过泄露。?

"惊人的是,在Windows95的测试版本中,《模拟城市》在测试中并不正常工作。微软追踪到了这个错误,并在Windows95中加入了特定的代码以在计算机中寻找《模拟城市》。如果它发现《模拟城市》正在运行,它就会以一种特殊的模式运行内存分配器,不会立即释放内存。这就是那种对向后兼容性的执着,使人们愿意升级到Windows95"。

诸如此类的例子并不鲜见,例如,初代版本《最终幻想7》如果运行在WindowsNT而不是Windows95上就会崩溃,所以Windows会对游戏谎报其实际运行的操作系统。

[免责声明]本文来源于网络,不代表本站立场,如转载内容涉及版权等问题,请联系我们会予以删除相关文章,保证您的权利。

上一篇 一款设计精良的模型飞机模拟游戏
下一篇 史无前例!腾讯55款单机游戏免费玩