0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

IBM 豪赌微内核,开发下一代操作系统

mK5P_AItists 来源:YXQ 2019-03-26 11:31 次阅读

IBM早在20世纪90年代豪赌微内核,看好它是操作系统领域的下一大技术,为此不惜耗费数十亿美元,最后却没多少成果。

20世纪90年代早期,我们不知道计算机行业的发展方向,下一代技术是什么样,甚至不知道驱动因素是什么。当时所有的开发人员都知道,服务器机房中或台式计算机机上的操作系统根本不够好;下一代操作系统需要更好,确切地说要好得多。这说起来容易做起来难,但出于某种原因,这个问题让一家公司比其他任何公司更绞尽脑汁,那就是IBM。在过去这十年,这家公司比其他任何公司更着迷于操作系统,可惜到头来没多少成果。问题出在哪里?IBM可能为内核热而疯狂。本文解释了IBM为何迷恋于操作系统,可惜最终一败涂地。

1991年

Linux之父Linus Torvalds在这一年首次宣布开源操作系统Linux。(他说:“纯粹是业余爱好,不会像gnu那样庞大而专业。”现在看来他完全说错了。)后来证明这则宣布对现代计算界而言事关重大,Torvalds构建内核的初期尝试不是那一年的唯一尝试,当时IBM正在这方面开展研究工作。

IBM如何成为90年代操作系统失败的典例?

简单来说,个人计算机革命常见的情节主线就像这样:IBM想为企业界制造台式计算机,使用现成部件来制造,包括商业合作伙伴微软从Rod Brock那里收购的操作系统。

微软随后意识到它与IBM的交易并非独家的,硬件公司搞清楚了如何对早期PC进行逆向工程,苹果做出了微软后来“借鉴”的产品,个人计算机革命就这样蔚然成风。当然,凡是买过Commodore 64、ZX Spectrum或MSX的人都知道,实际情况比这更加复杂,忽略了大部分的历史真相,包括参与早期PC革命的那些公司开发的一些产品。

然而,IBM PC克隆机和软件的崛起使得许多公司在90年代初期沦为了旁观者。

出人意料的是,其中一家公司居然是IBM。

当然,IBM在那个时代可谓顺风顺水:该公司发布了第一批ThinkPad;IBM成了庞然大物,朝多个方向发展,以至于不可能崩塌。但IBM还未来得及慢慢品尝PC的胜果,克隆机制造商们已将这家公司变成商业计算市场中的另一个玩家,而IBM想要做得更好。

现在,如果你稍微精通技术,可能会觉得在这番开场白后,我会谈论OS/2,这个操作系统是微软和IBM决裂的焦点。不过虽说OS/2无疑是故事的主角,但不是唯一的主角。 IBM有比这更宏大的计划。

IBM想要构建各大操作系统都离不开的内核:为此它同时开展两个项目(而不是一个项目),着力开发全新的操作系统技术。

这两个项目都很大胆,但由于与另一家公司关系更密切的某个轶闻:关于蓝色、红色和粉红色卡片的故事,一个项目比另一个项目更被人们所记住。

三套卡片,两种命运

20世纪80年代末苹果完成员工重组后,开了一次异地会议,目的是试图在史蒂夫离开后的时代探索Mac OS的未来,当时乔布斯和沃兹尼亚克已离开了这家公司。

大致来说,卡片是头脑风暴会议的产物:蓝色卡片代表对Mac OS的近期更改,粉红色卡片代表长期更改,而红色卡片代表更为高级的更改(这种情况下,红色好比是更深的粉红色)。

这些卡片最终如同两个团队的行军令:蓝色卡片带来了Mac OS System 4中的新功能,粉红色和红色卡片是长期计划的一部分。遗憾的是,规模较小的粉红团队无法在合理的时间内实现这些功能,成为了“范围蔓延”(scope creep)的受害者,后来做出这个决定:开始全面开发一种新的操作系统,使用一种名为微内核的模式,微内核实际上构建了一个极简的软件层,可以通过它处理所有任务。这项工作最终与Mac OS完全独立开来。

这时候IBM重新发挥了作用。粉红团队的工作持续时间长,但在90年代早期非常先进,而且与IBM计划为其Power Systems系列推出一款新的处理器系列很吻合。

这番合作导致苹果使用相关的PowerPC处理器系列,但它也促成了一家名为Taligent的新公司――苹果的粉红团队和IBM自己的员工将开发对Mac OS来说太过庞大的这款未来操作系统。1991年10月《纽约时报》的新闻标题令观察人士大跌眼镜:“IBM现在是苹果的主要盟友。”

