計算機簡史——試譯

郭曉剛發表於2015-06-12

REVOLUTION, NOT EVOLUTION: SYSTEM/360
革命性的發展:System/360

Although in marketing terms the IBM 1401 had been an outstanding success, inside IBM there was a mishmash of incompatible product lines that threatened its dominance of the industry. Many IBM insiders felt that this problem could be resolved only by producing a “compatible” range of computers, all having the same architecture and running the same software.
雖然在IBM 1401的銷售上成績斐然,可是IBM內部各產品線互不相容,缺乏統一規劃的混亂局面正在侵蝕其行業統治地位。很多IBM內部人員都認為,解決困局的唯一辦法,是生產一種“相容”的系列機型,把機器的架構以及上面執行的軟體都統一起來。

In 1960 IBM was producing no fewer than seven different computer models— some machines for scientific users, others for data-processing customers; some large machines, some small, and some in between. In manufacturing terms IBM was getting precious little benefit from its enormous scale. By simultaneously manufacturing seven different computer models, IBM was being run almost as a federation of small companies instead of an integrated whole. Each computer model had a dedicated marketing force trained to sell into the niche that computer occupied, but these specialized sales forces were unable to move easily from one machine or market niche to another. Each computer model required a dedicated production line and its own specialized electronic components. Indeed, IBM had an inventory of no fewer than 2,500 different circuit modules for its computers. Peripherals also presented a problem, since hundreds of peripheral controllers were required so that any peripheral could be attached to any processor.
1960年的IBM至少同時生產七種型號的計算機,有些針對科研使用者,有些銷售給有資料處理需求的客戶;有大型的,有小型的,還有不大不小的。如果從製造企業的角度來評判,IBM的巨大規模僅僅帶來了微不足道的寶貴利潤。同時生產的七種機型,幾乎將IBM塑造成了一群小企業的聯合,不復為統一運營的整體。每種機型都配備了一支專精的銷售隊伍,他們為將型號打入其目標垂分市場而接受了專門化的訓練,無法輕易地調配於其他的機型或者垂分市場。且每種機型各有專門的生產線和電子元件庫存。IBM為各型機器庫存的不同電路模組品類不低於2,500種,真是一個了不起的數字。問題還出現在外圍裝置方面,因為需要數以百計的外設控制器型號,才能夠讓任意的外設掛載到任意的處理器上。

All this has to be compared with IBM’s punched-card products, where a single range of machines (the 400 series accounting machines) satisfied all its customers. The resulting rationalization of production processes and standardization of components had reduced manufacturing costs to such an extent that IBM had no effective competition in punched-card machines at all.
這種局面很難不被用來和IBM過去的穿孔卡片產品做對比,後者以一個機型系列(400系列會計機)滿足了所有的客戶,結果由於生產流程的合理化和元件的標準化而大幅降低了生產成本,以至於市場上根本找不到足以和IBM產品形成有效競爭的穿孔卡片機器。

The biggest problem, however, was not in hardware but in software. Because the number of software packages IBM offered to its customers was constantly increasing, the proliferation of computer models created a nasty gearing effect: given m different computer models, each requiring n different software packages, a total of m × n programs had to be developed and supported. This was a combinatorial explosion that threatened to overwhelm IBM at some point in the not-too-distant future.
然則硬體還不是最大的問題,軟體才是。由於IBM提供給客戶的軟體包數目持續在增加,劇增的機型種類引發了難以承受的放大效應:假設有m種不同型號的計算機,各需要n種不同的軟體包,那麼一共需要開發和維護m × n種程式。恐怕用不了多長時間,IBM就會被這樣的“組合爆炸”所壓垮。

Just as great a problem was that of the software written by IBM’s customers. Because computers were so narrowly targeted at a specific market niche, it was not possible for a company to expand its computer system in size by more than a factor of about two without changing to a different computer model. If this was done, then all the user’s applications had to be reprogrammed. This often caused horrendous organizational disruption during the changeover period. Indeed, reprogramming could be more costly than the new computer itself. As IBM appreciated only too well, once a company had decided to switch computer models, it could look at computers from all manufacturers—not just those made by IBM.
客戶自己編寫的軟體也面臨同樣嚴峻的問題。由於IBM給機型劃定的垂分市場過於狹窄,客戶企業對其計算機系統的規模擴充套件達到約兩倍大小之後,就必須更換為另一種型號。屆時企業全部的使用者程式都必須重新編寫 。遷移工作往往造成客戶企業在過渡期內極其嚴重的組織混亂。而重程式設計序的成本說不定還要超過新機器本身的價錢。IBM心知肚明,一旦客戶企業決定更換機型,IBM的產品並非唯一的選項,機型的競爭者可能來自所有的廠商。

