IBM 360

在20世纪60年代前期,整个计算机产业的设计师都在寻求解脱困境的办法。在IBM,努力的结果是诞生了360系统———计算机的第一个模块化产品线。360系统在很宽的产品线上实现了应用软件的兼容,从而成就了对计算能力的巨大需求。这项成就本身将产生重要的经济影响,然而360系统的最终影响还要更为深远。

360系统的诞生是一个具有里程碑意义的事件。

———鲍德温教授(哈佛大学商学院前副院长)

———克拉克教授(哈佛大学商学院院长)

一、复杂性灾难与电脑设计的困境

世界上的第1台计算机是在1944年问世的,它由18 000个真空管组成,足足装了一屋子。虽然,从那以后,计算机及其程序和使用模式等等方面,均以惊人的速度向前发展。但是,从那时起,直到1965年之前的这20多年时间里,计算机都是整机制造的。当时的设计是相互依赖的(广泛联系)。因为每开发一款新计算机,都是为了具备某种新的特殊功能,以满足用户新的特殊的需求。所以,每开发一款新计算机时,指令集、外围设备、应用软件等都要从头做起。虽然新机型也会采纳和吸收老机型的一些经验,但整个说来每个新机型的产品线都是独立的、不同的、不能通用的,因而是不能兼容的。不同厂家,乃至同一厂家不同时期生产的电脑,其操作系统、处理器、应用软件等都不能兼容。用户一旦改换不同的电脑或更新电脑,就必须重新改写原来的程序或软件。这不仅给用户更换电脑带来极大麻烦,而且对电脑产业的发展极为不利。电脑系统的兼容问题便成了电脑产业发展中的突出障碍。

电脑设计师们为什么解决不了这个“老大难”问题呢?关键的难题就是计算机这个系统太复杂了。它的复杂程度和设计过程中要思考和处理的关联问题有如天上的繁星,令人望而生畏。

系统是由要素组成的,要素之间是相互联系(相互影响、相互制约)的。系统越来越复杂,要素越多,相互关联也越多,而且远远超出要素的数目。不仅识别这些关联困难,解决和处理(安排)这些关联更困难。处理一对关联之后,又会引起新的关联,“按下葫芦瓢起来”。这种无休无止的恶性循环,使设计师陷入泥潭。一位设计师回忆道:“你解决了一件事情的一个方面,而另一方面却脱节了。当你改正了这个,其他的又出错了。你不停地转来转去,无法生产出一个完全正确的形式。”例如,当你对驱动系统做出某种决定后,便引起了与主板有关的问题,继而又引起与显示屏有关的问题;当你对显示屏的参数进行重新选择,反过来又引起与主板的另一个问题,这又会反馈给驱动系统;重新调整驱动系统,又引起了线路结构问题,这个过程一直持续下去,处理这个相互依赖的关系链(这被称为“相互依赖型设计”),通常要花费很长时间,令设计师伤透了脑筋。这就是计算机这个复杂系统所造成的“复杂性灾难”。

被这种灾难所困扰的电脑设计师们,不可能像我们想象的那样,按照某种标准,遵循通用化原则,设计具有兼容性能的可以实现工业化大量生产的产品(那是模块化之后的事)。说当时的电脑设计是研究电脑也可以,是试制也可以,实际情况可以说是知识渊博、头脑灵活、技艺高超的电脑工匠在制作“电脑工艺品”。这种手工业方式生产的“工艺品”,不仅价格极其昂贵,只有像美国国防部那样的单位才能买得起,而且制约着技术创新、电脑的工业化生产和电脑知识、电脑产品的普及。因此,可以说能否摆脱“复杂性灾难”对电脑设计的困扰,关系到计算机产品的前途、电脑产业的形成以及信息时代的降临。

二、模块化———摆脱“复杂性灾难”的必由之路

模块化是解决复杂问题的一种方法,早已为人所知。我国北宋时代的毕昇早在公元1041~1048年间发明的活字印刷术,就非常成功地运用了标准件、互换性、通用件、分解与组合、重复利用等方法和原则,来解决雕版印刷所遇到的复杂性难题,可以说是人类社会较早出现的模块化杰作。到了工业化时代,模块化更是大行其道。那么电脑设计师们为什么不能一开始就采用模块化的设计路线呢?