代表那一代人心声的John C. Dvorak在1994年《PC Magazine》杂志上的一篇专栏文章阐述了这家公司的终极计划:“Taligent在这个世界上扮演的角色是创造这样一个环境,我们购买的一款款应用程序都直接做入到操作系统中。由于应用程序是可编程的,你可以组建成自己的定制套件。Taligent也许会终结我们所知道的所有应用程序。”

大胆的想法。然而,这不是IBM在这方面的唯一项目,也不是最大胆的项目。

“它不是明天的最佳操作系统,就是滑铁卢式的惨败。”

John C. Dvorak早就对IBM在大肆宣传的Workplace OS上耗费的心血下了正确的结论,IBM在整个90年代早期都在开发这个基于微内核的项目。

一个微内核一统天下

这边厢Taligent刚起步,那边厢IBM的员工已经在研发自己的微内核,基于卡内基•梅隆大学的MACH微内核方面开展的现有工作。

IBM大力开发的系统叫什么?Workplace OS。使命是什么?想成为处于另外每款操作系统核心的操作系统,就是这样。

由于当时IBM对众多操作系统都有兴趣,除了OS/2和Taligent外,它还在MS-DOS、Windows和操作系统标准POSIX方面拥有名正言顺的话语权,此外还有它自行开发的操作系统OS/400和AIX,当时后者可能最接近操作系统界的核心。随着人们对微内核越来越有兴趣,一方面是由于微内核在可靠性方面有优点,IBM有能力推进其愿景,它之所以试图推进愿景,一方面是由于它觉得让不同的操作系统有一个标准的基础可以省钱。

(然而为了省钱却付出了高昂的代价:加州大学河滨分校的研究人员Brett D. Fleisch和Mark Allan A. Co在1997年的事后分析中指出,IBM花了近20亿美元试图让Workplace OS取得进展,这笔资金约占IBM五年期间总收入的0.6%。)

至少可以说,Workplace OS很大胆――顺便说一下,其在内核方面的野心实际上横扫Taligent自己的微内核,不过并不横扫Taligent项目本身。这个概念立足于所谓的“操作系统大统一理论”(GUTS),实际上旨在围绕常见的操作系统构建标准子系统,以便不同的软件可以使用相同的基本服务,即使它们使用不同的操作系统。

这是个好主意,尽管很大胆,说好听点其使命是让操作系统更高效地工作。但说难听点,IBM似乎试图在PC界重新成为霸主。

就是有一个问题:微内核还没有准备好完成IBM希望它完成的重任。

“没错,Linux是整体式的,我同意微内核更棒。对于一个争议较少的话题,我可能会基本上同意你所说的。从理论上和美观上的角度来看,Linux落于下风。如果GNU内核在去年春天已经准备好,我甚至懒得开始搞我的项目:事实上GNU内核未准备好,现在仍未准备好。就现在可用这点而言,Linux大获全胜。”

Linus Torvalds在1992年发表在Usenet新闻组comp.os.minix上的帖子中这样回应。起因是MINIX的开发者Andrew S. Tanenbaum发帖子称,Linux已经过时,一方面是由于Linux使用了更传统的整体式内核;在这种内核中,操作系统最基本的部分都在内核本身内部加以管理,而不是像使用微内核那样作为服务分离出来。Torvalds和Tanenbaum之间的争论家喻户晓,一方面是由于Torvalds直接受到Tanenbaum在MINIX方面的工作的启发,但他最终选择了拥有性能优势的整体式内核。

OS/2 Warp Connect for PowerPC,使用Workplace OS的第一个也是最后一个操作系统。(图片来源:OS/2 Museum)

为何IBM试图重塑操作系统的计划没有成功?

IBM拥抱的微内核概念并非不切实际的概念。

当时已有足够的证据表明开发一种基于MACH内核的操作系统是值得的――毕竟,NeXTSTEP操作系统(后来成为现代MacOS的基础)是从MACH内核发展起来的。当时相比许多操作系统,NeXTSTEP运行起来稳若磐石。

但IBM的野心加上微内核模式的一些技术弱点最终导致沉船。无论是对外部合作伙伴来说,还是对长期合作伙伴来说,IBM在90年代早期操作系统方面异常大胆的举措(尤其是与苹果的合作)似乎没有多大意义。

1991年《纽约时报》的一篇文章披露了微软与IBM之间围绕OS/2的分歧,时任微软系统软件高级副总裁、后任职CEO的Steve Ballmer当时暗示,操作系统方面两方面试水的做法直接导致这两家公司之间出现鸿沟。

Ballmer说:“我无法告诉你IBM的战略是什么,但我确实知道它没有在与我们合作。这对我们有利,因为IBM的客户也无法理解它。”

当然,结果证明Ballmer是对的,因为IBM在操作系统领域的复杂项目未能风靡世界(当然,OS/2确实有其拥趸。)

