弗雷德里克·布鲁克斯 - 布鲁克斯与计算机结缘:
布鲁克斯1931年4月19日生于美国北卡罗莱纳州的杜哈姆(Durham),是一名医生的儿子。1944年,艾肯设计的MARKI由IBM生产出来以后,有杂志加以介绍。当时才13岁的布鲁克斯读了以后就产生极大的兴趣,并开始收集老式的商用计算装置。他参加了所在中学的无线电俱乐部和电子工程俱乐部,成为一名积极分子。假期,他用铅皮做成烟管卖给烟农烤烟叶(他家乡是产烟区)。1953年,从杜克大学毕业并取得物理学士学位以后,进入哈佛大学深造,师从他从小仰慕的艾肯,1955年取得硕士学位,1956年取得博士学位。值得指出的是,布鲁克斯取得的是计算机科学的博士学位,是一位“正宗”的计算机博士,是世界上第一批获得计算机科学博土学位的少数学者之一。他的博土论文课题为“自动数据处理系统的分析设计”(TheAnalyticDesignofAutomaticDataProcessingSystem)。从博士论文开始,布鲁克斯的一生就与计算机结下了不解之缘。
弗雷德里克·布鲁克斯 - IBM经历:
在哈佛大学取得博士学位以后,布鲁克斯进入IBM公司设立在纽约波凯普茜(Poughkeepsie,NewYork)的实验室当工程师。这个实验室从20世纪50年代到80年代一直是IBM公司开发计算机的中心。布鲁克斯在这里参加了Harvest和STRETCH计算机的开发,任体系结构设计师。这两个型号的计算机都引入了一些新技术,在20世纪50年代后期至60年代初期有很大影响,尤其是STRETCH计算机,当前已成标准的8个二进制位的“字节”(byte)就是由布赫霍尔兹(WernerBuchholz)提出,在STRETCH上首次采用的。STRETCH还首创先行控制方式,最多可重叠执行6条连续的指令,后来被发展成流水线方式,因而被认为是世界上第一台流水线计算机。流水线概念的提出者是阿姆达尔(GeneAmdahl,他后来离开IBM公司创办了著名的Amdahl公司),由科克(JohnCocke,1989年计算机先驱奖获得者)和考尔斯基(HarwoodKolsky)协助在360上实现。STRETCH共生产9台。在1965年CDC6600问世以前,是世界上最快的超级计算机。Harvest则是IBM公司在STRETCH的基础上,为美国国家安全局特制的,比STRETCH还大两倍。布鲁克斯在其中的创造性贡献是解决了程序中断系统的设计,以及在数据格式中出现不均匀的字符分布时如何设计其二进制代码(multicasebinarycodesfornonuniformcharacterdistributions)等问题,并从而在1957年取得了他的第一个美国专利“程序中断系统”(ProgramInterruptSystem,专利号3048332,与D.w.Sweenly共有),发表了他最初的两篇学术论文。其中,在程序中断系统的设计中,布鲁克斯和斯温利提出了可屏蔽中断的概念,使用户击键时字符显示在屏幕上,而计算机的运行却不会混乱。科德(E.F.Codd,1996年计算机先驱奖获得者)正是利用这一概念为STRETCH设计了第一个交互式多道程序操作系统的。1959年,布鲁克斯曾被调至IBM公司在约克通高地(YorktownHeights,NewYork)的研究中心工作,但第二年又重新被调回波凯普茜的实验室,因为当时IBM公司内部在计算机的研发方向上产生了重大的分歧。1960年时,IBM公司的计算机生产线上的产品是8000系列,但遭到一些人的反对,其领头人是伊万斯(Roben(Bob)OvertonEvans)。伊万斯1951年就加盟IBM公司,曾参与或主持过IBM701、1410和7070等多种型号计算机的开发,已经积累相当丰富的知识和经验。他经过认真分析,认为主要继承IBM原有技术的8000计算机,即使研制成功并上市,过不了几年,即到1964年就会丧失生命力,缺乏市场竞争能力。因此他主张8000下马,采用新的技术开发新型计算机,尤其是要开发新的操作系统。伊万斯的意见使IBM公司分裂成为两派,一派支持,一派反对,而反对派的领头人正是布鲁克斯!两派的争论和对立非常尖锐,又势均力敌,因为伊万斯只是艾奥瓦州立大学电气工程系的一个本科毕业生,学历和学位没有布鲁克斯高,但资历却比他老,双方的支持者人数也差不多。以小沃森(ThomasJohnWatson,Jr.)为首的IBM公司决策层于1961年5月担着极大的风险最后采纳了伊万斯的意见,是年秋宣布成立一个名为SPREAD(这是“系统程序设计、研究、工程和开发”的英文SystemsProgramming,Research,EneineeringAndDevelopment的词头缩写)的委员会作为taskforce(类似于我国过去经常采用的所谓“攻关领导小组”这样一种组织),由13人组成,主席为汉斯特拉(JohnW.Haanstra),副主席为伊万斯,布鲁克斯是成员之一。作为争论中赢方的伊万斯冷静地分析了形势以后,作出了一个令人大感意外的决定,他亲自找布鲁克斯,请布鲁克斯主持日后被称为IBM/360的这个新项目。伊万斯这一举动主要基于以下两点考虑,一是如果由他自己来主持360,那末原来反对他的意见的那一派人很难团结在他的周围,二是涉及这样重大改革与创新的项目,应该让年轻人来挑头。他自己虽然当时也只有34岁,但布鲁克斯比他小5岁,更加年轻。难能可贵的是,布鲁克斯作为争论的输方,慨然接受了伊万斯的邀请,同意负责这个他曾经反对过的项目!这个故事很像我国京剧舞台上的“将相和”(虽然无人“负荆请罪”)。伊万斯和布鲁克斯双方在这件事上所表现出来的明智、大度和勇气都十分令人钦佩和赞叹。其结果和效果就是整个IBM公司的职工果然团结起来,实现了艰难而痛苦,然而却是历史性的转变和飞跃。IBM/360的开发总投资5.5亿美元(其中硬件2亿,软件3.5亿),比美国研究原子弹的曼哈顿计划的投资20亿美元的四分之一还多。在研制期间,布鲁克斯率领着2000名程序员夜以继日地工作,单单360操作系统的开发就用了5000个人年。因此,当1964年4月7日,在IBM公司纪念其成立50周年的庆祝大会上宣布360系列计算机的时候,小沃森完全有理由声称“这是公司历史上宣布的最重要的产品”。确实,IBM/360以其通用化、系列化和标准化的特点,对全世界计算机产业的发展产生了如此深远的影响,以至被认为是划时代的杰作。而IBM/360的推出,也使IBM在短短两年时间内,即到1966年,其资本积累就增加到45亿美元,职工总数净增6万,达到19万,成为名符其实的“兰色巨人”。到20世纪60年代末,360系列机的市场占有率达到15%,到20世纪70年代中期,超过了50%。各计算机生产厂商纷纷仿效360的榜样,推出各自的系列机。有的则直接采用IBM/360的操作系统,比如著名的Amdahl公司的所谓“插接兼容式”计算机(plugcompatiblecomputer)就是这样。为此,伊万斯和布鲁克斯两人常常被并称为“IBM/360之父”(fatheroftheIBMSystem/360)。
当然,IBM/360如今早已是“昨日黄花”了。IBM公司在20世纪70年代就推出了370系列替代360,以继续保持其技术上的优势。这里之所以用了一定篇幅介绍IBM/360的故事,是因为其中不乏让我国的企业家、科学家和工程技术人员深思的一些问题。IBM/360的特点我们只简要介绍如下。它是集成电路的计算机。体系结构既便于事务处理,又便于科学计算;系列中各机型(初期,规模由小到大,功能从弱到强,包括20、30、40、50、65和75六个型号,后来扩充了25、85、91、195等型号)具有兼容性;有标准的输入输出接口和通用的输入输出设备,它们与中央处理器相对独立;软件既有兼容性又有可扩充性,从而可最大限度地保护用户的软件投资。这些特征大多都成为以后计算机设计与开发所遵循的基本原则。
IBM/360成功以后,布鲁克斯离开IBM公司回到其故乡,为北卡罗莱纳大学(UniversityofNorthCarolinaatChapelHill,简写UNC)创建了计算机科学系,担任该系系主任长达20年(1964—1984年)。卸任以后仍在该系任教至今,因此他培养的学生很多,可谓“桃李满天下”。除了教学以外,他还致力于发展美国的计算机技术和计算机在国防等方面的应用,有许多社会兼职。他的研究领域除了计算机体系结构、机器语言设计、软件工程和大型项目管理以外,还包括动态体系结构的可视化(如walk-through,即“走查”)、人机接口、交互计算机图形学等,十分广泛。20世纪70年代初,布鲁克斯和他的学生赖特(WilliamV.Wright)同生物化学系的海曼斯(JanHermans)合作,研究蛋白质折叠问题,实现了可视化分子三维结构系统。后来又与杜克大学的结晶学家金荪和(SumHoKim)合作,开发成功了能找到tRNA分子的原子坐标的系统,使得以前需要三个月才能完成的工作只要一个星期就可以做完。关于虚拟现实(VR:VirtualReality),涉及布鲁克斯曾参与领导攻关的计算机模拟和训练,是他关心的重点之一,1992年3月由美国国家自然科学基金会NSF主持的虚拟现实研讨会,就是由布鲁克斯等人倡议并在北卡罗莱纳大学召开的,这次会议对VR进行了定义并就其研究方向提出了详细建议,奠定了VR作为独立研究方向的地位。布鲁克斯在筹备及组织此次会议上作出了重要贡献。
弗雷德里克·布鲁克斯 - 担任职务:
1966—1970年,他是ACM全国委员会的委员;
1973~1975年,出任ACM体系结构委员会(所谓SIGARCH)的主席;
1977~1980年,布鲁克斯在美国国家研究院计算机科学技术部(ComputerScienceandTechnologyBoard,NationalResearchCouncil)任职;
1983~1984年,他是美国国防科学委员会人工智能攻关领导小组(AITaskForce,DefenceScienceBoard)的成员;
1986-1987年,是上述委员会另一个攻关领导小组“计算机模拟和训练”(ComputerSimulationandTrainingTaskForce)的成员;
1985—1987年,他担任军用软件攻关小组(MilitarySoftwareTaskForce)组长,并当选为美国工程院院士,他同时也是英国皇家学会和荷兰皇家科学与艺术院的外籍院士。
弗雷德里克·布鲁克斯 - 著作:
1963年,他和哈佛大学就读时的同学和IBM公司的同事艾弗森(KennethIverson,APL发明人,也是首届计算机先驱奖获得者)合著了《自动数据处理》(AutomaticDataProcessing,Wiley)一书,是该领域中最早的专著之一;
1969年再版时有两个版本,其中一个是专门论述在IBM/360上的数据处理的(书名为AutomaticDataProcessing,System/360Edition);
1975年,他把他历年来所写的有关软件工程和项目管理方面的文章汇集成书,书名为《神话般的人一月:有关软件工程的随笔》(TheMythicalMan-Month:EssayOnSoftwareEngineering,Addison-Wesley);由于本书是他领导IBM/360软件开发经验的结晶,内容丰富而生动,成为软件工程方面的经典之作,出版20年之后即1995年又再版了一次;
最近的一本专著是他与荷兰特文德理工大学(TwenteTechnicalUniversity,位于荷兰与德国接壤处的恩斯赫德)的勃劳夫教授(C.A.Blaauw)合著的《计算机体系结构:概念与发展》(ComputerArchitecture:ConceptsandEvolution,Addison-Wesley,1997);
1995年,他与萨瑟兰(1.E.Sutherland,“计算机图形学之父”,1985年计算机先驱奖获得者)等还合编了一本书,书名是《EvolvingtheHighPerformanceComputingandCommunicationsInitiativetOSupporttheNationalInformationInfrastructure》,由NationalAcademypr.出版,论述了有关高性能计算机计划及信息基础设施(也就是所谓“信息高速公路”)建设的一系列问题。
弗雷德里克·布鲁克斯 - 获得奖项:
ACM在1987年曾授予布鲁克斯“杰出服务奖”(DistinguishedServiceAward),
1995年曾授予他以纽厄尔(A.Newell,首届计算机先驱奖获得者,1992年去世)命名的Newell奖,
1999年又授予他图灵奖,使布鲁克斯成为继克努特(D.E.Knuth,首届计算机先驱奖获得者)之后第二位同时拥有ACM三个奖项的计算机科学家。
IEEE也先后向布鲁克斯颁发三个奖项,即McDowell奖(1970)、计算机先驱奖(1980)和冯·诺伊曼奖(1993)。
AFIPS在1989年授予布鲁克斯HarryGoode奖。
数据处理管理协会DPMA1970年授予他“计算机科学”奖,并命名他为该年度的风云人物(ManoftheYear)。
1985年,布鲁克斯因在开发IBM/360上的杰出贡献而荣获全国技术奖章(NationalMedalofTechnology),
物理学界的富兰克林学会(FranklinInstitute)也曾授予布鲁克斯Bower奖(BowerPrizeandAward)。