All these factors suggested that IBM would sooner rather than later have to embrace the compatible-family concept. But in IBM’s case this would be particularly challenging technically because of the wide spectrum of its customers in terms of size and applications. A compatible series would have to satisfy all of IBM’s existing customers, from the very smallest to the very largest, as well as both its scientific and commercial customers. And the new machine would have to be compatible throughout the product range, so that programs written on one machine would execute on any other—more slowly on the small machines, certainly, but they would have to run without any reprogramming at all.
各方面的因素都昭示著,IBM奉行“相容系列”的概念已是箭在弦上。然而IBM有其特殊的技術障礙需要克服,它的客戶群體無論規模還是應用領域都分佈得太廣泛了。新的相容機型系列必須滿足全部的現有客戶,不管它們的規模差別有多大,也不管它們從事的領域是科研還是商業。系列中新出的型號還必須相容以往的全部型號,以便在一種型號上編寫的程式可以任意地拿到其他型號上去執行——當然在小一些的機器上會執行得比較慢,但是必須能夠不經任何重新編寫就直接執行。

The decision to produce a compatible family was not so clear-cut as it appears in hindsight, and there was a great deal of agonizing at IBM. For one thing, it was by no means clear that compatibility to the extent proposed was technically feasible. And even if it were, it was feared that the cost of achieving compatibility might add so much to the cost of each machine that it would not be competitive in the marketplace. Another complication was that there were factions within IBM that favored consolidating its current success by building on its existing machines. The 1401 faction, for example, wanted to make more powerful versions of the machine. These people thought it was sheer madness for IBM to think of abandoning its most successful product ever. If IBM dropped the 1401, they argued, thousands of disaffected users would be left open to competitors. Another faction inside IBM favored, and had partially designed, a new range—to be known as the 8000 series— to replace IBM’s large 7000 series machines.
製造相容系列的決策並不像事後看起來那麼理所當然,IBM實際上對此疑慮重重。首先,沒有人知道技術上是否真的能夠實現預想中那麼大跨度的相容性。即使能做到,那麼還要擔心實現相容性的成本會不會太高,攤到每一臺機器之後,是否還能保持一個有市場競爭力的單價。且IBM內部不同的派系也在使問題複雜化,一部分人希望立足於現有的機型,以鞏固當前取得的成功。例如1401的支持者希望生產該機型的加強版本。拋棄IBM有史以來最成功的一款產品,只會被他們認為是完全喪失理智的行為。照他們的看法,IBM放棄1401機型,等於向競爭對手拱手讓出數以千計的離心使用者。另一部分人更看好已完成部分設計的8000系列,這是一個意圖取代7000系列大型機器的新機型系列。

But it was the software problem that was to determine product strategy, and by late 1960 the tide was beginning to turn toward the radical solution. Not one of IBM’s computers could run the programs of another, and if IBM was to introduce more computer models, then, as a top executive stated, “we are going to wind up with chaos, even more chaos than we have today.” For the next several months planners and engineers began to explore the technical and managerial problems of specifying the new range and of coordinating the fifteen to twenty computer development groups within IBM to achieve it. Progress was slow, not least because those involved in the discussions had other responsibilities or preferred other solutions— and the compatible-family concept was still no more than a possibility that might or might not see the light of day.
最後還是軟體問題給產品策略敲定了方向,1960年末的形勢開始倒向最激烈的方案。沒有一種IBM機型能夠執行屬於另一種機型的程式,如果再增加新機型的話,IBM一名最高階別的管理層說,“我們會墜入混亂的深淵,比現在更深的深淵。”接下來的幾個月裡,規劃師們和工程師們開始為一個需要動用15到20個計算機研發組的新機型系列的設計任務,勘察技術上和管理上可能遭遇的困難。這項工作進展遲緩,部分原因是討論的參與者們或者另有職任,或者傾心於另外的方案,但更主要的因素還在於相容系列的概念本身仍然只是一種理論上的可能性,能否瓜熟蒂落尚未可知。

