孩子想开发个RPG游戏,让我找个游戏参考,我想起了多年前玩儿过的《仙剑奇侠传》。
到Steam上找了一个,下载运行,复古的、熟悉的界面立刻出现在眼前:
(资料图片)
《仙剑奇侠传》Windows版是1997年上市的,快30年了,它依然可以顺畅地运行在现在的Window 11之上。
这也不算啥,如果你手头有20多年前发布的Office 2000:
也可以安装在Windows 11上试试,照样能用:
除此之外,还有1995年发布著名软件Total Commander 32位,可以从Windows 95 一路运行到 Windows 11。
1998年发布的开发神器 Visual Basic 6,现在微软还在给它兜底, VB 6写出的老程序,还可以运行在Windows 11上!
2002 年经典的 Photoshop 7 ,Windows 11上还能跑:
2003 年发布的 Winamp 2.91 在 Windows 11 上秒开,音效均衡器、EQ 调节以及经典 90 年代像素皮肤完美呈现,CPU 占用率接近 0%。
这向后兼容性可以说是无敌了!
怪不得Reddit上网友感慨道:Windows是人类历史上最伟大的软件。
01
微软的兼容性绝招
Windows实现这样的兼容性,可不是一件简单的事情,微软有两个绝招:
1.为了兼容,连Bug都不放过!
有个著名的游戏叫《模拟城市》,在Windows 3.x时代有个叫 Jon Ross 的程序员无意间写错了一段代码,导致游戏在释放了一段内存以后,依然去读取它。
这本来会导致游戏立刻崩溃,但是Windows 3.x 系统的内存管理比较简单,内存被释放后,里面的数据并不会立刻被清除或被其他程序覆盖,所以虽然代码写错了,但依然能歪打正着地正常运行。
等到Windows 95发布的时候,引入了更现代、更严格的内存管理机制,《模拟城市》一运行就崩溃。
微软该怎么办呢?
最直接的办法就是拿起电话,给《模拟城市》的开发商 Maxis 打电话,让他们现在、立刻、马上修复漏洞。
但是游戏已经通过光盘卖出去了,当时又没有网络更新,即使 Maxis 修复了 Bug 也无法解决所有的问题。
于是微软决定:保留这个Bug,直接修改 Windows 95 的代码来兼容它。
当 Windows 95 检测到《模拟城市》开始运行的时候,就自动切换到一个特殊的内存分配模式,故意延迟释放该游戏用过的内存,从而让《模拟城市》顺利运行。
还有一个著名的案例,在Windows 2000 时代,当时的 DLL 搜索规则比较简单,当前工作目录在搜索 DLL 时处于比较靠前的位置,很容易造成 DLL 劫持。
后来 Windows 改进了 DLL 搜索机制,但是许多老程序(甚至包括某些商业巨头的核心软件)在设计时,“意外”地依赖了 Windows 2000 时代不安全的搜索规则。当它们在新的 Windows 系统上运行时,因为找不到特定位置的 DLL 直接崩溃。
微软的解决方案是:推出 Windows 2000 兼容模式。
当程序开启该模式时,会还原 Windows 2000 时代的 DLL 加载机制,甚至恢复老旧版本堆分配器(Heap Allocator),相当于把已经修复的Bug重新打开了。
你看,Windows 的向后兼容,连前任系统的缺陷和漏洞一并当成珍贵的遗产继承了下来。
2.程序不配合?那就想办法骗过它!
《最终幻想 7》是PlayStation 平台上的游戏,移植到 PC 平台时做得非常糟糕,在运行时甚至会检查当前操作系统是不是Windows 95。
当大量用户升级到 Windows 2000、Windows XP时,游戏出现了各个问题:第一次战斗崩溃,CG和音频异常,陆行鸟比赛时必崩。
微软的做法很简单,给《最终幻想7》配了一个叫做“Win95VersionLie”的兼容性修复,专门对这个游戏撒谎,让它“以为”自己运行在Windows 95之上。
在 Windows XP 及更早时期,大量桌面用户和应用程序运行在管理员权限下,软件可以肆无忌惮地在 C:\Program Files\MyApp\ 下创建、修改配置文件或数据库。
到了 Windows Vista,微软引入了 UAC,彻底收紧了系统盘的写入权限,非管理员权限程序是无法直接访问的。
但是如果微软严格执行这套安全规则,数以百万计写死硬编码路径的老软件会在 Vista 上瞬间报废。
微软的做法依然是“欺骗”,假装允许访问这些系统盘,但实际上写到别的目录。
02
干脆整个框架吧!
兼容性问题越来越多,也总不能一直往 Windows 核心源码中加if else (特例)吧?
于是从Windows XP 开始,微软干脆搞了一个叫做应用程序兼容性框架的东西。
这套框架会在老程序和 Windows 之间插入一些叫 Shim 的“垫片”,必要时修改 API 的返回值、文件路径、注册表、内存管理等行为;而 SDB,则负责记录“哪个程序需要套哪些垫片”。
如果你打开C:\Windows\AppPatch,能看到一系列.sdb文件,这些都是兼容性数据库,用于记录“哪个程序需要哪些Shim”。
比如 Windows 启动《最终幻想 7》时, 从SDB发现它需要修改,找到 Win95VersionLie 这个 Shim 给它垫上,这样就可以拦截程序的系统调用。
当程序问“你是不是 Windows 95?”时,Shim 负责回答:“是。”(虽然底层的操作系统可能根本就不是Windows 95),《最终幻想 7》就正确运行了。
有意思的是,SDB不仅是微软自己用,它还提供了 Compatibility Administrator 等工具,可以让企业自己创建兼容性数据库。
03
说实话,微软的各种做法有时候真的挺匪夷所思。
一个“浓眉大眼”的现代操作系统,竟然要在底层打各种补丁、做各种“障眼法”,甚至故意恢复一些旧行为,只为了让几十年前的软件还能正常跑。
这和 iOS/Android 的风格形成了鲜明的对比:平台不断往前走,旧的硬件、API 和软件该淘汰就淘汰,开发者跟着我,赶紧升级!
微软的思路感觉就是给自己挖坑 !
但微软也很清楚,用户升级操作系统,不代表他们愿意把过去几十年的软件资产全部扔掉。
一家公司可能还在用十几年前开发的业务系统,一家工厂可能依赖着一套没人敢轻易修改的控制软件。对他们来说,能不能运行,远比代码是否优雅重要。
Windows 的向后兼容,某种程度上就是在替用户承担历史的成本,这是它的责任,也是它在桌面市场的核心护城河。
免责声明:本网站所有信息,并不代表本站赞同其观点和对其真实性负责,投资者据此操作,风险请自担。
曼联名宿狂喷!头号水货必须拿下!卡里克弃用他才能保住帅位,热刺队,内维尔,蒂莱曼斯,曼联主场,迈克尔·卡里克
CFi.CN讯: 10月13日将是1只有送转方案的个股的除权,可关注填权行情,这些个股包括:德明利(001309):10股转增4.0股,主营行业包括:存储业务
【指数特征】上证指数报3797.24点,跌0.43%;上午缩量分化、午后高位题材回落的一天:仅传媒主线逆势扩容。两市成交额:合计约1.54万亿,较昨日
10月13日,生意社阔叶木浆基准价为4650.00元/吨,与本月初(4600.00元/吨)相比,上涨了1.09%。阔叶木浆年度统计(2025-10-13--2026-10-13,元/吨)当日价4650
“人类历史上最伟大的软件:Windows!”,微软,dll,系统盘,新系统,应用程序,操作系统,知名企业,windows
郑钦文夺冠不到24小时,荒唐的事上演,官方表态,李娜被翻旧账,李娜,网球,金花,大满贯,郑钦文,绿夹克
作为“电子产品之母”,PCB是AI(人工智能)服务器、数据中心、通信硬件的重要载体。今年前三季度多家行业上市公司业绩同比预增,反映出算力硬件需求持续增长,相关企业产能释放和产品结构升级成效逐步显现。
证券之星消息,10月12日,景顺长城中证全指证券公司ETF基金(159008)最新份额为1.36亿份,较前一交易日增加了100.0万份。
米体:米兰前6轮已丢3个定位球,注意力不集中让阿莫林不满,曼联,米体,米兰,阿莫林,萨索罗,切尔西队,尤文图斯队
专访是旧闻!CNN葡萄牙炒冷饭,C罗历史最佳言论并非新发,c罗,足球,梅罗,旧闻,葡萄牙,阿吉雷
皇马前锋恩德里克出场时间有限,维拉有意一月租借,巴西,皇马,恩德里克,ac米兰,米兰德比,皇家马德里,阿斯顿维拉队
天眼查App显示,近日,白沟新城谬森箱包厂(个体工商户)成立,法定代表人为陈子规,注册资本1万人民币,经营范围为一般项目:箱包制造;箱包销售;皮革制品销售;皮革
天眼查App显示,近日,肃宁县庞大皮草行(个体工商户)成立,法定代表人为庞金鹿,注册资本10万人民币,经营范围为一般项目:农副产品销售(除依法须经批准的项目外,
天眼查App显示,近日,沧州硕宏包装科技有限公司成立,法定代表人为韩超,注册资本50万人民币,经营范围为一般项目:技术服务、技术开发、技术咨询、技术交流、技术转
穆西亚拉在塞贝纳训练基地进行个人训练,包含跑步和有球部分,跑步,拜仁,肌肉,个人训练,塞贝纳训练基地,贾马尔·穆西亚拉
腾盛博药-B(02137.HK)发布公告,该公司于2026年10月12日斥资9.12万港元回购10.7万股股份,每股回购价格为0.84-0.865港元。
证券之星消息,崧盛股份(301002)10月12日在投资者关系平台上答复投资者关心的问题。

起重机作为一种高度复杂的运输系统,其运行涉及多个运动维度的精确协调。在典型的起重机操作中,起升机构负责垂直方向的载荷移动,大车机构实现水平方向的整体位移,而小车机构则完成精确的定位调整。这些运动往往需要同时或交替进行,这就要求驱动系统中的减速机必须具备出色的负载能力和精准的控制性能。针对起重机系统的特殊需求,诺...

乡村振兴有效衔接考核评估反馈问题整改工作开展以来,海东市乐都区把整

村民送水给施工人员。收边。运输混凝土。施工现场。施工现场。农村道路