从1944年到1966年这个模块化之前的时代里,计算机设计师们在从事着所谓的“相互依赖型设计”过程中,遇到种种困扰时,可以说每个人都在寻求出路和解决问题的方法。那些制造“电脑工艺品”的“工匠”们是了不起的开拓者。他们当中一开始就有人提出模块化的主张。高等研究院的约翰.冯.诺伊曼(John Von Neumann)、剑桥大学的莫里斯.威尔克斯(Maurice Wikes)和IBM公司的拉尔夫.帕尔默(Ralph Palmer)等人就曾有过模块化操作[1]的概念,他们设想设计者可以把系统分割为不同的组件,或替换组件,或归纳一项好的决计方案,或把一个组件从某个系统移植到另一个系统。但是,这种全新的思路意味着把现有的系统推倒重来,根本无法在当时已有的系统中实施。因为计算机这个系统太复杂了,对计算机的模块化设计远远不会像由雕版印刷向活字印刷转变那么容易。不是仅仅有了一个想法就能实现的,它需要一系列前提条件。这正如鲍德温和克拉克所说:“计算机设计的模块化———这个产生巨大经济影响的过程,同时也是一个历史过程和知识积累过程。这个过程是分阶段进行的,每一阶段都利用了此前各阶段所积累的知识。而且在较长的时间内,这个过程在经济效益上是很不显著的,其间的里程碑都是些鲜为人知的小的技术进步。”这是对模块化发展过程最具唯物主义的概括。在这20多年时间里,计算机设计的知识积累以及模块化设计思想的孕育,大体经历了如下的一些阶段和过程[2]:

  1. 1944年在美国国防部的资助下,由J.Presper Eckert Jr和W.Mauchly领导的小组在宾西法尼亚大学建造了一台名为ENIAC的计算机(电子数字积分计算机)。当时,计算机的设计知识主要存在于这少数几个人的头脑里。生产完全是在试错过程中进行,应用则完全是实验性的。设计、生产和应用相互交叠、不可分割。每一个设计参数、每一种生产上的限制条件、每一种新用途的想法,都能引起一系列的连锁反应。任何微小的发明和改进都算得上是英雄壮举。
  2. 1945年当ENIAC投入使用之后,设计者积累的知识使他们明白了如何建造一台性能更好(更快、更小、更便宜、更简便)的机器。然而按照相互依赖性设计理念建造的ENIAC是一个密不可分的系统,任何部分都得重新设计。他们只好重新开始,把想象中的新机器命名为EDVAC(电子离散变量自动计算机),并在冯.诺伊曼的一份报告中把计算机系统界定为一种“组合式”制品,还标明了其关键组成部分是基本存储器、控制单元、运算“器官”、输入/输出和辅助存储器。这是摆脱“依赖性设计”向“模块化设计”迈出的关键一步。
  3. 不久,冯.诺伊曼又有了更好的设想。他想象的计算机既是通用的又是全自动的。他和他的同事为其新计算机(ENIAC)构想的设计方案的核心是模块化的。除软件之外,他们在设计中定义了六大基本要求(内存、控制、运算单元、输入、输出和外部存储)。每一要素都有清楚定义的功能,并且按照自身的内部逻辑进行设计。他还把计算机界定为一个由各司其职、相互影响的组成部分构成的复杂系统。他主张不同的设计师可以分头开始每个功能单元的开发,解决每一单元的具体难题,并且最终能组合到一起实现完整的功能。他们明确认为,假如首选路径不成功,就可以转向另一条。这样,在某个次级单元中解决问题的失败就不会妨碍另一个单元中问题的解决。他们的这些想法和做法,对模块化基本理论的形成有深远的、重大的影响,是计算机设计模块化历程中一座意义非凡的里程碑。其不足之处是他们致力于实现使用上的而不是设计或生产上的模块化。在他们那里,某个单元的具体设计在任何意义上都不打算与其他部分相分离;系统任何部分的设计和生产都要在其他部分完全看得见的情况下进行。这是尚未完全摆脱依赖型设计思路的局限。尽管如此,他们把计算机分解为功能单元的创举,确实是实现计算机设计的整体模块化必须迈出的重要一步。
  4. 到1951年,全世界大约只有4台大型机在运行的时候,微程序设计实现了紧密关联的计算机控制逻辑的模块化。把控制逻辑从硬件中分离出来,从而把计算机分解为三个独立的模块:指令集、微程序设计和数据通路。其中,只有数据通路必须通过硬件来执行。后来,IBM开发360系统的设计思路是开发一族计算机,其中每一台都必须能运行为任何其他同类计算机编写的程序。这就意味着,尽管它们的处理器有大有小,所有的机器使用相同的指令集。正是微程序设计为IBM的工程师们提供了解决这个问题的低成本方法,并且是基于模块化原理的方法。
  5. 虽然计算机的模块化设计思路渐近成熟,但设计师依旧围着大型机转。他们还是在研制工艺品,根本没有工业化批量生产计算机的想法。在计算机的每一个“箱子”内部依然是一团乱麻般的电路。这是既无法复制又无法批量生产的手工业产品。而IBM的目标可不是只生产“工艺品”,它的目标是大批量、低成本的制造。为了实行工业化生产,就必须使用标准化的、可以互换的组件。计算机的基本组件是电路。1948年IBM的第一个标准化电子电路问世。它是作为一个单元封装和测试的,由一个真空管加上相连的电阻器和电容器形成的装配件,插在机器的背面。这实际上就是一个电路模块,当时叫做“插入元件”。“可插件”的概念也被应用到IBM的产品设计中。
  6. 1957年晶体管电路登上技术舞台,IBM预见到如果不采取任何措施的话,晶体管电路将会以同样的方式激增。他们组织开发了用于制造晶体管电路的新系统,创造出电路封装技术,为IBM开发“标准模块系统(SMS)”奠定了基础。IBM的标准模块系统技术于1957~1958年开发出来以后,几乎在同一时间,新成立的数字设备公司引入了一组“数字实验模块”———标准电路包,工程师可以用来为他们的设备建造逻辑系统。