微内核的问题涉及两方面,至少IBM的情况是这样:一是,将它整合起来并满足所有这些彼此竞争的需求非常复杂,IBM在这个项目上花费数十亿美元就表明了这一点;二是,微内核在设计上牺牲速度以换取稳定性――IBM很快意识到服务器客户绝对不想要这样,这导致该公司背弃原来的Workplace OS承诺。按照上述加州大学河滨分校的事后分析:

IBM的内部讨论专注于AIX。最后,在1993年Comdex展会上,IBM董事会主席郭士纳宣布微内核不会取代AIX。IBM意识到许多AIX用户不会接受微内核系统引起的性能下降。 IBM还担心微内核对直接在硬件上运行的高性能HP或Sun Unix系统造成竞争障碍。相反,郭士纳告诉AIX客户,如果他们以后感兴趣,可以迁移到Workplace OS。

该计划的AIX部分最终被摈弃,但Workplace OS工作仍在继续,目标是将Workplace OS纳入到基于OS/2的PowerPC工作站。但是该公司的64位PowerPC 620芯片遭到媒体的诟病后,这导致Workplace OS方面的工作一败涂地,仅剩很少见到的OS/2 Warp的PowerPC版本这个硕果。

那么,苹果与IBM的合作项目:Taligent如何呢?这个合作项目面临诸多挑战,其中许多是由文化冲突引起的:IBM出身的高管更严谨,苹果的粉红团队的成员更崇尚自由。合作表面上已经很大胆,实际开展起来很难。

1993年《财富》杂志上的一篇文章特别指出:“技术挑战――开发面向对象的操作系统以便与微软和Next竞争――难度很大。社会工程方面的挑战――面对两种截然相反的经营理念的碰撞,打造一种新的企业文化――难度可能更大。”

而最终,Taligent没有完成任务。它未能发布一款操作系统(尽管IBM施加了巨大压力),只是最终发布了一个运行时系统CommonPoint,该系统取得了一些成功,但并未大获成功。惠普一度加入其中,只是合作关系在1995年底完全破裂,只剩下IBM收拾残局。

2014年,Daring Fireball的抄写员John Gruber写道:“Taligent是导致苹果处于这种绝望的困境中,最后不得不收购NeXT的梦想未能实现的几个惨败之一。”

苹果在20世纪90年代面临着一次又一次的操作系统危机,最终收购NeXT获得了微内核,尽管NeXT基于卡内基•梅隆大学的MACH微内核技术。这根本不是他们花大量时间和资金来开发的微内核。

“OS/2 for PowerPC无疑是有趣的实验,尽管试验失败。无法判断导致这次失败的主要是OS/2 for PowerPC的缺陷还是这是整个PowerPC平台的失败(可能只是远远达不到预期)。”

OS/2 Museum的撰稿人Michal Necasek在回顾IBM针对PowerPC的OS/2版本时这样写道。该版本只推出了一个限制性很强的版本,并没有太多的相应软件。颇具讽刺意味的是,围绕Workplace OS构建的一个对外发布的系统毫无支持可言,尽管“一个内核一统天下”的理念逐渐成为这个项目的核心。

回想起来,这不像是多么意外,但如果我可以钻入时间机器,回到30年前,告诉大家芬兰的一个程序员会打败IBM开发一款“通用”操作系统的梦想,我敢肯定我会被笑话,赶出房间。

但如果你细细分析一下,Linux基本上实现了Workplace OS梦想的每一个要求――它是一个常常用作另外众多操作系统基础的操作系统,其解决方案用于从嵌入式系统智能手机、服务器到电视机的各个地方。当然,虽然Windows和MacOS不使用Linux内核(不过微软越来越喜欢Linux),但它却是谷歌Chrome操作系统的关键要素,这款操作系统对于将另外某家公司的梦想变为现实略知一二。其实,它唯一没有做的就是每当它被使用都会改善IBM的收入,尽管IBM收购Red Hat。

微内核与单内核之争可能根本不会完全消失,一方面是由于它对于计算机科学家或Hacker News网站的评论者来说是颇有价值的学术辩论。当然,两者都不乏成功的例子:MacOS借鉴了这两个概念的要素,而嵌入式QNX在微内核的稳定性方面做得很出色。

另外值得一提的是,谷歌开发中的Fuschia操作系统被认为是安卓和Chrome操作系统的替代者,它基于微内核。所以纯粹的微内核终归会看到出头之日。

在许多人似乎懒得为使用微软Windows之外的操作系统而操心的世界,IBM认为它有机会开发下一代操作系统。

相反,它失败了。失败了两次。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • IBM
    IBM
    +关注

    关注

    3

    文章

    1671

    浏览量

    74272
  • 内核
    +关注

    关注

    3

    文章

    1309

    浏览量

    39846