In order to resolve the compatible-family debate rapidly, in October 1961 T. Vincent Learson, Tom Watson Jr.’s second-in-command at IBM, established the SPREAD task group, consisting of IBM’s thirteen most senior engineering, software, and marketing managers. SPREAD was a contrived acronym that stood for Systems, Programming, Review, Engineering, And Development, but which was really meant to connote the broad scope of the challenge in establishing an overall plan for IBM’s future data-processing products. Progress was slow and, after a month, Learson, an archetypal IBM vice president, became impatient for a year’s end decision. In early November he banished the entire task group to a motel in Connecticut, where it would not be distracted by day-to-day concerns, with “orders not to come back until they had agreed.”
為了儘快了斷圍繞相容系列的爭執,1961年10月,Tom Watson Jr.在IBM的左右手——T. Vincent Learson招集公司內13名資歷最深厚的工程、軟體、市場經理,組建了SPREAD專責工作組。組名“SPREAD”由“Systems, Programming, Research, Engineering, And Development”這幾個單詞的首字母構成,雖然拼湊的意味明顯,但其中系統、程式設計、研究、工程、開發等用詞,實際上反映了IBM在為其未來資料處理產品制定一份總體規劃的時候,所面臨的挑戰是大範圍、大跨度的。工作組依舊遲緩的進展在一個月後耗盡了Learson的耐心,這位垂範後來者的IBM副總裁決意在新年到來之前得出結論。於是在11月初,整個工作組被“流放”到了康涅狄格州的一家汽車旅館以隔絕日常事項的干擾,他們從Learson那裡得到的命令是“不達成一致不許回來”。
【原文SPREAD的全稱“Systems, Programming, Review, Engineering, And Development”疑有誤,查包括來源於IBM自身的多份資料,“Review”處均作“Research”。】

The eighty-page SPREAD Report, dated 28 December 1961, was completed on virtually the last working day of the year. It recommended the creation of a socalled New Product Line that was to consist of a range of compatible computers to replace all of IBM’s existing computers. On 4 January the SPREAD Report was presented to Watson Jr., Learson, and the rest of IBM’s top management. The scope of the report was breathtaking—as was the expense of making it a reality. For example, the software alone would cost an estimated $125 million—at a time when IBM spent just $10 million a year on all its programming activities. Learson recalled that there was little enthusiasm for the New Product Line at the meeting:
80頁篇幅的“SPREAD報告書”上標記了完成日期,1961年12月28日,幾乎是該年度的最後一個工作日。報告中建議開設一條“新產品線”,以該產品線中的一系列相容機型來取代IBM現有的全部機型。SPREAD報告書在次年的1月4日被呈報給Watson Jr.和Learson為首的IBM最高管理層。這份報告書有著驚人的巨集大視野,而將之付諸實現所需的花費也是同樣驚人的。例如僅軟體的部分就預計花費1.25億美元,而當時IBM一年中所有程式設計活動的開銷才不過1千萬美元。Learson回憶,“新產品線”計劃在會上幾乎得不到積極的響應:

The problem was, they thought it was too grandiose. . . . The job just looked too big to the marketing people, the financial people, and the engineers. Everyone recognized it was a gigantic task that would mean all our resources were tied up in one project—and we knew that for a long time we wouldn’t be getting anything out of it.
問題在於,大家認為計劃太過巨集偉……市場人員、財務人員和工程師都覺得這件事情太大了。所有人都清楚,如此龐大的計劃會讓我們所有的資源都被拴在一個專案上,而這個專案顯然很長一段時間都不會有任何產出。

But Watson and Learson recognized that to carry on in the same old way was even more dangerous. They closed the meeting with the words, “All right, we’ll do it.”
然而,Watson和Learson已經認定,因循守舊的危險只會更大。他們用一句話結束了會議,“好,我們幹吧。”

