番外五:BeOS与OS2——两个差点改写历史的操作系统
在操作系统的历史长河里,Windows、macOS、Linux是最终浮出水面的三座冰山。但水面下,还沉睡着不少曾经被认为“注定改变世界”的系统。它们有的技术超前,有的背靠巨头,有的粉丝狂热。但它们都输了。
这一篇我们讲其中两个:OS/2——IBM和微软的私生子,差点在企业级桌面干掉Windows;BeOS——多媒体天才,差点成为苹果的下一代核心。
这不是“失败者”的故事。它们是“差一点就赢了”的故事。读懂它们,你就明白:操作系统的战争,技术只是入场券,生态才是生死线。
一、OS/2:IBM与微软的“离婚”产物
1. 起源:为了取代DOS的“CP/M杀手”
1985年,IBM和微软坐在一起,商量一件事:DOS的8086实模式已经撑不住了(只能访问1MB内存),我们需要一个真正的32位操作系统,能跑在286/386上,同时兼容DOS程序。他们给这个项目取名OS/2(Operating System/2,第二代操作系统)。
OS/2 1.0(1987年)发布时,微软和IBM还是铁杆盟友。它的卖点:保护模式(可访问16MB内存)、多任务、图形界面(Presentation Manager)。界面比Windows 2.0强,稳定性比DOS好。
但问题来了:OS/2需要2-4MB内存和20MB硬盘,而1987年的典型PC只有640KB内存和10MB硬盘。硬件跟不上,OS/2只能跑在高价PS/2机器上,普通用户买不起。Windows 2.0虽然烂,但它能在老机器上跑。
2. 嫌隙:微软偷偷押注Windows
1989年,微软内部已经认定:OS/2太重、太慢、太企业。比尔·盖茨指示Windows团队做一件事:让Windows 3.0好到可以跳过OS/2。1990年Windows 3.0大卖,微软对OS/2的热情立刻冷却。IBM坚持开发,两家关系破裂。1991年,微软宣布放弃OS/2 3.0(后来变成Windows NT),IBM独立扛旗。
3. OS/2 Warp(1994年):真正的好系统,生不逢时
1994年,IBM发布OS/2 Warp 3.0(名字取自《星际迷航》的曲速引擎)。它有哪些超前特性?
- 真正的32位:Windows 95还是混合16/32位,OS/2 Warp从内核到驱动全32位。
- 抢占式多任务:比Windows 95稳定得多,一个程序崩溃不会蓝屏。
- Workplace Shell:面向对象的桌面——你可以把一个打印机图标拖到文件夹里,表示“打印这个文件夹的所有文件”。这个设计比Windows的资源管理器早了好几年。
- 多线程性能优异:跑数据库、科学计算比Windows快。
- 集成互联网套件:1994年就内置了Web浏览器、FTP、Telnet,“互联网操作系统”的概念比Windows 95早一年。
为什么输?
第一,硬件要求高:需要8MB内存和至少100MB硬盘。1994年主流PC只有4MB内存,内存价格约40美元/MB,升级到8MB要160美元——用户说:“我为什么要花160美元装一个操作系统?Windows 3.11跑得挺好。”
第二,应用生态匮乏:国外有Lotus SmartSuite、Borland C++等专业软件,但游戏几乎没有。用户问“我能在上面玩Doom吗?”——答案是不能。IBM也没能像微软那样说服开发商优先做OS/2版。
第三,IBM不会卖软件:IBM擅长卖大型机和数据库(卖给CIO),不会卖桌面操作系统(卖给个人和中小企业)。OS/2的广告充斥着技术术语,零售渠道混乱。而微软通过OEM预装,让Windows成了开机即用的默认选择。
第四,微软的“绊脚石”:有证据显示,微软在Win32 API中故意做了与OS/2不兼容的设计,还通过OEM授权协议打压OS/2预装。在美国司法部后来的反垄断案中,这些行为成为证据。
OS/2最后撑到了2001年,IBM宣布停止支持。但有一小撮铁杆粉丝一直用到2006年甚至更久。你问他们为什么留恋?他们会说:“OS/2 Warp是我用过的最稳定的操作系统。重启是给别人用的。”
二、BeOS:多媒体时代的“闪电侠”
1. 前苹果高管的复仇
1990年,前苹果高管让-路易·加西(Jean-Louis Gassée)被乔布斯赶出苹果后,创办了Be公司。他的目标:为多媒体从零设计一个操作系统。当时,Windows和Mac做视频编辑都很吃力——因为它们最初是为办公软件设计的,不是为实时音频视频流设计的。
加西挖来了苹果、NeXT和惠普的顶级工程师。他们的设计目标很纯粹:低延迟、高吞吐、原生多处理器。
2. BeOS的技术亮点(至今仍让人怀念)
- 模块化内核:内核很小,文件系统、驱动、网络栈都跑在用户空间,但又不像微内核那样慢。BeOS的内核叫做“多线程实时媒体操作系统”,调度延迟精确到微秒级。
- 原生支持多处理器:1995年的BeBox电脑直接装了两颗PowerPC 603e CPU,BeOS可以自动在两个核心间分配线程。而Windows NT 3.51需要专门的多处理器版本,Mac OS 9根本不支持双核。BeOS在双核机器上跑多媒体编码,速度几乎是单核的两倍。
- 数据库式文件系统(BeFS):你可以给每个文件附加任意属性(比如mp3文件自带“歌手”“专辑”“比特率”),然后按属性查询:“列出所有1995年以前录制的爵士乐。”这个功能二十年后的Windows和macOS才勉强实现(通过元数据索引)。
- 媒体套件:延迟极低,视频编辑软件可以实时预览特效,不卡顿。BeOS曾被演示同时播放几十个视频流,其他系统做不到。
- 优雅的API(BeAPI):C++面向对象,设计整洁,三天上手。很多开发者说“比Win32容易一百倍”。
3. BeOS vs. NeXT:差一步成苹果的“新娘”
1996年,苹果四处搜罗下一代操作系统(Copland已死)。两个候选:加西的BeOS和乔布斯的NeXTSTEP。加西开价约2亿美元(也有说法3亿),乔布斯开价4亿美元,但愿意让苹果收购NeXT,自己回来当顾问。
董事会选择了NeXT。为什么?乔布斯的谈判技巧更强,而且NeXTSTEP已经有一个成熟的开发者社区(WebObjects客户包括Dell、Disney)。BeOS虽然技术性感,但加西的报价和条件不如乔布斯灵活。
如果当年苹果选了BeOS,今天的macOS可能就是BeOS的直系后代——一个极致多媒体、原生多处理器的系统。但历史没有如果。
4. BeOS的生与死
苹果收购失败后,Be公司转向Intel平台,推出BeOS 5(可免费下载)。用户评价:它在奔腾133上跑得比Windows 95在奔腾200上还快,还能同时放CD、剪视频、浏览网页。一群铁杆粉丝成立“BeOS福音派”,到处宣传。
但BeOS始终没能拉到足够的OEM预装。PC厂商说:“我们有Windows了,为什么还要付钱装另一个系统?”应用生态也匮乏:没有Adobe软件,没有游戏,没有Office。用户下载了BeOS,玩几天,发现不能干活,就删了。
2001年,Be公司倒闭,资产被Palm收购(用来开发Palm OS的后继者)。但BeOS的遗产没有消失:Haiku操作系统——一个完全开源的BeOS兼容系统——至今仍在更新,2010年后陆续发布了beta版本,2024年还有新快照。你可以去haiku-os.org下载,体验一下那个“曾经可能的世界”。
三、它们为什么输了?——操作系统的“死亡螺旋”
OS/2和BeOS的故事,表面上原因不同,但底层逻辑惊人地相似。
1. 硬件的“先有鸡还是先有蛋”
OS/2需要8MB内存,1994年很少有人有。BeOS需要双核CPU和高速IDE,1995年也很少人买得起。而Windows可以跑在4MB内存、单核CPU上。用户不会为一个操作系统升级硬件,只会买预装Windows的新电脑。硬件厂商也不会因为一个操作系统改变产品路线。
2. 应用的“死亡螺旋”
用户买操作系统是为了跑软件。软件开发商只在用户多的系统上开发。用户多是因为软件多。这个正反馈循环一旦形成,后来者几乎没有机会打破。OS/2和BeOS都陷入了“用户少→软件少→用户更少”的死亡螺旋。
3. 商业模式的错位
IBM会造硬件,会卖大型机,但不会卖桌面操作系统给个人。Be公司是个小公司,没钱买OEM预装,也没能力说服开发商。而微软既有OEM铁三角(Intel+PC厂商+微软),又有捆绑策略(IE、Office),还能容忍盗版来占领市场。
4. 时机就是一切
OS/2 1.0早了三年(硬件跟不上),OS/2 Warp晚了两年(Windows 95已占先机)。BeOS 1995年问世时Windows 95刚发布,1998年免费版出来时Windows 98已经统治天下。错一步,步步错。
四、它们的遗产——那些“比Windows先有”的特性
虽然OS/2和BeOS死了,但它们的很多设计被后来的系统吸收了。
- 对象导向的桌面:OS/2的Workplace Shell影响了KDE、GNOME,甚至Windows Vista的“文件预览”概念。
- 数据库文件系统:BeFS的元数据查询思想在macOS Spotlight、Windows Search、Linux的Beagle中重现。
- 原生多处理器:BeOS是第一个“平民化”的多核系统。今天每个操作系统都支持多核,但BeOS证明了它的价值。
- 低延迟媒体栈:BeOS的音频/视频架构影响了Linux的JACK和PipeWire。
- 微内核与模块化:BeOS的模块化内核设计(驱动跑用户空间)后来在macOS的I/O Kit和Windows的驱动模型中部分实现。
一句话:OS/2和BeOS没有白死。
五、如果……世界会怎样?
- 如果IBM把OS/2免费给学生,并早期移植更多游戏,也许它能在Windows 95之前占领发烧友市场,然后引导商业软件跟进。但IBM不屑于这么做。
- 如果BeOS在1998年被苹果收购,今天的macOS会有更低的延迟、更漂亮的媒体框架、原生双核优化。但也可能失去NeXTSTEP的Unix基因,变成另一个封闭的、小众的系统。
- 如果两家合作——IBM的投资加上BeOS的技术——会不会诞生一个“企业级多媒体操作系统”?没发生过,但值得想象。
历史不容假设。但了解这些“差点成功”的系统,会让我们更清楚:今天的格局不是必然的,而是一连串选择、失误和运气的结果。
OS/2和BeOS的故事,是操作系统的“冰与火之歌”。它们没有赢,但它们让赢家不得不变得更好。
番外后记:如果你感兴趣,可以在虚拟机里跑一下OS/2 Warp 4.52(网上有镜像),体验那个25年前的“现代”操作系统。至于BeOS,你可以安装Haiku(haiku-os.org),它的界面、文件系统和API几乎完全复刻了BeOS。你会惊讶于一个1990年代的系统,在今天看来仍然流畅且设计周到。那可能就是另一个平行宇宙中,你用了几十年的操作系统。