原文标题:IBM 内核惨败:20 亿美元打水漂 !

文章出处:【微信号:AItists,微信公众号:人工智能学家】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    三星电子已开始与Naver合作开发下一代AI芯片Mach-2

    三星电子与Naver合作开发下一代AI芯片Mach-2,这一举措标志着两家公司在人工智能领域的深度合作进一步加强。
    的头像 发表于 04-18 14:40 330次阅读

    服务器操作系统有几种?

    众所周知,电脑上的切正常运作都不可缺电脑操作系统的使用,网络服务器做为这种出示服务项目的服务器,或许都是不可 或缺的电脑操作系统。常用的网络服务器电脑操作系统有许多,比如:Windo
    发表于 03-29 16:59

    linux属于什么操作系统

    ),是一种免费使用和自由传播的 类UNIX 操作系统,其内核由 林纳斯·本纳第克特·托瓦兹 (Linus Benedict Torvalds)于
    的头像 发表于 11-08 11:01 1734次阅读

    2023云栖大会龙蜥操作系统专场成功举办

    11月1日,2023云栖大会龙蜥操作系统专场在杭州云栖小镇圆满举行。活动围绕全面建设国产操作系统安全生态、解读面向云时代而生的下一代操作系统——龙蜥
    的头像 发表于 11-01 21:55 417次阅读
    2023云栖大会龙蜥<b class='flag-5'>操作系统</b>专场成功举办

    开源操作系统大全

    、Fedora、openSUSE、CentOS、Red Hat 等,移动开 发领域使用最广泛的 Android 也是基于 Linux 内核开发操作系统。 除了 Linux 外,还有很多其它著名的开源
    发表于 10-27 15:13

    Windows CE.net操作系统内核定制

    电子发烧友网站提供《Windows CE.net操作系统内核定制.doc》资料免费下载
    发表于 10-26 11:23 0次下载
    Windows CE.net<b class='flag-5'>操作系统</b>的<b class='flag-5'>内核</b>定制

    嵌入式操作系统IJLC/OSⅡ在通信电源监控中应用

    的单片机开发相比.使用实时嵌入式操作系统。利用其多任务管理,任务间同步与通信等特点,可以在定程度上提高系统的可靠性和实时性。嵌入式实时操作系统
    发表于 09-20 06:46

    汽车操作系统和中间件的关系

    如果嵌入式操作系统(比如FreeRTOS, uCOS或Autosar CP的内核)的开发难度和工作量是1, 那么大型操作系统开发难度和工作
    发表于 07-21 11:16 441次阅读
    汽车<b class='flag-5'>操作系统</b>和中间件的关系

    Skylark Lasers开发下一代量子导航和计时系统

    据麦姆斯咨询报道,Skylark Lasers近日宣布获得“创新英国(Innovate UK)”项目234万英镑资金,以助其开发下一代量子导航和计时系统
    的头像 发表于 07-18 09:01 478次阅读

    FreeRTOS:一个迷你的实时操作系统内核

    ** 1、FreeRTOS** FreeRTOS是一个迷你的实时操作系统内核。作为一个轻量级的操作系统,功能包括:任务管理、时间管理、信号量、消息队列、内存管理、记录功能、软件定时器
    的头像 发表于 06-29 17:15 517次阅读
    FreeRTOS:一个迷你的实时<b class='flag-5'>操作系统</b><b class='flag-5'>内核</b>

    开源共建下一代智能终端操作系统根社区 OpenHarmony携手伙伴聚力前行

    百业的落地成果、繁荣生态与最新技术进展。OpenHarmony项目群工作委员会委员、华为终端BG软件部副总裁柳晓见受邀出席分论坛,向与会嘉宾分享了OpenHarmony携手伙伴打造下一代智能终端操作系统
    的头像 发表于 06-12 17:55 578次阅读
    开源共建<b class='flag-5'>下一代</b>智能终端<b class='flag-5'>操作系统</b>根社区 OpenHarmony携手伙伴聚力前行

    内核线程(2)#操作系统

    操作系统
    学习硬声知识
    发布于 :2023年06月01日 14:13:23

    内核线程(2)#操作系统

    操作系统
    学习硬声知识
    发布于 :2023年05月31日 23:05:42

    内核线程(1)#操作系统

    操作系统
    学习硬声知识
    发布于 :2023年05月31日 23:05:01

    操作系统中抢占式和非抢占式内核的区别

    操作系统一般分为抢占式内核和非抢占式内核,通常RTOS都是抢占式内核。你知道抢占式内核和非抢占式内核
    的头像 发表于 05-29 10:47 780次阅读
    <b class='flag-5'>操作系统</b>中抢占式和非抢占式<b class='flag-5'>内核</b>的区别