用于电路设计和制造的标准模块系统(SMS)并不只是从概念上分解计算机,它真正有效地实现了设计结构和相应的任务结构的模块化。而且,它还涉及分割和归纳两个模块操作符[3]的应用。标准模块系统应用于IBM生产的所有产品。新产品的设计师们必须从自动设备库选取适用的标准电路。标准设计的标准模块系统库(Library)决定了计算机的几乎所有物理特性。从1958年开始,IBM公司的电路、卡片、电路板、电源、存储器、机身和外壳先后都实现了标准化。

标准模块系统使大批量生产技术首先应用于复杂电子电路的制造和测试。自动设备的使用连同自动设计和测试技术大大降低了产品大部分基本组件的成本。随着这些成本的下降,开发体积更大、更复杂的计算机就变得切实可行了;这又反过来为投资于制造流程的自动化和标准化提供了理由。

  1. 把一个电路的所有元件布置在一块芯片上的技术于1958年末由德州仪器公司完成;同年7月神童半导体公司掌握了运用各种方式在一块芯片上刻制整个电路的“平面工艺”;IBM于1961年提出并于1964年初建成固态逻辑技术,有了它,晶体管芯片的设计、陶瓷模块、卡片和电路板,以及自动布线就可以交给不同的开发小组完成。到了这时,计算机的模块化设计和模块化生产已经是水到渠成。随着模块化制造系统(固态逻辑技术)的全面投产,IBM于1964年4月7日,宣布了它的新产品———360系列计算机的诞生[4]。它成了计算机设计史和计算机产业史上的转折点。在这个发展历程中的每一项突破和每一次知识积累都以其特有的方式体现了模块化原理。所以,这个过程同时也是现代模块化及其理论的孕育过程,是标准化发展史上的一个重要里程碑。

三、计算机产业的第一场标准之战

