IBM i:一个没有文件概念的操作系统

IBM i (OS/400) the Database Operating System

今天我想带大家认识一个最迷人的操作系统:IBM i(OS/400)。它既不是 Unix,也不是 Linux 或 Windows,而是早在几十年前就实现了抽象与虚拟化的先驱。在这个系统中,根本没有“文件”的概念,一切皆是对象,磁盘与内存融合为单一地址空间。其核心 Db2 for i 数据库直接嵌入内核,而非独立应用,这使其在 OLTP 领域长期占据主导地位。凭借 TIMI 抽象层,1990 年编写的程序至今无需重新编译即可在最新 POWER11 处理器上运行。尽管它因绑定昂贵的 IBM Power 硬件而难以被个人开发者接触,但其独特的架构设计、对象化安全机制以及 Single Level Storage 理念,依然展示了系统工程的极致智慧。

如果你正在寻找证据,证明真正的工程不需要流行词汇就能让你惊叹,那么请继续读下去。
  1. rbanffy

    这篇文章让我觉得作者对某些机制的理解还不够深入。据我所记,TIMI 类似于 Java(或 Smalltalk)的字节码。我不确定它是在安装时还是模块加载时被翻译成原生指令,但原生代码会被保留,这样就不需要再次编译。这就像 JVM 在加载 .class 文件时保存了一个 .nativeclass 文件(比 Python 的做法低一个层级,Python 是将 .py 文件转为 .pyc 或 .pyo)。我们在 Smalltalk 和 Lisp 中见过的“扁平对象空间”概念(即“系统映像”),后来在 Newton、Palm,以及据我所记在 Taligent 的 Pink 中又以某种形式重现了。遗憾的是,IBM i 的文档非常匮乏(与其大哥 Z 系列形成鲜明对比),以至于目前不存在能够启动 OS/400 映像的模拟器。

    不过,这种方法也并非完美——从头构建一个 Smalltalk 映像真的很难。我推测,在没有运行中的 IBM i 系统的情况下制作 IBM i 映像,挑战也会同样巨大。

  2. theandrewbailey

    > 这里我们触及了该平台既是最大优势又是最沉重负担的一点。由于与专用且昂贵的硬件深度集成,IBM i 在不太积极的意义上成了一种“精英”系统。普通凡人、计算机科学学生或爱好者根本没有机会在自己舒适的家中“触碰”到这个系统。你无法从互联网下载 ISO 映像,无法在 VirtualBox 虚拟机中安装它,也无法在笔记本电脑上运行它。入门门槛被设定在 IBM Power 服务器的价格水平,这实际上切断了“新鲜血液”的供给,使得关于这种迷人架构的知识几乎像行会秘传一样,只在大型组织内部代代相传。

    我在大学时修过一门关于这方面的课程。我曾以为能亲眼看看计算如何脱离常规的 Windows/Unix/Linux 风格环境,转而使用一种设计截然不同的系统,会让我大开眼界。讲师的办公室里就有一台这样的桌面机。我记得曾通过终端模拟器登录到一个官方的 IBM 教育系统来完成作业。

    不幸的是,讲师在课程开始约一个月后就离开了,我转而修了一门涉及 UML 建模以编程 Lego Mindstorm 机器人的课程。亲手操作 Mindstorms 固然很酷,但我常想,如果我完成了另一门课程,本可以学到些什么。

  3. rwmj

    我建议大家阅读 Frank G. Soltis 所著的《Inside the AS400》,因为该操作系统背后的概念相当奇特,与我见过的任何其他东西都不同。遗憾的是,纸质版价格相当昂贵,但在 Bittorrent 上流传着一份高质量的 PDF 版本。

同日更多故事

2026-08-02