打开网易新闻 查看精彩图片

1989年发布的处理器,到2025年还在被维护。这个数字本身就像个冷笑话——比Windows 95还老6年,比USB标准早7年,比Google创始人上小学还早。

Linux社区终于决定,不再给这个"活化石"续命了。

一个补丁,终结37年长跑

一个补丁,终结37年长跑

开发者Ingo Molnar提交的新补丁标题很直白:"x86/cpu: Remove M486/M486SX/ELAN support"。三个配置项——CONFIG_M486SX、CONFIG_M486、CONFIG_ELAN——将被直接删除。

这不是技术债的渐进式清理,是连根拔起。Molnar在变更日志里引用了Linus的原话:

「我真的觉得是时候放弃i486支持了。没有任何真实理由,值得任何人为这种问题浪费哪怕一秒钟的开发精力。」

Linus说话向来不留情面,但这次的对象是一代传奇。i486是Intel最后一代以数字命名的处理器,1993年才被Pentium取代。它的设计影响了后续20年的x86架构,包括你现在用的电脑。

为什么现在?为什么是这个?

为什么现在?为什么是这个?

Linux对老硬件的宽容是出了名的。2024年还有人在树莓派Zero上跑完整桌面环境,2008年的MacBook能装最新Ubuntu,甚至90年代的PowerPC机器都有社区维护的发行版。

但486不一样。维护它的成本不是"占用存储空间"这种小事,是实实在在的工程负担。

Molnar的补丁说明里写得很具体:x86-32架构里有一堆"复杂的硬件模拟设施",专门用来兼容这些古董CPU。这些兼容层不只是躺着占地方——它们会出bug,会引入回归问题,会有人花时间调试。

换句话说,每次有人修一个现代处理器的bug,都可能被这些486专用的兼容代码绊一脚。

更尴尬的是用户基数。Linux内核邮件列表里没人敢给确切数字,但Phoronix的跟踪报道提到一个参考:某嵌入式厂商在2023年最后一次批量采购486兼容板卡,数量是"数百片"。

作为对比,Linux内核每天收到的补丁数以千计,活跃贡献者超过5000人。

谁还在用486?

谁还在用486?

这个问题有个反直觉的答案:工业控制领域。

工厂里的PLC(可编程逻辑控制器)、老式的医疗设备、某些交通信号系统——这些场景对"够用"的定义和消费市场完全不同。486的功耗低、发热小、抗干扰能力强,而且30年前的设计早就被验证透了。

有个真实的案例:2019年某德国机床厂商还在出货搭载486SX的控制系统,理由是"客户要求20年备件保障"。他们的逻辑很简单——换平台要重新认证,认证费用比多囤点老芯片贵十倍。

但这些用户大概率不会升级到Linux 7.1。他们停留在内核3.x甚至2.6.x的版本,由专门的嵌入式发行版维护,和主线开发早已分道扬镳。

真正受影响的是另一群人:复古计算爱好者。

这个圈子比想象中活跃。有人收藏原版IBM PC,有人折腾90年代的笔记本电脑,还有人在486上跑现代软件"just for fun"。对他们来说,Linux曾是最后的避风港——BSD早几年就放弃了486,Windows XP都需要Pentium级别。

现在这扇门正在关闭。

这不是第一次,也不会是最后一次

这不是第一次,也不会是最后一次

Linux内核的架构支持清理有固定节奏。2022年移除了Itanium(IA-64),2023年砍掉了a.out格式支持,2024年有开发者提议废弃32位x86的某些子架构。

486的特殊性在于它的"传奇地位"。它是Intel第一款内置数学协处理器的消费级芯片(486DX),第一款支持多处理器的x86(486DX2),第一款让"兼容机"概念普及的处理器。

但传奇不能当饭吃。内核维护者Arnd Bergmann几年前做过统计:x86架构的代码复杂度在过去十年里增长了340%,而专门服务"古董硬件"的代码占比从12%降到了3%以下。

这3%里,486相关的部分又是最"昂贵"的——它牵扯到内存管理、中断处理、浮点模拟等底层机制,不是简单删掉几行就能解决的。

Linus的表态很关键。他很少对具体技术决策公开站队,但这次主动放话,说明社区共识已经形成。补丁进入7.1合并窗口的概率,用内核开发者的话说,"接近确定性事件"。

剩下的选项

剩下的选项

对于真的还在用486的人,出路不算少,只是都不完美。

长期支持(LTS)发行版能撑几年。Debian 11的内核版本是5.10,官方支持到2026年;某些嵌入式定制版会维护得更久。但"久"是相对的——内核6.x系列已经默认关闭486支持,只是没彻底删除代码。

更现实的方案是冻结系统。工业场景本来就这么干:一套控制软件跑二十年,期间只打安全补丁,不碰功能更新。Linux的开放性让这种"时间胶囊"策略成为可能,这是商业操作系统给不了的自由。

最硬核的选项是fork内核。486的代码量不算夸张,有能力的社区完全可以维护一个"486-linux"分支。但问题在于人——谁会为了几百个潜在用户,持续跟进主线几万个commit的变动?

复古计算圈已经在讨论这个。某个论坛帖子里的高赞回复很扎心:"我们连给Gopher协议写客户端的人都找不齐,还维护内核?"

技术债务的终极形态,不是代码腐烂,是没人记得为什么写这些代码。

486支持的最后一批活跃维护者,大多在2010年代初期就转向了其他架构。现在的内核开发者里,亲手调试过486实模式启动的人屈指可数。文档里的某些注释,写的还是"FIXME: verify on actual hardware"——而那张"actual hardware"可能早就被当电子垃圾处理了。

Molnar的补丁里有个细节:删除的代码中包含对Cyrix 486兼容芯片的特殊处理。Cyrix公司在2002年被VIA收购,2010年代彻底消失。这段代码的最后一个已知测试者,邮件地址已经 bounce 了十五年。

这就是开源维护的残酷面。没有商业合同的约束,没有SLA的倒逼,纯粹靠"有人在乎"驱动的项目,最终会收敛到"在乎的人足够多"的子集上。

486的退场,某种程度上是Linux成熟的标志——它从"什么都能跑"的极客玩具,变成了"有所为有所不为"的工程产品。这个转变花了30年,比486本身的寿命还短。

最后一个问题留给读者:你手里最老的、还在通电运行的电子设备是哪一年的?它跑的是什么系统?