1964年4月7日,在全世界77个城市同时举行的新闻发布会上,IBM公司在宣布360系列计算机诞生的同时,公布了6种新处理器、19种处理器、存储器配置和44种输入输出及存储设备的规格和技术说明。此外,还公布了一项计划,旨在开发一种能在最小处理器上运行的一体化操作系统。此后的市场反应极其强烈。尽管所有的产品需要至少一年才能供货,但IBM却在一个月内签下了1 100份订单,在随后的月份里,订单如潮水般涌入。在20世纪60年代下半期,360系统在市场上一枝独秀。IBM因模块化生产系统极大地降低了生产成本而击败了一个个竞争对手。借助这套生产系统,IBM公司在70年代初期还顺利地完成了向集成电路技术的转变。这可以说是IBM公司实施模块化战略的最初回报。

但是,无论如何不能认为IBM的这场设计革命是一帆风顺的。在整个过程中充满风险、挫折和斗争。那他们为什么还要甘冒风险呢?归根结底还是市场的推动。这又不能不再度提起产品兼容问题。随着市场的发展和用户对计算机依赖程度的增高,不兼容的问题越发引起客户的不满。对用户来说,先前的系统和应用程序已成为累赘。利用新技术意味着一笔勾销掉对旧有系统和软件的投资,而且要把数据资料转换成新格式或转移到新地址中。如果数据对企业的运营非常重要(如帐款文件),这类转换就有风险。因此,IBM的客户不断地向销售人员和高层经理人员抱怨,乃至对现有产品系列的强烈批评。这使IBM的高层管理人员确信:更高程度的兼容是时代的呼唤,是市场竞争成败的关键。

然而,直到1961年末,IBM的计算机都是由工作关系紧密的团队设计的,设计过程的基本任务结构相互关联而且高度重复,机器任何部件的设计都没有标准化。设计师们也习惯于在没有干扰的情形下做出所有必要参数的决策。IBM的高层管理人员早就希望有一组兼容的产品线,但该公司的设计师和工程师却一直认为这是一个不切实际的目标。更有甚者,1960年IBM的项目主管认为有两种处理器可以与先前的兼容,只是有些难度,如果要求必须兼容,有些设计师将以辞职相威胁,以至于IBM管理委员会不得不停止对旨在开发与已有产品线不兼容的处理器的所有研发项目的资金支持。最值得称道的是,IBM高层为了坚定不移地实现兼容,在推行模块化的关键时刻,IBM副总经理文森特.利尔森于1961年秋天建立了一个任务组,代码为SPREAD。负责研究制定出“一项IBM数据处理产品的整体方案”。其中就包括为360系统制定的“设计规则”(正是这个设计规则才把计算机和计算机产业引向一条新的演进之路)。当这个任务组刚刚召集起来时,SPREAD委员会宣布,实现兼容是公司的一项命令。IBM的管委会也表示,他们情愿把任何一位不将兼容看作公司首选目标的经理或工程师撤掉。到了1964年2月,在360系统发布前夕,公司真的把一位产品部的主管免职并从公司除名。

这场斗争虽然还不能说是“惊心动魄”,但其意义十分重大。

其一,这场标准之战在电脑产业里是首发的,它是向传统的设计理念、设计习惯的挑战。本来,在工业化社会里,标准化早渗透到工程师们的灵魂里。特别是在机器制造业,工程师们只要放下图板,拿起直尺和铅笔,在图纸上画任何图形之前,首先要考虑的便是标准。不仅产品和零件的尺寸、规格以及技术参数,连图形的画法、尺寸的标注都须以标准为依据。然而,在这个新兴的计算机产业里情形并非如此。从第一台计算机诞生开始,直到第一台模块化计算机开始设计为止的这20多年时间里,计算机这种产品一直处于单件生产、手工定制阶段。尽管计算机系统极其复杂,那些天才的设计师还是终于从“复杂性灾难”的困境中冲杀出来,他们很是了不起。凭借他们自己积累的知识和聪明才智,在设计和制造过程中同各种预想不到的问题周旋。他们“过五关,斩六将”,他们的性格特征是不受约束,他们的方法特征是反复试验,带有明显的手工工艺和开发研究性质。他们在一个关系密切的团队里工作,不希望别人指手划脚、说三道四。用现在的话来说,就是缺乏标准化意识。这场标准之战,表面上是关于兼容的(技术性)问题,而本质上是“设计规则”(标准)的问题。也就是今后要不要在这些不愿意受约束的设计师的头顶上悬一把(标准)尚方宝剑的问题。这样一来,在这个新兴的计算机产业里开展的这首场的标准之战,便有着非凡的、影响久远的意义。它远比突破几个技术难关重要得多。