Implementation of the New Product Line got under way in the spring of 1962. Considerable emphasis was placed on commercial secrecy. For example, the project was blandly known as NPL (for New Product Line), and each of the five planned processors had a misleading code number—101, 250, 315, 400, and 501—that gave no hint of a unified product line and in some cases was identical to the model numbers of competitive machines from other manufacturers; even if the code numbers leaked, they would merely confuse the competition.
“新產品線”的實現工作於1962年的春季發軔。保守業務上的祕密成了重中之重。例如,該專案被毫不起眼地命名為“NPL”(即New Product Line/新產品線的縮寫),而規劃中的五款處理器的數字序號也都做了手腳,它們分別被編號為101、250、315、400和501,從序號上完全看不出統屬於同一條產品線,有的序號甚至與其他廠商的競爭機型完全一致。這樣,就算序號被洩露出去,也只會讓競爭對手迷惑不已。

The New Product Line was one of the largest civilian R&D projects ever undertaken. Until the early 1980s, when the company began to loosen up somewhat, the story of its development was shrouded in secrecy. Only one writer succeeded in getting past the barrier of IBM’s press corps, the Fortune journalist Tom Wise. He coined the phrase “IBM’s $5 billion gamble” and wrote “not even the Manhattan Project which produced the atomic bomb in World War II cost so much”; this sounded like hyperbole at the time, but Wise’s estimate was about right. Wise reported that one of the senior managers “was only half joking when he said: ‘We called this project “You bet your company.”’” It is said that IBM rather liked the swashbuckling image that Wise conveyed, but when his articles went on to recount in detail the chaotic and irrational decision-making processes at IBM, Watson Jr. was livid and “issued a memorandum suggesting that the appearance of the piece should serve as a lesson to everyone in the company to remain uncommunicative and present a unified front to the public, keeping internal differences behind closed doors.”
“新產品線”專案的龐大規模在民用研發的歷史上絕無僅有。專案的開發情況一直作為公司的祕密被嚴格地保護著,直到二十世紀八十年代初期才有所鬆動。期間只有一位記者成功地穿越了IBM的外宣防線,他就是《財富》(Fortune)雜誌的Tom Wise。“IBM的五十億豪賭”這個說法即出自Tom Wise,他寫道,“就連第二次世界大戰中研製原子彈的曼哈頓工程也不曾耗費如此巨資”。“五十億”美元實際上是一個比較準確的估算數字,然而在當時看起來彷彿作者的誇張修辭。報導中提到IBM的一位高階經理“半開玩笑地說:‘這個專案我們叫它“拿公司當賭注”專案。’”。據說IBM很欣賞Wise一系列報導所塑造的傳奇冒險形象,只是當報導開始詳細描寫公司內部混亂而不理性的決策過程之後,Watson Jr.大為震怒,他“簽發了一份備忘錄,認為出現這樣的報導,公司上下所有人都應當吸取教訓,學會保持沉默,並且對外展現一致的口徑,把內部分歧關在門後”。

The logistics of the research program were awesome. Of the five planned computer models, the three largest were to be developed at IBM’s main design facility in Poughkeepsie, New York, the smallest in its Endicott facility in upstate New York, and the fifth machine in its Hursley Development Laboratories in England. Simply keeping the machine designs compatible between the geographically separate design groups was a major problem. Extensive telecommunications facilities were used to keep the development groups coordinated, including two permanently leased transatlantic lines—an unprecedented expense in civilian R&D projects at the time. In New York hundreds and eventually thousands of programmers worked on the software for the New Product Line.
服務於研發計劃的後勤工作也令人歎為觀止。計劃中五種機型裡,最大的三種被安排在IBM位於紐約州Poughkeepsie的主要設計園區,最小的型號則被分配給紐約州北部的Endicott園區,還有第五種機型歸屬遠在英格蘭的Hursley開發實驗室。這些地理上分隔的設計組,僅僅要維持機型設計的相容性就已經是大問題。IBM為協調各開發組投入了大量的通訊設施,其中包括兩條永久租用的大西洋跨洋電纜——如此規模的投入在當時的民用研發專案中是空前的。在紐約還有數以百計、千計的程式設計師在為“新產品線”開發軟體。

All told, direct R&D came to around $500 million. But ten times as much again was needed for implementation—to tool up the factories, retrain marketing staff, and re-equip field engineers. One of the major costs was for building up a capability in semiconductor manufacturing, in which IBM had previously been weak. Tom Watson Jr., who had to cajole his board of directors into sanctioning the expenditure, recalled:
直接的研發投入合計在5億美元上下,到實際做出產品來,則還需要十倍的投入——用於配置工廠裝置,複訓市場人員,以及現場工程師的整備。其中很大的一筆經費被用來加強IBM一度薄弱的半導體產能。Tom Watson Jr.半哄半騙地讓董事會核准了該項經費,他回憶道:

