DEC
第二章的很大部分内容都是在说数字设备公司(DEC),这是因为在普林斯顿大学做出成果前,Unix只能运行在DEC生产的机器上:PDP系列(特别是PDP-11)和后来的VAX系列。但是DEC公司自身是不提供官方的Unix支持的,他们有自己的系统:FOCAL-11,VMS,TENEX。本质上DEC在前20年都有一种被Armando Stettner称为NIH的文化——这里就不再细说了。上Unix是贝尔实验室产品的事实足够取消DEC的工程师们。
但是在1970年后期,有一个不断增长的认识是Unix没有离去,硬件工程师们也意识到乐于助人的Unix用户非常重要。Ritchie和Thompson曾经去DEC访问过几次。现在DEC设置了一个Unix支持组——“我们是同一类实验室”。Armando Stettner在1979年后期离开贝尔实验室去了DEC,他是Usenet的早期发起人,Ultrix的架构师(DEC版的4.2BSD),同时也是Unix车牌的首位用户。他告诉我:
我将拥护Unix的氛围带到了DEC,否则DEC就不会有在纳舒厄的Unix工程师组(UEG)。我们在新罕布希尔州的梅里马克工作。我们将Spitbrook路称为“Saliva Creek”。有一次服务和支持部门的人们知道我们在那里,他们给我们打了电话。
但是当Bill Joy来访问的时候,我仍在做着32V。当我们从波士顿洛根机场到新罕布什尔的时候时间太晚了,唯一还开着的地方是Denny的办公室。我们那天晚上做的事情是描绘出我们将要做什么。我们想维护所有我们身边的软件,修正配置文件,然后把这些发布成一个发行版。我办开玩笑的说“为什么我们不把Unix移植到DEC 20系统上?”。Joy说“看,这需要10天的时间,但是我在这里只能呆7天”。后来证明Bill有10天的时间。接下来我们晚上在VMS工程师组的实验室做VMS组的原型。Bill做VAX 780,Bill Shannon做750,我做730。基本上,我们会一起做出某些东西,然后分头到个自的机器上调试它。我们有一个RP06磁盘,我们将它称为5BSD,因为我们确信下一个发布的将会是5BSD。
我们复制了一个磁盘,Bill拿着它回了加利福尼亚。Shannon和我将磁盘复制到了decvax——一台780机器,我们的主力系统。Bill Joy接下来几天给我们打电话说“嗨,如果我们发布另一个发行版将会有很多授权方面的麻烦。那么我们为什么不把它称之为4.1BSD?”。
10年后的DEC似乎是在反对Unix。Steve Johnson向我评论说:
当然,当VAX机型出现的时候,很明显DEC认为它是一台很棒的机器,至少在硬件方面是这样,Unix可以为他们的销售额做什么?但他们仍然没有赞助。
我问Armando关于事情的情况。
我来到以后,UEG做了很多的支持工作——我们写设备驱动和做一些底层工作:Unix的硬件依赖部分。伯克利专注于高层。知道我们的顾客会告诉他们的驻场工程师给我们打电话。我们开发了一个测试和一个语言所以我们可以和驻场的人们有关系。当支持Unix的时候有一个很大的新人问题,当一台机器不能运行DEC的软件时驻场工程师不知道该怎么做。账号管理和客户满意度永远是一个问题。
Spitbrook对Unix总是充满了敌意,坦白说是对整个公司...工程部门和管理部门尤为严重。Dave Cutler是DEC工程部门的中坚力量,他抓住了某些东西作为折中——我想是VMS上的SRI软件包。Cutler把Munson叫来,记得在AT&T和大学,Unix是DEC的一个大问题。因此Cutler被Munson叫来,Munson说他会让我们一些人过去看一看。所以Bill Shannon和我去了那里,大概有20分钟的路程。我们去了那里,Cutler正在他的办公室里。Bill和我坐在一个终端前,任何事情都不能做。Cutler问它有什么问题,我说它不能工作了。Cutler说“好的,谢谢你们”。我们回到梅里马克,Munson把我们叫到办公室(他是资深管理人员),问我们“你们去那个地狱做了些什么?Cutler给我打电话对我念叨说对你们的工程师深表遗憾并且再也不想在Spitbrook见到你们”。
我想Cutler的轻蔑影响了他此后的工作。在DEC内部的RISC战争中,Cutler在新的Prism架构上做了另一个操作系统而不是使用Unix。Cutler的系统不能移植,但是从文化上兼容VMS。我想NT中的许多东西可以追溯到Prism(Cutler在1983年去微软工作)。
我们有一个Unix产品经理,有一天我们在走廊里走着,我说“Bill,你知道我觉得现在是啥时候为VAX做一个真正的Unix产品,一个VAX Unix”。我做了一个计划,Bill把它拿给Munson看,对他说“让我们做出来看看”。基本上,我的计划是基于4.2BSD的,如果伯克利没有发布4.2,那就使用替补计划的4.1。我对于4.2很有信心,因为我们已经拿到了测试版本,并且我们已经在使用它了。但是我们需要一个意外处理方案,也就是4.1。尽管这样,那时Sun已经宣布在伯克利之前宣布了4.2——Bill Joy才刚拿着4.1c离开。我们发现4.1在decvax上非常稳定。我那时是技术经理。
1980年在旧金山的USENIX会议上,Bill Munson宣布UEG的目标是“启发DEC发现Unix和它的机会”。Armando有另外一种启发。
1982年1月我在东海湾的圣莫妮卡参加USENIX会议,当Bill Munson冲出来的时候我们正要宣布DEC有一个Unix项目。Slsen在我们的后面。显然他带着我寄给他的Unix车牌,他把车牌挂到一些人的胸口然后对Munson说“去搞一个Unix产品,把它做好!”。所以Munson红着研究去东海岸发出上那个公告。
Armando最为值得记忆的“露面”是在1983年圣地亚哥USENIX会议上,我问他这次会议的情况。
Bill Shannon刚刚买了一个新的Datsun,一个280ZX,我们开车去汉堡王把它们取回来。Bill有一个“UNIX”的车牌,我们想为USENIX会议做一些事情...每个人都有自己的小伎俩。所以我们说“让我们做一个海报”,又有人说“好,让我们拿一台VAX和一台终端,在木头上将它们建立起来”。我不记得我们为什么要把VAX放到木头里面去。我建议去拿实验室的780,在它上面画一个挡风玻璃,放上去一些VW轮胎并把Shannon的车牌放在挡风玻璃下面,然后用这些制作了一张海报。要想得到做这些事情的权限非常复杂,所以我去和PR的人谈了谈,正好他有所有这些目录。我看着这些目录和已经有的车牌,一个点子就冒出来了。Munson给了我800美元,我制作了3000个绿色UNIX车牌。
我记得我站起来说我想宣布你现在可以从DEC拿到Unix授权。台下所有这些来自几个Unix OEM厂商的家伙们都震惊了。我扶起车牌,死一样寂静的房间里爆发出大笑和鼓掌的声音。从房间的后面传出来一个声音:“Armando,你能从这件事学到什么?”,是Dave Yost说的。后来我们收到了一封来自贝尔律师的关于商标的信件。但是他们又打电话给我告诉我们他们不得不发送那封邮件来保护商标,但是我们能不能也给他们寄一些车牌。于是我们就寄了。
多年来DEC和Ken Olsen一直忍受着Unix用户大量批评。1983年圣地亚哥的UNICOM上,Bill Munson说Olsen曾对他说“要澄清一下...DEC支持Unix!”。但是Olsen也曾在1988年说过“Unix是蛇油”。无论如何,Armando在DEC花了十多年的时间在DEC扮演“Unix传福音者”,感觉Olsen受到了不公平的对待。
事后想起来,我认为Ken有一个坏建议。Ken是那个说“做Unix”的家伙。Ken是那个说“做Pmax(MIPS和DECstation3100),从别的公司买架构”的家伙。我认为赶走他的别人说的:人们想要它。你知道,那句“Unix是蛇油”的评论是断章取义。当然,这有消极的含义,但是Ken真正的意思是“每个人都在说你需要Unix”。每个人都在推销Unix。我能记得见到那些真正需要Unix的客户,但是他们自己也不知道是为什么。人们到处都在谈论。Ken的意思是“就像人们在一个世纪之前离不开蛇油一样,现在每个企业都需要Unix来做事情”。那句“Unix是蛇油”评论的语境是:做了一个类比。不幸的是,就像一些人说过的,Ken总是不了解他说的那些话会有什么影响。
但是根据当时在场的一些人的记录,是Ken Olsen向开放软件基金会争取Unix对抗他的副手。DEC的问题是所有运营这个公司的人们都是从工程师成长起来的,没有人有商业经验。就像任何很好的工程师,他们维护自己的产品和他们的合作伙伴。这就是为什么DEC的问题出现在80年代而不是90年代。
DEC有自己一系列的成功:PDP-11和VAX,在它的竞争还比较小的时候。但是到了80年代中期工作站和RISC机器开始和DEC竞争,DEC却没有可以对抗的机器。另外,DEC开始试着离开它的大本营,离开科学-工程师-学术的社区,去争抢IBM的市场。Cutler曾经为这个新机器和新操作系统工作过。我们确信它不会做我们需要它做的事情。如果它成功了,如果可以给IBM的市场定价,它会比Unix市场昂贵太多,DEC将会在和IBM对抗的时候拱手将钱送上。另外,据我们从Sun的SAPRC得到的可靠消息,Prism机器发展的不够快。但是我们想让Cutler为VMS市场做他的系统,我们想在Unix市场之后做自己的系统。我们的系统是基于MIPS R2000 RISC芯片。Kne Olsen对这个相当感兴趣。
Pmax使得公司两极分化。起初从东面回来的Unix组不想去做这个。我们(在帕洛阿尔托的)觉得DEC这么大已经足够去做和管理两个架构...人们开始讨论一个不能拥有自己架构的公司能否取得成功。
我们真的非常喜欢MIPS架构和R2000芯片。我们喜欢MIPS的家伙们。它有一个64位的计划。人么问的更多的是什么?和我们谈过的顾客都非常喜欢它!
如果DEC把它一般的能力花费在MIPS的关系和架构上,他们就会安全的继续做Prism,今天的产业界可能就不是现在这个样子了。
在Gordon Bell关停DECsystem-20的时候就应该想到这些。我觉得特有系统是叫做Jupiter。我认为是因为他的VAX没有一个强大的竞争对手来争夺所有这些TENEX/TOPS-20的客户。我相信Cutler在70年代的时候不想他的机器有一个竞争对手。他当然不想在80年代为不同的市场提供不同的系统。他真的太担心会杀死Unix。
Ken在董事会的授权下,违抗所有工程管理层的一致劝告,让我们放弃Prism转而去做Pmax。还有一个限制:拒绝我们要求的1年时间,我们不得不在9个月的时间内完成这个奇迹。我们做出来了。《Sam Jose Mercury》说:“DEC震惊了硅谷”。《Upside》公布了一张图片,Ken从一个帽子里拉出一只兔子,图片的标题是:“Scotty,想看我从帽子里拉出另一只兔子吗?”。
但是DEC继续它的NIH姿态:测试芯片非常像Prism芯片。Ken(或者公司文化,他们有区别吗?)不知道该如何去和别的公司合作。因此他们从来没有为MIPS的未来做任何事情。甚至OSF和X/OPEN也成为问题。只是因为一个人的看法...
有趣的是,一旦Armando和其他人离开DEC,ULTRIX就不再继续:1990年,DEC仍然说“ULTRIX操作系统是一个源于4.2/4.3版本的伯克利软件发行版(BSD)驱动实现,它提供了许多AT&T的System V接口定义所规定的系统和库调用”。知道后来,DEC为了支持OSF/1完全砍掉了ULTRIX。
![]() |
---|