其二,这场标准之战的胜利果实是建立了360系统的设计规则。IBM副总经理亲自领导的13人组成的任务小组,在一个汽车旅馆里鏖战了一个冬天,于1961年12月28日向公司提交了一份报告,建议公司开发一族新的兼容处理器来取代现有的整个产品线。公司采纳了这个建议,随后便开始了以360系统开发为核心的产品结构大调整。随着360系统的诞生,计算机产业从此告别了手工业生产方式,跨入了模块化大量生产阶段。从此以后,这个模块化怪物一发而不可收拾,它一直带动着这个新产业蒸蒸日上,直至今日。

这个代码为SPREAD的任务小组在向公司的报告中,除了建议开发兼容机之外,报告的主体是解释如何安排这个模块化新产品的设计过程。其中首要的任务是建立一套“所有设计师都必须遵循的一组规则”(报告中把它叫做“结构性的基本规则”)。就其内容来说这就是模块化电脑的“设计规则”或标准。

任务小组不仅提出了要制定这个“计划规则”,并把它列为模块化新产品设计过程的“第一步”,而且提出了一个规则草案。这大概可以算作是计算机产业的第一份有关规范设计的标准文件。下面摘录上述“规则”中的一些条款:

  1. 兼容性

每种处理器都能够正确运行为其他有相同或更小的输入/ 输出和存储设备的处理器编写的所有有效的机器语言程序。

  1. 格式和地址

a 地址的长度是可变的,因此地址中高序列的零并不一定能得到表达(expressed)。

b 编址用二进制基数。有效利用存储表明,二进制或者是字母数字编址优于十进制。因为二进制更灵活、更简明、更经济。

c 十进制数字和字母数字字符可以用4个比特或8个比特表示。

d 可变长度的字段控制(field manipulation)独立于物理储存范围,而且是标准化的。

e 每4个比特都是直接可编址的。

……

i 硬件和软件至少可以为同样的输入输出设备提供自动转化的表征性地址(间接地址)。

j 硬件和软件包,应该提供自动和独立的程序及数据关系,至少不晚于程序和数据载入的时间。

k 硬件存储保护系统应该确保程序之间不会发生任何问题和程序错误。

  1. 操作

a 如果一个比特组出现在中央处理器的数据流中,它不应该发挥任何强制性的控制功能。

b 所有固定点运算应该对中央处理器都可用,至少是作为一种选择。

这份“规则”的难点,主要的还不是观念上的矛盾,虽然在“规则”制定过程中充满激烈的争论,但那是大方向一致的前提下,“怎样才是最好的”之类技术层面的争论。这种争论恰恰是绝对必要的。作为“人人必须遵守的”强制性规则,就是悬在设计师头顶的“尚方宝剑”。这个规则是什么和如何规定是最大的难题。因为制定“规则”的目的是实施产品的模块化设计和模块化制造并保证产品的兼容性。如果该规定的内容没有规定,也就是该对设计师进行严格约束的内容未能做出约束性规定,那些原本就不愿意被约束的设计师就有可能按固有的习惯自由选择技术参数,使兼容的目的难以达到。如果不该规定的内容反而做了强制性规定,或者虽然应该规定,但却规定得过细、过严、过死,这就有可能走向另一个极端,设计师被约束得死死的,他的灵活性和创造热情被扼杀,产品改进和技术创新都将受到严重影响。所以,“规则”中的每一项明文规定,都是经过利弊权衡之后选定的一个平衡点。但是,这个平衡点不是什么人都能找到的,没有相当的知识和经验的长期积累是办不到的。实际上,我们制定任何一项标准时都会遇到这样的难题。