Ordinary plants in those days cost about forty dollars per square foot. In the integrated circuit plant, which had to be kept dust free and looked more like a surgical ward than a factory floor, the cost was over one hundred and fifty dollars. I could hardly believe the bills that were coming through, and I wasn’t the only one who was shocked. The board gave me a terrible time about the costs. “Are you really sure you need all this?” they’d say. “Have you gotten competitive bids? We don’t want these factories to be luxurious.”
當時一般的工廠建築每平方英尺造價約四十美元。而積體電路廠房因為有無塵的要求,形象上與不同於傳統車間,反而更接近外科手術室的樣子,其每平方英尺造價則超過一百五十美元。我幾乎不敢相信經費申請居然得到了批准,吃驚的也不止我一個。為了金額的事情我在董事會備受責難。“你確定真的需要這麼多嗎?”他們問我。“你有沒有招標啊?工廠沒必要那麼豪華吧。”

This investment put IBM into the position of being the world’s largest manufacturer of semiconductors.
這筆投資將IBM推上了全世界最大半導體生產商的位次。

By late 1963, with development at full momentum, top management began to turn its thoughts to the product launch. The compatible range had now been dubbed System/360, a name “betokening all points of the compass” and suggesting the universal applicability of the machines. The announcement strategy was fraught with difficulty. One option was to make a big splash by announcing the entire series at once, but this carried the risk that customers would cancel their orders for existing products and IBM would be left with nothing to sell until the new range came on stream. A safer and more conventional strategy would be to announce one machine at a time over a period of a couple of years. This would enable the switch from the old machines to the new to be achieved much more gently, and it was, in effect, how IBM had managed the transition from its old punched-card machines to computers in the 1950s.
到了1963年末,研發正進行得如火如荼的時候,最高管理層開始著眼於產品的釋出。相容機型系列被冠名“System/360”,“寓意羅盤上的每一個角度”,以此象徵該系列全方位的適應性。IBM在釋出策略上左右為難。如果一次性公佈整個系列,雖則聲勢浩大,卻可能導致客戶取消現有產品的訂單,而IBM在新系列投產之前又沒有別的產品可供銷售。較為穩妥、保守的策略是每次只釋出一個型號,分散在兩三年的時間裡釋出完畢。這樣新舊機型可以較為平穩地完成交接,實際上這也是IBM在五十年代從打孔卡片機器過渡到電子計算機時曾經採取的方案。

However, all internal debate about the announcement strategy effectively ceased in December 1963 when Honeywell announced its model 200 computer. The Honeywell 200 was the first machine to challenge IBM by aggressively using the concept of IBM compatibility. The Honeywell computer was compatible with IBM’s model 1401, but by using more up-to-date semiconductor technology it was able to achieve a price/performance superiority of as much as a factor of four. Because the machine was compatible with the 1401, it was possible for one of IBM’s customers to return an existing rented machine to IBM and acquire a more powerful model from Honeywell for the same cost—or a machine of the same power for a lesser cost. Honeywell 200s could run IBM programs without reprogramming and, using a provocatively named “liberator” program, could speed up existing 1401 programs to make full use of the Honeywell 200’s power.
圍繞釋出策略的內部爭執在1963年12月,Honeywell釋出其200型計算機的一刻全部失去了意義。Honeywell 200機型是第一臺主動打出“IBM相容”的旗號來挑戰IBM的機器。Honeywell的機型相容IBM 1401,因為使用了更先進的半導體技術,其效能價格比可高出3倍之多。出現這樣一臺相容1401的機型,意味著IBM的客戶可以退回租用中的IBM機器,轉而從Honeywell用同樣的價錢得到一臺效能更強的機器,或者用更低的價錢的到一臺效能相同的機器。Honeywell 200可不經重新程式設計直接執行IBM程式,1401程式經過故意取名為“解放者”(Liberator)的軟體工具轉換後,即可充分發揮Honeywell 200的速度優勢。

相關文章