系统极客一直在努力
专注操作系统及软件使用技能

Linux 内核即将弃用 i486 及早期 586 CPU 支持

Linux

现如今,i486 架构早已成为计算机历史书上的「老古董」,很难再在实际应用中看到它们的身影。要知道,这类 CPU 诞生于 1990 年代,堪称电子时代的「文物」。也许你很难相信,Linux 内核至今仍然保留着对这类「过时架构」的支持。不过,这个「历史遗留问题」终于要画上句号了。

就在不久之前,Linux 内核开发者在「邮件列表」中讨论某项内核功能时,大嘴 😅 Linus Torvalds 在发言结尾处再次直言不讳:

我真心觉得,是时候抛弃对 i486 的支持了。继续在这类问题上浪费开发精力,实在毫无意义。

回应来得非常迅速——几乎第二天,长期参与内核开发的 Ingo Molnar 就发布了一组包含 15 个补丁的 RFC(请求评议),建议将 32 位 x86 系统的「硬件最低要求」提升到必须支持 Time-Stamp Counter(TSC)和 CMPXCHG8B(CX8)指令的处理器。

说人话就是——Linux 内核即将正式告别 486 家族,以及最早期的奔腾级(Pentium)处理器——这些老家伙甚至比 Windows 95 还要古老 🤪。

Ingo Molnar 在补丁集说明中表示,继续为这些几乎「无人问津」的陈旧芯片保留「兼容性补丁」,有时反而带来了额外的维护难题,需要开发者投入时间和精力去修正。

此次补丁推送之后,相关的编译选项将被移除或固定化。具体调整包括:

  • CPU 选项:M486、M486SX、早期 M586、WinChip、Elan 等特殊配置将被移除。
  • 平台支持:诸如 RDC321x 以及 AMD 486 时代的 Elan 等冷门主板也从内核中删去。
  • FPU 仿真:久负盛名的math-emu/浮点单元仿真库,以及no387启动参数将被彻底删除。
  • TSC 与 CX8:这两个特性将默认开启,相关的兼容性分支与备用路径也随之去除。

本次代码清理涉及约 80 个文件,总计删减了大约 14104 行代码,仅新增 38 行。即使不算「浮点单元仿真」相关的部分,内核也瘦身了上千行。对未来的维护者来说,这无疑是一次高效的「技术债清理」。

如果这些补丁顺利合并,这将是自 Linux 3.8 版本于 2012 年废弃 i386 支持以来,首次大规模移除老旧处理器支持。其实,早在 2022 年,开发者们就曾讨论过放弃 i486,但直到 Linus Torvalds 的公开「推动」,这项工作才真正启动。

实际影响

那么,这一变化会带来哪些影响呢?坦率地说,几乎不会有人受到实质性影响。毕竟,最后一批 i486 商业芯片早就于 2007 年停产。如今,除了极少数复古电脑爱好者会用到,现代内核早已与这些古董硬件无缘 👋 。

对于极个别仍有需求的用户来说,可以继续使用长期支持的老版本内核,或者依赖全系统模拟器作为替代方案。


更多详情请查阅 Molnar 的补丁提案,和内核开发邮件列表的相关讨论。

赞(2)
分享到

评论 抢沙发