制定设计规则的困难还不止如此。如果他们事先完全知道在计算机系统中有哪些相互依赖的关系需要处理的话,即使工作量再大,也会有个头绪。问题是许多关系不可能事先知道。有时要到模块集成和测试阶段,当某些原型机或制造过程出问题的时候才会被“发现”。这时如果问题无法解决,便只好推倒重来。这是模块化风险的一个侧面。IBM的模块化风险也是到了两年以后的1966年才开始暴露。当时在每种CPU和每种输入输出设备上存在两三百个问题要处理。当时负责360系统制造的Hank Cooley说:解决这些新出现的问题绝对是一场噩梦。尽管模块化设计中的缺陷比任何人预料的都多,但大多数都是次要的、可以补救的,因而总的来说,设计参数和任务的最初分割还是经受住了考验。正确的设计规则一旦到位(产品设计师需要知道的所有事情都已被纳入可以公开透明的设计规则中),位于纽约、加利福尼亚、英国和德国的IBM实验室的各个开发小组就能独立工作,分头开始设计整体系统的专门部件。与此同时,制造工程师开始设计和建设基于固态逻辑技术的生产能力。这一切都按规则运行,无须频繁协调。一个名为处理控制中心的机构会监督工作进展,但每项设计的具体内容则留给各单位自己决定(发挥模块内部的自主创造性)。

四、IBM 360系统的技术、经济成就

IBM自1964年4月发布360系统之后,因在操作系统中存在数不清的相互依赖关系,有相当多的相互依赖关系对当时的设计师来说是未知的,有待通过试错来发现。加上项目主管加快产品问世进度,使那些未预料到的相互关系大量涌现。所有的问题都必须解决,否则从编码到纠正差错之间的循环往复会再次延缓项目进度,这表明操作系统软件模块化的时机还不成熟。此外,还有供应上的问题等等,公司内部设计、制造和物流陷入混乱状态,并已严重影响到IBM的财务。到了1966年底,诸多缺陷被逐一克服,这时系统的所有部分开始以一种基本上无缝的方式协同运转,产品又重新上市。到了这时可以放心地说IBM 360取得了成功。

  1. IBM 360系统开发,给企业带来的利益

据1961年~1966年的IBM年报报道,360系统的总成本估计在40亿~50亿美元之间。其中用于模块化开发的成本仅5亿~10亿美元,其余的都是用于扩大制造能力和生产供对外出租的计算机(当时IBM生产的计算机大多数是租给客户的而不是直接销售的)。

IBM投入360系统的这40亿~50亿美元(实际用于开发的仅5亿~10亿美元),得到的回报怎样呢?(因缺乏长期资料,这里只看看短期的也足以说明问题。)从1964年4月新闻发布之日起,对360系统的市场需求就远远超过了所有预期。1960年(360投产前)IBM实现了14亿美元的收入,其中1/4来自处理器。到1970年(360投产后)IBM的收入猛增到75亿美元,80%来自处理器和360系统的外围设备。1980年IBM的收入达到265亿美元,其中大部分是由360系统的后续模块贡献的。到20世纪60年代末IBM的总市场价值在400亿美元上下浮动,按1996年的美元价值计算相当于1700亿美元。无论用绝对值还是与其同伴的相对值来衡量,20世纪90年代中期没有一家同行公司的价值达到IBM在1996年底的价值(包括电报电话公司、通用电气和英特尔)。

这一组前后对比的经济数据,再生动不过地证明了产品开发的模块化战略(360系统的设计和生产)给了IBM多么丰厚的回报。是模块化,使IBM变成称雄世界的计算机王国。

360系统的模块化结构,因其无可争议的优越性(兼容、扩展、升级)受到用户的极大欢迎。它的竞争对手们,要么放弃与IBM竞争,要么寻求有特殊需求的客户,在夹缝中挣扎。以至于美国政府不得不动用《反垄断法》对它的垄断行为施加干预。

  1. IBM 360系统开发对模块化的贡献

