一台树莓派,复活一段计算机理想主义:Oberon System 3 原生跑起来了

一条很“冷门”的发布,为什么让我眼前一亮
GitHub 上这条发布信息,表面看起来很朴素:开发者 Rochus Keller 宣布,Oberon System 3 终于可以在 Raspberry Pi 3B 上原生运行了。项目提供了现成镜像 oberon-rpi3.img,刷进 SD 卡就能启动;也附带了 Raspberry Pi 启动文件、预编译工具链,以及构建脚本,方便愿意自己从头折腾的人。对普通用户来说,这像是“一个老系统被移植到一个小板子上”的极客新闻;但对熟悉计算机历史的人来说,这更像是一封迟到很多年的回信。
Oberon 不是一个普通的“复古系统”。它背后站着的是 Niklaus Wirth——Pascal 的设计者,也是“程序应该尽可能简单而清晰”这条信念的代表人物之一。Oberon System 3 延续的不是怀旧滤镜,而是一整套对软件复杂度的反思:语言、编译器、操作系统和用户界面尽量一体化,模块边界清晰,整体可理解、可重建。今天我们已经习惯了一个应用动辄拉来上千个依赖、一次系统启动背后有无数层抽象在悄悄运转,所以当你看到这样一套系统在树莓派上“轻巧地活过来”,那种冲击感其实很强。
更有意思的是,Keller 还特意展示了运行现场:原装 Raspberry Pi 显示器,加上一把带三枚鼠标按钮的 ThinkPad TrackPoint 键盘——这甚至呼应了 Oberon 系统对鼠标交互方式的老派要求。这个细节很动人。它不是在做一个“能跑就行”的技术 demo,而是在尽量还原一种完整的使用体验。你几乎能想象到,屏幕亮起的那一刻,某种属于 1980 年代末、1990 年代初的计算机美学,被 ARM 小板子重新点亮了。
从 QEMU 到真机,这一步比看上去更重要
在这次原生发布之前,项目已经在 4 月初交出了一个 MVP 版本:Oberon 的内核、运行时、文件系统,以及显示、USB、数学等平台相关驱动,已经完成了向 32 位 ARM 的移植,并能在 QEMU 10.2 模拟的 Raspberry Pi 2B 环境中完整启动运行。换句话说,这不是一次突发奇想的“硬怼真机”,而是一条非常典型、也非常工程化的路线:先在模拟器里把系统核心打通,再走向真实硬件。
而一旦跨过“真机运行”这道坎,项目性质就变了。模拟器成功,说明设计成立;原生运行,则意味着它进入了真实世界。你需要面对启动链、硬件初始化、显示输出、输入设备适配、存储介质写入这些一点也不浪漫的细节。尤其是在 Raspberry Pi 这种平台上,虽然社区成熟、资料丰富,但“能启动”和“能稳定、完整地跑起来”之间,永远隔着很多脚踩出来的坑。
Keller 这次给出的兼容范围也很务实:镜像预计不仅适用于 Raspberry Pi 3B,还能运行在 Pi 2B 1.2 以上版本以及 Zero 2 上,因为这些型号在硬件架构上基本相通。更关键的是,他解释了自己为什么选这些设备:不是为了跑分,不是为了秀新,而是因为它们还买得到,而且生命周期明确。按照树莓派官方说法,Pi 3B 至少生产到 2028 年,Zero 2 至少到 2030 年。这个判断非常“工程师思维”——如果你想让一个系统真正可持续,先别追最新芯片,先选那些还能长期采购的硬件。
这点其实很有现实意义。很多“复古计算”项目最后都困在一个尴尬局面里:系统做出来了,但硬件只能去二手市场碰运气。于是项目成了展品,而不是平台。Oberon System 3 Native 这次选树莓派,等于把门槛压低到了今天仍然能被普通爱好者触碰的程度。这不是把过去封存,而是把过去重新开放。
它不只是怀旧,更像一堂关于“软件应该长什么样”的公开课
如果把这件事简单归类成“复古操作系统复活”,其实有点低估它了。Oberon 的真正价值,在于它提供了一种和当代主流软件工业截然不同的参照系。
今天的软件世界太依赖复杂性了。桌面系统越来越庞大,Web 应用越来越像操作系统,开发者每天都在和包管理器、框架版本、容器镜像、CI 流水线打交道。复杂并不一定是坏事,现代软件当然解决了海量用户、跨平台兼容、安全更新、云端协同这些旧时代难以想象的问题。但问题在于,我们也在慢慢失去“一个人能够整体理解一套系统”的能力。
Oberon 恰恰站在另一个方向上。它不是靠功能堆出来的,它更像一件经过严格克制的作品:语言简洁、编译链短、系统边界清楚,甚至整个系统都可以由相对有限的代码和文档让人读懂。你很难拿它去和 Linux、Windows 甚至 Haiku 这种现代系统做功能对比,因为那不是它的战场。它更像是一座实验室,或者一把标尺:提醒我们,操作系统不一定非得重到离不开几千名工程师和几十年商业堆叠。
这也是为什么我觉得这条新闻对教育和研究尤其有价值。对操作系统课程、编译原理课程、嵌入式系统教学来说,能在一块便宜、现成、还能买到的 ARM 板子上跑起一个结构清晰的完整系统,意义远大于“又多一个开源项目”。学生不再只是看抽象教材,或者在 x86 老机器和过时镜像之间挣扎,他们可以真正摸到启动流程、编译链、驱动适配和系统服务是怎么拼起来的。这种“可触碰的完整性”,在今天其实很稀缺。
树莓派为什么适合做这件事,以及它给行业的提醒
树莓派这些年有点尴尬。一方面,它仍然是最有代表性的开发板品牌之一;另一方面,它也越来越被卷入“性能比较”和“能不能替代桌面电脑”的讨论里。可实际上,树莓派最迷人的地方,从来不是跑得有多快,而是它作为一个稳定、文档丰富、生态成熟的实验平台,能承载多少计算机教育和系统创新。
Oberon 在 Pi 3B 上原生运行,恰好把树莓派带回了它最好的位置:不是消费电子替代品,也不是低价服务器,而是一块足够真实、又足够温和的计算机实验田。你可以在上面重建一套系统,而不是只在上面装一个现成发行版。说得直白一点,很多人第一次接触树莓派,是为了学编程;但真正让人着迷的,往往是某一天你发现,自己居然可以开始理解“计算机到底是怎么成为计算机的”。
当然,这类项目也有天然局限。Oberon 的生态非常小众,用户界面和交互逻辑对今天的大多数人来说都很陌生,硬件支持范围也远谈不上现代化。你很难指望它成为下一代桌面系统,更不可能撼动 Linux 在 ARM 世界的地位。可它的价值本来就不在替代谁,而在于提供不同的答案。
更值得思考的问题是:当我们谈“软件现代化”时,到底是在追求更强的能力,还是在被动接受越来越高的复杂度成本?如果一个几十年前形成的方法论,今天还能在 ARM 小板子上快速构建、完整启动、顺畅运行,那是不是说明我们有些地方真的走得太重了?这个问题未必有标准答案,但它值得行业反复问自己。
这不是结束,反而像一个新的起点
从项目说明来看,Keller 不只想停留在“给树莓派做个镜像”这一步。他明确提到,现有实现迁移到 Raspberry Pi 4 看起来也是可行的。考虑到 Pi 4 在硬件能力、接口支持和可得性上的优势,如果后续移植继续推进,Oberon System 3 Native 很可能会从一个极客实验,变成一个更成熟的学习与研究平台。
我尤其欣赏这个项目的另一点:它没有把“方便使用”和“尊重技术”对立起来。开发者既提供开箱即用的镜像,也保留从工具链到构建脚本的完整路径。你可以选择最省心的方式,刷卡开机;也可以一路深挖,自己编译整个系统,甚至连工具链都自己重建。这种做法很像老派工程文化:不是只把结果扔给你,而是把过程也完整留在那儿,欢迎后来者走一遍。
在一个越来越由闭源固件、自动更新和黑盒服务构成的时代,这种项目会让人产生一种难得的安心感。它告诉你,计算机仍然可以是可理解的、可重建的,甚至是可以被个人重新掌握的。不是每个人都需要 Oberon,但我真心觉得,今天的软件行业比任何时候都更需要 Oberon 这种存在。它像一块小小的逆流告示牌,提醒我们:计算机科学里那些关于简洁、透明和整体性的理想,从来没有过时,只是被更喧闹的东西盖住了。
如果你手边正好有一块吃灰的 Raspberry Pi 3B,或许这就是一个很好的周末项目。你刷入镜像,接上显示器和键盘,看着一个来自另一种软件哲学的系统启动。那一刻你得到的,未必是生产力,但很可能是久违的理解感。对很多技术人来说,这比“再快 20%”更珍贵。