計(jì)算機(jī)史最瘋狂一幕:豪賭50億美元,“藍(lán)色巨人”奮身一躍
來(lái)源 | OneFlow社區(qū)“Go big or go home. ”是美國(guó)人的一句習(xí)語(yǔ),經(jīng)常會(huì)在賽場(chǎng)上聽(tīng)到,NBA球迷應(yīng)該很熟悉,翻譯過(guò)來(lái)就是“要不變強(qiáng)大,要不滾回家”。在1960年初期的計(jì)算機(jī)行業(yè),IBM正站在這樣一個(gè)十字路口。
新機(jī)器的野心
- 需要一個(gè)單一的、兼容的機(jī)器系列,涵蓋現(xiàn)有最小內(nèi)存的機(jī)器,例如可能低于1401到功能最強(qiáng)大的7094型機(jī)器。事實(shí)上,報(bào)告對(duì)兼容性的范圍表達(dá)了質(zhì)疑。
- 新機(jī)型的目標(biāo)不應(yīng)該僅僅是取代1401或7000系列,而是要開(kāi)辟一個(gè)全新的計(jì)算機(jī)應(yīng)用領(lǐng)域。當(dāng)時(shí),這些機(jī)型和新產(chǎn)品線之間的兼容性并不被認(rèn)為是最重要的,因?yàn)樾聶C(jī)器出現(xiàn)的最初時(shí)間表已經(jīng)被延長(zhǎng)了好幾年。
- System/360必須同時(shí)具有商業(yè)和科學(xué)應(yīng)用。這是一個(gè)艱巨的雙重任務(wù),因?yàn)樯虡I(yè)機(jī)器可以接收大量的數(shù)據(jù),但卻沒(méi)有多少處理能力,而科學(xué)機(jī)器只能處理相對(duì)較少的數(shù)據(jù)。為了達(dá)到這一目的,他們決定新生產(chǎn)線上的每臺(tái)機(jī)器都將配備不同大小的內(nèi)存。此外,新機(jī)器將提供各種最新技術(shù)特性,如“浮點(diǎn)計(jì)算”、“可變字長(zhǎng)”和“十進(jìn)制指令集”,以處理科學(xué)和商業(yè)任務(wù)。
- 信息輸入和輸出設(shè)備以及所有其他外設(shè)必須有“標(biāo)準(zhǔn)接口”,以便各種類(lèi)型和大小的外設(shè)連接到主計(jì)算機(jī)。這也成為新生產(chǎn)線的一個(gè)重要特征。
摸著石頭過(guò)河
在360的方案確定后,IBM管理層任命了這一項(xiàng)目的相關(guān)負(fù)責(zé)人。主管設(shè)計(jì)工程的總負(fù)責(zé)人正是29歲的布魯克斯,在這之前,他擔(dān)任IBM的Harvest和世界上第一臺(tái)流水線計(jì)算機(jī)STRETCH的體系結(jié)構(gòu)設(shè)計(jì)師。
布魯克斯負(fù)責(zé)協(xié)調(diào)4個(gè)小組的工作,其中3個(gè)小組都由金·阿姆達(dá)爾(Gene Amdahl)領(lǐng)導(dǎo),IBM的最后一種電子管計(jì)算機(jī)IBM 709就出自他手,此外,他還擔(dān)任過(guò)第一臺(tái)全晶體管計(jì)算機(jī)IBM 7030的設(shè)計(jì)師。
他們就360系統(tǒng)技術(shù)問(wèn)題進(jìn)行了多次商討,最終決定實(shí)現(xiàn)“兼容性”這一全新思路:盡管360系列在型號(hào)上會(huì)有區(qū)別,但它們都必須能夠用相同的方式處理相同的指令,具有相同的軟件,配置相同的磁盤(pán)機(jī)、打印機(jī)等外設(shè),而且能夠相互連接在一起工作,此外在更換新機(jī)器時(shí)不用再更換外設(shè)。
正式動(dòng)工后,他們會(huì)發(fā)現(xiàn),360項(xiàng)目的推進(jìn)遠(yuǎn)比他們想象的要艱難,除了解決技術(shù)難題,他們還面臨人員協(xié)調(diào)、資源調(diào)動(dòng)等難題。但開(kāi)弓已沒(méi)有回頭箭。
每一個(gè)難題都讓小沃森夜不能寐。在回憶錄里,他提到了兩大風(fēng)險(xiǎn):首先是要協(xié)調(diào)來(lái)自歐美等地不同的工程團(tuán)隊(duì),他們同時(shí)在研發(fā)六種新計(jì)算機(jī)和各類(lèi)外設(shè),但最終要將所有硬件都聯(lián)結(jié)起來(lái)。
為了推進(jìn)System/360的研發(fā),利爾森采用了一種“摩擦式互動(dòng)(abrasive interaction)”的管理手法,把小型機(jī)團(tuán)隊(duì)的頂尖工程師提拔成為大型機(jī)部門(mén)中最優(yōu)秀開(kāi)發(fā)團(tuán)隊(duì)的負(fù)責(zé)人,迫使IBM內(nèi)部不同的工程團(tuán)隊(duì)通力合作。
其次,IBM決定自己為這個(gè)新系統(tǒng)制造相應(yīng)的電子部件,這是條燒錢(qián)路線。他們必須自己制造集成電路,因?yàn)橘I(mǎi)不到現(xiàn)成的芯片。不過(guò),新建一個(gè)集成電路制造廠,對(duì)生產(chǎn)環(huán)境要求極為苛刻,成本超過(guò)普通廠房的四、 五倍。
更大的挑戰(zhàn)在于編寫(xiě)可能是一個(gè)百萬(wàn)級(jí)代碼的操作系統(tǒng),沒(méi)有工程師參與過(guò)這么龐雜的編程重任,而后投入的人力資源更是遠(yuǎn)超預(yù)判。
就在他們?nèi)缁鹑巛毖邪l(fā)360機(jī)型時(shí),1963年年底,IBM的舊生產(chǎn)線開(kāi)始抵擋不住競(jìng)爭(zhēng)對(duì)手的攻勢(shì)。為了提早拖住用戶轉(zhuǎn)向的勢(shì)頭,他們必須盡快讓外界知道360產(chǎn)品的存在。1964年4月7日,在老沃森創(chuàng)建IBM的50周年之際,他們分別在美國(guó)63個(gè)城市和14個(gè)國(guó)家舉辦了有近萬(wàn)人參加的新聞發(fā)布會(huì),向全世界昭告IBM System/360的誕生。小沃森稱(chēng)“這是該公司史上最重要的新產(chǎn)品”。
他們向外界展示了由六臺(tái)兼容機(jī)器組成的系列System/360 30、40、50、60、62和70,它們的體系結(jié)構(gòu)完全一樣,只是性能上不同,相鄰兩檔機(jī)器的計(jì)算速度之差別約為3至5倍,最高運(yùn)算速度可達(dá)每秒100萬(wàn)次。另外,他們還發(fā)布了44種外設(shè),包括磁帶驅(qū)動(dòng)器、磁盤(pán)驅(qū)動(dòng)器、打印機(jī)等,承諾會(huì)提供使一切協(xié)同運(yùn)行所必需的軟件。不過(guò),他們那天抄了一個(gè)捷徑,當(dāng)天展示的設(shè)備并非都是真實(shí)的,有些展品只是木制的模型。
由于發(fā)布的許多新概念和最新技術(shù),System/360在外界的反響非常熱烈。作為一種多用途產(chǎn)品,System/360多達(dá)248個(gè)數(shù)據(jù)傳輸終端可以與計(jì)算機(jī)進(jìn)行通信,即使計(jì)算機(jī)忙于批處理作業(yè)。它不僅能夠處理小型二進(jìn)制、十進(jìn)制或浮點(diǎn)計(jì)算,還可以處理科學(xué)或商業(yè)工作。
最突出的核心功能當(dāng)然是兼容性。它可以讓龐大的數(shù)據(jù)中心安裝一臺(tái)小型360計(jì)算機(jī),然后升級(jí)到更龐大的計(jì)算機(jī),而無(wú)需重寫(xiě)軟件或更換外設(shè)。同時(shí),一旦工程師熟悉了這一新系統(tǒng),就不必再學(xué)習(xí)更多新知識(shí)來(lái)做升級(jí)。
IBM還為360項(xiàng)目構(gòu)建了自己的固態(tài)邏輯技術(shù),密度是當(dāng)時(shí)技術(shù)的10 倍,可靠性是100倍。它還制造了從電路到內(nèi)存、存儲(chǔ)、打印機(jī)和屏幕的所有即插即用的組件,處理器和存儲(chǔ)器都安裝在一個(gè)名為“主機(jī)”的金屬機(jī)柜。此外,它還將設(shè)計(jì)與構(gòu)建分開(kāi),因此可以復(fù)制系統(tǒng)。System/360的制造成本也進(jìn)一步降低,并且易于定制以滿足相對(duì)廣泛的客戶場(chǎng)景。
但是,System/360的長(zhǎng)征只走了一半,發(fā)布會(huì)的成功并不意味著項(xiàng)目已經(jīng)成功。
3
豪賭50億美元
4月宣布新產(chǎn)品后,IBM進(jìn)入規(guī)?;a(chǎn)時(shí)期,實(shí)際上,這是其歷史上最危險(xiǎn)的時(shí)刻。
發(fā)布會(huì)后的一個(gè)月,來(lái)自全球客戶的360訂單超過(guò)100000臺(tái),而同年在英國(guó)、西歐、美國(guó)和日本安裝的各類(lèi)計(jì)算機(jī)總共也就20000多臺(tái)。IBM承諾1965年第三季度交付首批小型計(jì)算機(jī),1966年第一季度交付大型計(jì)算機(jī)。
與此同時(shí),360項(xiàng)目的投入不斷加注到讓人咋舌。通過(guò)粗略估算,他們將為System/360的研發(fā)投入50億美元,其中研制經(jīng)費(fèi)5億,生產(chǎn)設(shè)備投資10億,推銷(xiāo)和租賃墊支35億。要知道,美國(guó)研制第一顆原子彈的“曼哈頓工程”也才用了20億美元。這筆費(fèi)用是IBM在1962年?duì)I收的兩倍,他們還雇用了7萬(wàn)多名新員工。
IBM為自己爭(zhēng)取了兩年時(shí)間來(lái)生產(chǎn)機(jī)器,如果不能按時(shí)交付就會(huì)功虧一簣。
當(dāng)然,生產(chǎn)問(wèn)題無(wú)可避免。巨大的訂單數(shù)量嚴(yán)重影響了生產(chǎn)質(zhì)量,存儲(chǔ)器磁芯的制造難度,再加上不少機(jī)器因?yàn)殡娮与娐凡煌暾麌?yán)重延誤了交付工期。同時(shí),隨著制造活動(dòng)在全球展開(kāi)來(lái),由于小沃森的弟弟Arthur K. Watson管理不足,協(xié)調(diào)活動(dòng)和制造機(jī)器方面由此衍生出各種問(wèn)題,他忍痛將弟弟調(diào)整到其他部門(mén),但這也傷害了弟弟的自尊,多年以后,小沃森都覺(jué)得很是內(nèi)疚。
軟件問(wèn)題同樣阻礙了System/360的生產(chǎn)。即便在今天,很多項(xiàng)目的上萬(wàn)行代碼都是一團(tuán)糟,更不用說(shuō)這個(gè)百萬(wàn)級(jí)代碼量的操作系統(tǒng),讓360操作系統(tǒng)一次運(yùn)行多項(xiàng)任務(wù)還要確保高效性并非易事。同時(shí),應(yīng)用程序和編程支持等也是令人頭疼的頑疾。
漏洞百出的重重壓力之下,1964年10月,IBM宣布產(chǎn)品交付嚴(yán)重延誤。
在360系統(tǒng)上,他們新增了1000名工程師來(lái)追趕工期,這使得IBM在軟件方面的投入比硬件還多,不過(guò)投入更多的工程師參與項(xiàng)目基本于事無(wú)補(bǔ)?;?60系統(tǒng)的實(shí)踐經(jīng)驗(yàn),布魯克斯在1975年出版的《人月神話》一書(shū)中給出了他的見(jiàn)解:生孩子需要經(jīng)過(guò)十月懷胎,不管把這個(gè)任務(wù)交給幾個(gè)女人完成都一樣。
很多人每周工作近100小時(shí),到處都是焦慮的灰暗氣息。一次,當(dāng)小沃森去視察工作進(jìn)展時(shí),不認(rèn)識(shí)他的工程師大吼著讓他滾出去,不要影響他們工作,小沃森灰溜溜地離開(kāi)了。有些經(jīng)理和工程師由于難以承受諸多壓力而選擇辭職。
好在,他們?cè)谖鍌€(gè)月內(nèi)奇跡般地解決了很多問(wèn)題,產(chǎn)品得以如期交付,盡管新交付的360機(jī)器的質(zhì)量還是有部件短缺、程序bug等諸多缺陷,幾乎每個(gè)早期客戶都會(huì)遇到一些問(wèn)題。
IBM的同行也對(duì)其新產(chǎn)品線做出了回應(yīng)。GE、霍尼韋爾、NCR等抱團(tuán)推出了與對(duì)方機(jī)器兼容的系統(tǒng),除了沒(méi)有兼容IBM的機(jī)器。一些小規(guī)模的公司決定制造與IBM兼容的機(jī)器,包括RCA以及歐洲和日本的其他公司。
即便如此,System/360的歷史性創(chuàng)新使它遙遙領(lǐng)先于競(jìng)爭(zhēng)對(duì)手。1966年底,他們建造和安裝了大約8000臺(tái)360機(jī)器,IBM的收入幾乎翻了一番,達(dá)到40億美元左右,稅前凈利潤(rùn)達(dá)到10億美元,而到1970年又幾乎翻了一番,達(dá)到70億美元,員工人數(shù)從360項(xiàng)目之前的120000人增加到269000人。
到1970年代時(shí),IBM占據(jù)了全球大型機(jī)市場(chǎng)70%的份額,其中催生出很多現(xiàn)代化應(yīng)用的初代模型,包括銀行ATM交易系統(tǒng)、航空業(yè)在線票務(wù)服務(wù),期間幫助NASA運(yùn)行了阿波羅太空計(jì)劃。在360推出25年后的1989 年,基于其架構(gòu)及擴(kuò)展設(shè)備的產(chǎn)品收入占據(jù)IBM總營(yíng)收的一半以上,每臺(tái)計(jì)算機(jī)價(jià)格超過(guò)10萬(wàn)美元。
50億美元的孤注一擲最終為IBM帶來(lái)了巨額回報(bào)。
4
劃時(shí)代的杰作
IBM System/360的出現(xiàn)無(wú)疑是一個(gè)劃時(shí)代杰作。它讓大型機(jī)行業(yè)改頭換面,極大推動(dòng)了未來(lái)計(jì)算機(jī)行業(yè)的變革——即便他們一開(kāi)始只是出于提升自身商業(yè)競(jìng)爭(zhēng)力的目的。
它幫助IBM擊退了市場(chǎng)上各大競(jìng)爭(zhēng)對(duì)手,得以在20世紀(jì)80年代前一直穩(wěn)居計(jì)算機(jī)行業(yè)的主導(dǎo)地位。這背后主要是因?yàn)镾ystem/360的技術(shù)創(chuàng)新推動(dòng)了市場(chǎng)對(duì)計(jì)算的整體需求,消除了計(jì)算機(jī)技術(shù)的諸多謎團(tuán),使得更多工程師在該機(jī)器上運(yùn)行軟件。
值得一提的是,基于VLIW這種顛覆性的單一原創(chuàng)技術(shù)去制造新型計(jì)算機(jī),System/360的成功更多是組合了當(dāng)時(shí)的諸多新想法和新技術(shù),最終產(chǎn)生了巨大的聚變效應(yīng)。
他們以市場(chǎng)需求為導(dǎo)向,按近10年技術(shù)發(fā)展的預(yù)測(cè)去實(shí)現(xiàn)產(chǎn)品。比如,System/360必須提供的新功能:大內(nèi)存、遠(yuǎn)程通信和處理、交互式模式、多用戶環(huán)境。他們還提出通用性和計(jì)算機(jī)家族等革命性概念。為了解決這些問(wèn)題,在技術(shù)實(shí)現(xiàn)上他們盡量采用最新技術(shù),比如超大主存儲(chǔ)器、固體邏輯技術(shù)(混合集成電路)、中斷處理、優(yōu)先級(jí),用微編程實(shí)現(xiàn)復(fù)雜指令等。
這一切的核心在于OS/360操作系統(tǒng),這個(gè)最終花費(fèi)了5億美元的系統(tǒng)成為計(jì)算機(jī)行業(yè)事實(shí)上的標(biāo)準(zhǔn),更為后來(lái)的大型軟件研發(fā)留下了寶貴經(jīng)驗(yàn)。System/360的代碼量從一百萬(wàn)行最終增長(zhǎng)到了一千萬(wàn)行。
尤其兼容性思想是一個(gè)偉大的觀念革新。它第一次實(shí)現(xiàn)了兼容多款機(jī)型,在一定程度上解決了用戶在升級(jí)計(jì)算時(shí)遇到的重編程問(wèn)題。這套新系統(tǒng)提升了新功能的價(jià)值,并使IBM能以相對(duì)較低的成本生產(chǎn)新機(jī)器。在它之后,他們很快就生產(chǎn)出與其兼容的IBM 370,運(yùn)算速度最快的370/168機(jī)型可達(dá)到每秒250萬(wàn)次。
System/360還有其他一系列技術(shù)創(chuàng)新。軟件工程的必讀“圣經(jīng)”《人月神話》第五章“畫(huà)蛇添足”中提到了動(dòng)態(tài)鏈接庫(kù)、運(yùn)行時(shí)快照和調(diào)試等開(kāi)創(chuàng)性工作。此外,IBM將其數(shù)據(jù)格式由當(dāng)時(shí)最流行的6位字節(jié)轉(zhuǎn)變成了現(xiàn)在所用的8位字節(jié),使System/360滿足各種計(jì)算處理的需求。而它所推出的固態(tài)邏輯技術(shù)是集成電路的先驅(qū),使得機(jī)器比當(dāng)時(shí)的競(jìng)爭(zhēng)產(chǎn)品更快、體積更小。
當(dāng)然,System/360的優(yōu)勢(shì)后來(lái)也成為它的弱點(diǎn),由于它采用同一種體系結(jié)構(gòu)的計(jì)算機(jī)家族,所以一旦競(jìng)爭(zhēng)對(duì)手發(fā)現(xiàn)其體系結(jié)構(gòu)的缺陷,就可以打擊IBM的全線產(chǎn)品。但這是另一個(gè)故事了。
Vincent Learson, Bob Evans, Frederick Brooks, Erich BIoch, Gene Amdahl
更重要的是,小沃森、利爾森的強(qiáng)大魄力和冒險(xiǎn)精神使這一切變成可能,后來(lái)參與設(shè)計(jì)System/360的關(guān)鍵人物也獲得了極高榮譽(yù)。
作為System/360和相關(guān)項(xiàng)目背后的主要驅(qū)動(dòng)力,利爾森隨后接班小沃森成為IBM總裁。憑借在此項(xiàng)目中的杰出貢獻(xiàn),負(fù)責(zé)兼容性目標(biāo)和整個(gè)System/360事業(yè)的工作組組長(zhǎng)伊萬(wàn)斯由于升任IBM技術(shù)副總裁,并且與工作組成員布魯克斯被并稱(chēng)為“IBM/360之父”,1985年,他們還與架構(gòu)經(jīng)理艾里奇·布洛赫(Erich BIoch)一起獲得了美國(guó)國(guó)家技術(shù)獎(jiǎng)。
布魯克斯提出許多現(xiàn)代計(jì)算機(jī)體系結(jié)構(gòu)新概念,比如“計(jì)算機(jī)架構(gòu)”一詞,他還發(fā)現(xiàn)了軟件開(kāi)發(fā)的“布魯克斯定律”,他曾提出程序中斷系統(tǒng)理念,這啟發(fā)了世界上首個(gè)交互式多道程序操作系統(tǒng)的設(shè)計(jì),讓用戶在擊鍵時(shí)就能看到屏幕顯示,而計(jì)算機(jī)運(yùn)行卻不會(huì)產(chǎn)生混亂。1999年,他獲得了圖靈獎(jiǎng),以表彰其“對(duì)計(jì)算機(jī)體系結(jié)構(gòu)、操作系統(tǒng)和軟件工程作出了里程碑式的貢獻(xiàn)”。
工作組成員阿姆達(dá)爾發(fā)明了計(jì)算機(jī)體系結(jié)構(gòu)理論中的“阿姆達(dá)爾定律”,即并行計(jì)算的能力受限于串行指令。他在1969成為IBM Fellow,但在1970年被IBM否決掉開(kāi)發(fā)巨型機(jī)計(jì)劃后,他連續(xù)創(chuàng)辦了阿姆達(dá)爾公司、三部曲公司、CDS等五家計(jì)算機(jī)公司。
布洛赫主要負(fù)責(zé)固態(tài)邏輯技術(shù)的研發(fā),為System/360提供卓越的功率、速度和內(nèi)存,所有這些都成為了計(jì)算的基礎(chǔ)。他在IBM工作了32年,期間還開(kāi)發(fā)了STRETCH超級(jí)計(jì)算機(jī)系統(tǒng),曾被任命為IBM數(shù)據(jù)系統(tǒng)部門(mén)的副總裁。
System/360之后,再也沒(méi)有出現(xiàn)將如此量級(jí)的投入押注到一款產(chǎn)品系列的案例。甚至,小沃森制定了一項(xiàng)政策:“永不宣布將超過(guò)25%以上的產(chǎn)能專(zhuān)門(mén)投入于其中的新技術(shù)?!?/span>
如今,它所帶來(lái)的技術(shù)創(chuàng)新和對(duì)計(jì)算機(jī)產(chǎn)業(yè)的影響,至今還在發(fā)揮巨大作用??梢韵胂?,如果沒(méi)有IBM System/360,計(jì)算機(jī)的大眾化將嚴(yán)重滯后,PC信息時(shí)代的繁榮也將無(wú)從談起。