IBM对模块化的贡献,简单地说就是通过360系统的设计、生产和使用,把模块化理论推上了一个新阶段;360系统的成功,标志着现代模块化的诞生。

IBM是个生产计算机的公司,不是美国标准化研究院,也不是模块化研究院。在公司里,在360系统的研制过程中,虽然也曾组织过一些临时的任务组研究并制定了一些与模块化相关的文件,制造了生产装置和模块化产品,那也只是为了实现他们的经营目标,满足客户对产品兼容性的要求。他们当初和后来都没有创造一种什么理论的打算。

但是,为了实现他们的目标,他们又不能不关心理论、探索理论并尊重那些正确的、符合客观规律的理论。没有理论的先导他们也是不会成功的。事实已经证明是模块化创造了IBM的奇迹,事实同时也证明是IBM把模块化推向了新阶段。IBM对模块化的贡献概括起来主要有以下三方面:

①IBM的360系统一开始就非常明确要走模块化之路。但是,一台大型计算机和一台机床比,它们的复杂程度是不一样的。模块化设计,简单地说就是先将系统按功能要素分解,建立功能模块,再进行模块组织。对计算机来说如何分解?如何组合?可以借鉴机械产品模块化的思路但无法照搬,他们必须结合实际另辟溪径。就这样360系统实际上变成了现代模块化的开发试验品,IBM变成了个现代模块化的研究所。整个公司全力以赴,最高领导亲自挂帅,试验—失败—再试验—再失败,直至成功。为此公司还投入40亿~50亿美元。这是世界上从未有过的浩大标准化工程。

什么是现代模块化,当初谁都不知道,现在我们可以通过总结他们的实践经验进行理论概括了。这些理论完完全全建立在360系统的实践经验的基础上,是那些设计师和工程师,包括高层管理者无数次成功和失败的经验总结。可以说没有这样一次大规模的模块化实践,是不可能凭空产生什么理论的(360系统的具体理论成果将在“现代模块化理论基础”那两章里详述)。

②IBM 360系统的模块化设计,不仅仅是产生了计算机的第一个模块化产品线。正如鲍德温和克拉克所说“这项成就本身将产生重要的经济影响,然而360系统的最终影响还要更为深远”。硅谷的兴起和硅谷模式的成功便是这种影响的一部分。可以说没有IBM 360的成功也不会有硅谷的迅速崛起(这些将在第四讲介绍)。硅谷是靠模块化发展起来的,被称作“模块的集约地”。模块化理论与实践在硅谷得到了充分的施展,在大规模的实践中又有新的发展。可以说硅谷最终使模块化理论趋于完善。但是IBM的360是产生硅谷的温床,这同样属于IBM的贡献。

③IBM 360系统的模块化设计是计算机产品设计上的创举,也可以算得上是一场革命。它以模块化设计取代了相互依赖型设计,为实施并行工程创造了条件,从而极大地提高了开发和生产效率;它用模块组合产品使计算机具有兼容性,可扩展、可升级,满足了客户、扩大了市场,加快了计算机产业的形成和发展;模块化在计算机领域的成功,尤其是IBM的奇迹,在整个产业界和银行等服务业引起强烈反响,一股模块化热潮正在兴起。这种示范作用是任何一种行政命令、红头文件以及领导讲话都无法取代的。这就是360系统的“更为深远”的影响的一个方面。

在模块化发展史上,360是个里程碑,在标准化发展史上应该给IBM重重地写上一笔。

标准化是一门应用学科,它的全部理论都是从实践中总结出来并用以指导实践的。模块化作为标准化的一种形式,它必定要随着新经验的累积在内容上有所充实和创新,相应的更高级的形式以及与其相适应的理论也自然会产生。但是,这都因为客观上有这种需求,尤其是有着先行者的实践可供我们去认识和总结。

IBM 360系统就是一个典型的先行者的实践。这项实践如果从1964年算起到今天已经过去40多年。它所开拓的模块化之路,早已被计算机同行广为采用并已扩散到其他产业和行业。


©lalalla,© 1999-2020。
网站备案号:京ICP备09042134号 京公网安备号:11010802013896