當前位置: 華文世界 > 數碼

萬字長文:讀懂大型電腦的前世今生!

2024-06-27數碼

大家好,我是老貓, 今天我們來考古下大型電腦。

很多人都知道,個人電腦之前被稱為 微型電腦 ,那麽有微型電腦就有小型機、中型機、 大型電腦 今天我們重點來聊聊大型電腦。

▉ 什麽是大型電腦?

可能小夥伴會問,什麽是大型電腦?

我們先來看看維基百科是這樣介紹大型電腦的, 大型電腦或者稱大型主機,英文名mainframe。 大型電腦使用專用的處理器指令集、作業系統和套用軟件。大型電腦一詞,最初是指裝在非常大的帶框鐵盒子裏的大型電腦系統,以用來同小一些的迷你機和微型機有所區別。大多數時候它卻是指system/360 開始的一系列的IBM電腦。

大型電腦主要用於大量數據和關鍵專案的計算,例如銀行金融交易及數據處理、人口普查、企業資源規劃等。

作為大型電腦目前 僅存的巨頭廠商 ,IBM是這樣介紹大型電腦的:從核心而言,大型電腦是高效能的電腦,具有大量記憶體和處理器,能夠即時處理數以十億計的計算和事務。大型電腦是需要高度的彈性、安全性和敏捷性的商用數據庫、事務伺服器和套用的關鍵所在。

說人話就是:大型電腦是給有錢人用的頂級伺服器,具有頂級的計算能力、可靠性以及售後能力。

▉ 為什麽需要大型電腦?

很多人可能會問,為什麽需要大型電腦?

答案就是無可替代, 大型電腦是計算能力非常強大、可靠性非常高的電腦, 大型電腦出現就是為了滿足專門的需求,所有東西都是封閉的,是真正的軟硬件一體機,程式碼都是針對某種場景特殊最佳化的, 所以可以應對大量數據和關鍵任務,通常用於金融、銀行和政府部門。

我們前面提到的中型機、小型機在效能、穩定性等方面要差很多, 完全滿足不了大量數據和關鍵任務的需求。 同理,x86伺服器雖然性價比高,但是效能和穩定性就更差了。

可能有人會說,我們不是有超級電腦嗎?這個不能替代大型電腦嗎? 超級電腦和大型電腦之間的差異在於它們處理的問題類別。 一台超級電腦將所有的數碼技術都集中在嘗試解決單個問題上。大型電腦使用其所有的計算能力來執行數十億的小事務。這也是大型電腦經久不衰的重要原因。

我們用個比喻來形容下大型電腦, 在大型電腦中,任務像主人,作業系統和CPU是管家,它們都圍繞著任務轉,一切都井井有條,精細分配,確保滿足任務要求,在業務之初,就大概知道響應時間最差是多少。 而在Unix和小型機(及以後的PC,手機),任務就像視窗排隊打飯的大學生,作業系統是視窗大媽,業務是否堆積,排程是否平順,沒人管的,但只要大媽手快,也沒見誰吃不上飯,至於偶爾視窗堆積(卡頓),誰在意呢?

但很多場景,是不允許有卡頓的,例如,你在銀行存錢,錢存進去了,但是查詢銀行卡余額一直沒有增加,這是肯定不行的。

▉ 大型電腦的發展史

在大型電腦的幾十年的發展史中,大型電腦既迎來過無數印花與掌聲、也經受過詆毀與指責。它誕生後而又重生(而且不止一次),甚至曾經宣告滅亡。然而時至今日,大型電腦在眾多巨頭級企業當中仍然扮演著提供計算資源的關鍵性角色,其生命力也將繼續延續下去。

下面我們將回顧大型電腦多年來的發展歷程, 閑言少敘,下面書歸正傳。

The Harvard Mark I(哈佛馬克一號)

大型電腦之旅始於IBM,相信這應該並不令人意外。在20世紀30年代,當時人們還是手持計算尺來計算,IBM主要以打孔卡片機而聞名。但 IBM迎來了一位遠見卓識的領導杜文·沃森, 這讓IBM從眾多商用機器銷售商之一轉變成為了後來的電腦壟斷公司。

Harvard機器是杜文·沃森願景的體現,盡管從實際的角度來看,它並不被很多人認為是大型電腦技術的一個起點,但是仍然值得我們一看。

這一切都始於1936年,當時哈佛研究員霍華德·艾肯正在嘗試解決一個與真空管設計相關的問題。為了取得進展,他需要解決一組非線性方程式,而當時沒有可用的東西可以為他做這件事。 艾肯向哈佛的研究員提出,你們應該建造一個能夠解決這些問題的大型小算盤。但他的請求並沒有得到很好的回應。

隨後艾肯接觸了蒙路計算公司,該公司拒絕了這個提議,於是艾肯把這個提議帶到了IBM。 艾肯的提議只是一個需求文件,並不是一個真正的需求,而是需要由IBM來弄清楚如何滿足這些需求 。最初這個商機的成本估算需要15000美元,但是到1939年IBM正式接受提議時,這個數碼迅速膨脹到100000美元。而最終IBM花費了大約200000美元來制造哈佛馬克一號。

直到1943年哈佛馬克一號才執行了第一次計算。因為電腦需要在不同的計算單元之間進行機械同步,所以由一個五馬力馬達驅動的軸貫穿其整個長度,電腦「程式」是透過在插線板中插入電線連結來建立的,數據是透過打孔卡片讀取,結果透過打孔卡片或電動打字機打印出來。 即使按照當時的標準,哈佛馬克一號的計算也是很慢的, 它每秒只能做三次加法或減法,機器做一個單獨的乘法需要相當緩慢的六秒鐘。對數和三角形計算每個都需要超過一分鐘。

正如前面提到的, 哈佛馬克一號進入了一個技術死胡同,在它使用的15年裏並沒有做太多重要的工作。 盡管如此,它 代表了有史以來制造的第一台全自動電腦。 雖然它非常慢,機械的並且缺少像條件分支這樣的必需品,但它是一台電腦的雛形,代表了人類向第一台電子電腦的邁進。

阿塔納索夫-貝瑞電腦(Atanasoff-BerryComputer,簡稱ABC)

如今,ABC已經被公認是第一台電子電腦。

你可能會認為「電子」是多余的,但正如我們剛剛看到的哈佛馬克一號,它確實可以稱為電腦,只不過沒有電子元件,而是使用機械開關、可變齒輪、繼電器和手搖曲柄。 相比之下,ABC使用電子進行所有計算,因此代表了計算的一個重要裏程碑。

雖然它是電子的,但電腦的部件與今天使用的部件非常不同。事實上, 當時在1939年約翰·阿塔納索夫獲得資金建造原型時晶體管和集成電路並沒有出現,因此使用了當時可用的東西:真空管。 真空管可以放大訊號並充當開關,因此可以用來建立邏輯電路。然而,它們使用了很多電力,變得非常熱,並且非常不可靠。真空管是當時人們權衡利弊的選擇,也成為當時電腦一個不好的特征。

ABC透過真空管建立的邏輯電路是快速的, 並且使用的是二進制計算方法, 可以在每秒30次操作中進行加法和減法計算。雖然今天使用二進制系統會很正常,但在當時,由於許多人不熟悉這種數碼系統,所以電腦使用二進制系統是很少見的。

ABC的另一個重要的技術是使用電容器進行記憶體儲存, 但在當時記憶體並不是真正的隨機,因為它實際上包含在一個每秒旋轉一次的旋轉鼓中。特定的記憶體位置只能在鼓的該部份在讀取器上方時讀取,這顯然有嚴重的延遲問題。

後來,ABC增加了一台打孔卡片機(當時企業非常廣泛地使用打孔卡片來儲存記錄並在它們上面執行計算),以保存不適合鼓記憶體儲的數據。

在現在看來,這台電腦在當時並不是很有用,它甚至不是可編程的。但至少在概念層面上,它對電腦來說是一個非常重要的裏程碑,可以說是未來電腦的祖先。

另外值得註意的是 ,在這台機器工作時,阿塔納索夫先生邀請了一個名叫 約翰·莫奇利 的人來看他的創造。讓我們記住這個人的名字,他在後面很重要。

ENIAC

1941年12月7日,日本襲擊了珍珠港,將美國卷入第二次世界大戰的沖突。

每個參戰國都有一個問題,即為他們 編制槍支和火炮編制的數據表格。 射表描述了仰角、射高、射程等效能諸元之間的關系。典型的射表包括 3000 條彈道數據,即便利用當時效能最強大的計算工具,編制一份完整的射表也要一個月時間。這種速度根本無法滿足戰時需求,實驗室主管心急如焚。

因此,美國軍方向賓夕法尼亞大學的摩爾電氣工程學院提供了資金,

以建造一台電子電腦來促進這項工作。而我們上面提到的 約翰·莫奇利 就在那裏,然後他與一位非常有才華的研究生 約翰·埃克特一起承擔了這個專案 。這次合作更改了歷史行程和戰爭結果,並為人類往後幾十年的生活方式做出了巨大變革。

但是第二次世界大戰在機器完成之前就結束了。在1946年完成時,ENIAC是一個30噸的怪物,由49英尺高的機櫃、18000個真空管、1500個繼電器、70000個電阻器、10000個電容器和6000個手動開關組成,能消耗200千瓦電。

盡管在戰後完成,ENIAC幾乎被證明是無用的。但這台機器每秒能夠進行5000次加法、357次乘法或38次除法,其效能令人難以置信。人類數學家需要20小時解決的問題,ENIAC只需要30秒。

除了所有真空管機器固有的不可靠性之外, 這台機器的主要問題在於它在傳統意義上並不是可編程的。 "程式"是透過在插線板和開關組上工作的"ENIAC女孩"輸入的。這通常需要幾個小時到幾天。此外,與ABC電腦相比,ENIAC是一個倒退,它使用十進制而不是二進制數碼。

盡管如此, ENIAC 對美國來說是一個非常有用的機器,尤其是後來增加的增強功能。 在其使用壽命期間,它處理了從天氣預報、隨機數研究、熱點燃、風洞設計、火炮軌跡計算,甚至是氫彈開發的問題。事實上,直到1955年它退役時,據估計ENIAC單獨完成的計算比1945年之前所有人類完成的計算還要多。

雖然ENIAC的故事在1955年就結束了,但莫奇利和埃克特這兩位電腦領域的傳奇人物的故事還遠沒有基礎。

EDVAC

當時,雖然ENIAC執行很快,但在ENIAC進行第一次測試之前,莫奇利和埃克特意識到ENIAC存在的種種不足。

ENIAC有幾個主要問題。首先它的 儲存空間非常小。 而且它必須透過重新布線來重新編程,這可能需要幾個小時甚至幾天,而且由於電腦使用了那麽多真空管, 它不夠可靠 。同時除了不可靠之外,真空管還使用了 很多電力,占用了很多空間,並產生了很多熱量。 據稱當它執行時,莫爾學院所在小鎮的燈光都會變暗。

在1944年8月莫奇利和埃克特便提出研制 ENIAC 的後繼機型——EDVAC(離散變量自動電子電腦)。

與ENIAC 不同,EDVAC有兩個重要的變化 。首先,EDVAC是二進制而不是像ENIAC那樣的十進制,這更有效。其次,EDVAC不需要你每次想改變「程式」時重新給機器布線,EDVAC引入了將程式儲存在記憶體中的想法,就像它是數據一樣。 這就像我們今天所做的,為應用程式和它們的數據分別設定RAM區域,處理器根據存取記憶體的上下文知道它是數據還是可執行檔。

此外, 記憶體不再由真空管組成,而是以水銀中的電脈沖形式儲存。 水銀延遲線記憶體在儲存數據所需的電子方面比以往任何時候都高效100倍,使得更大量的記憶體變得可行且更可靠。

EDVAC是一個重大進步,直到1960年退役,證明是非常有用的。 它是一個二進制儲存程式電腦,比ENIAC可以編程的速度要快得多。它也小得多,重量不到9噸,消耗「只有」56千瓦的電力。 盡管如此,莫奇利和埃克特兩位傳奇人物並沒有滿足。

UNIVAC

1946 年春天,新上任的莫爾學院研究主管要求莫奇利和埃克特將所有專利成果移交給賓夕法尼亞大學,遭到兩人斷然拒絕。

莫奇利和埃克特堅信制造電腦是一門有利可圖的生意, 兩人決定從莫爾學院辭職,並利用風險投資創立了全球第一家電腦公司——電子控制公司(Electronic Control Company), 在1947年兩人將公司註冊為Eckert-Mauchly電腦公司,或稱EMCC。

EMCC員工

他們的離開推遲了EDVAC的完成,以至於基於EDVAC設計的EDSAC實際上在它之前就完成了。然而,這個充滿活力的二人組想要探索這種新技術提供的商業機會,而這在大學資助的研究中是不可能的,所以他們根據他們對EDVAC的想法開發了一台電腦UNIVAC。

UNIVAC是有史以來第一台商業電腦 ,在1951年推出後,共有46個Units被出售給企業和政府。

在UNIVAC之前,所有電腦都是獨一無二的, 這意味著它們只制造了一個。UNIVAC的不同之處在於可以設計出多個相同的UNIVACS。同時埃克特和莫奇利還得出結論, 電腦不僅可以用於計算,還可以用於數據處理,而當時他們許多同時代人認為使用同一台機器解決微分方程式和支付賬單的想法是荒謬的。 無論如何,這一結論對於UNIVAC的設計和成功至關重要。

在設計細節層面上,UNIVAC由5200個真空管組成(幾乎所有的都在處理器中),重29000磅,消耗125千瓦電力,並以驚人的2.25兆赫時鐘速度執行。它每秒能夠進行455次乘法,並可以在其水銀延遲線記憶體中儲存1000個單詞。每個記憶體單詞可以包含兩個指令、一個11位數碼和符號,或12個字母字元。雖然處理速度大致相當於ENIAC完成它能夠執行的任務所需的時間。但在幾乎所有其他方面,UNIVAC都要比ENIAC更好。

而且最重要的是, UNIVAC比ENIAC更可靠 (主要是因為它使用的真空管少得多)。此外,它的名字中的「Automatic」暗示了它不需要人力來執行。所有數據都儲存在金屬磁帶驅動器中(而不是每次運行程式時都必須手動載入紙帶或打孔卡片)。使用磁帶使得實際處理速度比ENIAC快得多,因為I/O瓶頸得到了緩解。

當然,UNIVAC還引入了其他一些便利功能,如緩沖區(類似於緩存),在相對較快的延遲線和相對較慢的磁帶驅動器之間,用於數據檢查的額外計算。

為推廣 UNIVAC,雷鳴燈-蘭德說服哥倫比亞廣播公司采用 UNIVAC 預測 1952 年美國總統選舉的結果。莫奇利在他人協助下編寫了一套預測程式,嘗試利用部份關鍵州的提前投票結果預測大選結果。

最終,德懷特·艾森豪威爾擊敗阿德萊·史蒂文森當選第 34 任美國總統, 兩人分別獲得 442 張和 89 張選舉人票,這個結果與 UNIVAC 最初的預測(438 票和 93 票)相當接近。 這讓UNIVAC聲名鵲起。

哥倫比亞廣播公司利用 UNIVAC 預測 1952 年美國總統選舉的結果

UNIVAC 是第一台商業上可用的電腦,使Remington Rand公司(後來收購了EMCC)在新興的電子電腦行業中占據了非常強勢的地位。但此時IBM在做什麽?

IBM 701

UNIVAC 在大選之夜的出色表現令 IBM 倍感震驚。公司總裁小杜文·沃森決定,IBM 必須立即進軍數據處理電腦市場。

1952年4月29號,IBM所展示的國防電腦最終以IBM 701電子數據處理器材的名號正式與廣大使用者見面了。

從IBM 701開始,IBM開始正式進入大型電腦市場,701和UNIVAC之間有許多相似之處,但也有許多不同之處。 IBM 701記憶體不是儲存在水銀延遲線記憶體中,而是儲存在被稱為「威廉管」的3英寸真空管中, 盡管它們比普通真空管更可靠,但它們仍被證明是電腦最大的不可靠來源。然而,「威廉管」一個好處是一個單詞的所有位可以同時檢索,而不是UNIVAC的水銀延遲線記憶體,記憶體是逐位讀取的。

IBM 701的CPU也比UNIVAC的快得多,幾乎每秒可以執行2200次乘法,而UNIVAC是455次。它還可以每秒執行近17000次加法和減法,以及大多數其他指令。這在當時是顯著的。

另外,IBM的800萬字節磁帶驅動器也非常好,可以比UNIVAC的更快地停止和啟動,每秒能夠讀寫12500個數碼。然而,與擁有緩沖區的UNIVAC不同,IBM 701處理器必須處理所有I/O操作,這可能會嚴重影響基於I/O的應用程式的效能。

1956年,IBM推出了一種名為RAMAC的技術 ,這是電腦的第一個磁盤系統。它允許數據快速從磁盤的任何位置讀取,並且不僅可以連線到701,還可以連線到IBM的其他電腦,包括接下來會看到的IBM 650 磁鼓數據處理機。大多數人都沒有意識到的,這項技術到今天仍然與我們在用的硬碟是一樣的起源。

IBM在當時生產了19台701 Units,這比UNIVAC制造的數量少,但仍然足以防止Remington Rand公司主導大型電腦領域。成本是IBM 701一個嚴重的阻礙,使用者每月花費超過16000美元。另外,701只是IBM回應的一部份。650系統是IBM非常重要的另一個大型電腦系統。

IBM 650磁鼓數據處理機

雖然IBM對UNIVAC的更直接回應是701(以及後來的702),IBM同時還在開發一種名為650磁鼓數據處理機的低端機器。IBM 650定位在像701和UNIVAC這樣的大型主機和當時使用的打孔卡片機之間,當時後者仍然主導著市場。

盡管701引起了大部份興趣,但650卻賺取了大部份錢,並幫助IBM確立了在電子電腦行業的地位。 IBM 650每月的使用成本為3250美元(IBM當時不出售電腦,只出租), 它比701和UNIVAC便宜得多,但仍然比當時非常普遍的打孔卡片機貴得多。總共,這些機器制造並出租了2000多台。雖然這大大超過了701和UNIVAC的部署,但與IBM在同一時期銷售的打孔卡片會計機的數量相比,這個數碼還是微不足道的。

盡管按照電腦標準非常可靠,但它仍然使用真空管,因此本質上不如IBM的機電會計機可靠。此外,它的成本也高得多。最後,機器的外圍器材充其量是平庸的。所以,直到1950年代末,IBM的主導機器是打孔卡片會計機407。

要能夠取代IBM會計機407,需要一場劇變。電腦需要更好的外圍器材,必須變得更可靠、更快,同時成本更低。

旋風電腦專案

旋風電腦專案是具有諷刺意味的。 它的預算遠遠超支,耗時比預期長得多,卻從未在其預期的角色中使用過, 但可以說是電腦領域最重要的技術成就之一。

1943年,當美國空軍給麻省理工學院的傑伊·福雷斯特旋風專案時,他被告知要建立一個模擬器來訓練飛機飛行員,而不是讓他們實際上在飛機中學習。 這個預期用途非常重要,因為它需要現在所說的「即時系統」,因為模擬器必須足夠快地做出反應以模擬現實。 當其他工程師正在開發每秒可以處理1000到10000條指令的機器時,福雷斯特必須建立一台每秒至少能夠處理100000條指令的機器。此外,由於它是一個即時系統,其可靠性必須比當時的其他系統高得多。

這個專案拖延了很多年,直到第二次世界大戰結束後很久。而那時,將其用於飛行模擬器的想法消失了, 有一段時間,他們不太確定這台機器正在被開發做什麽。 直到蘇聯引爆了第一顆原子彈,美國政府決定升級其陳舊且無效的現有防空系統。 其中一部份是開發基於電腦的指揮控制中心。 旋風專案有了新的使命,而且由於當時國際環境岌岌可危,大量資金被投入到這項研發。

然而,在當時,記憶體是一個問題。其它機器使用的水銀延遲線記憶體太慢了, 所以福雷斯特決定嘗試一項有前景的技術:靜電儲存管。 這面臨的一個問題就是當時可用的靜電儲存管還不存在,所以必須在這個之前投入大量的開發工作,然後才會有一個成型的可用產品。

當時,靜電儲存管被認為不可靠,而且它的儲存容量非常令人失望。 因此,福雷斯特一直在尋找更好的技術,開始研究後來被稱為「核心記憶體」的東西。 他把他的工作傳給了也在該專案上工作的研究生比爾·帕皮安,後者在1951年準備好了一個原型,並在1953年用鐵氧體磁芯陣列替換了靜電記憶體作為主要記憶體的電腦。這種陣列使電腦擁有17408個位元的儲存容量,而且非常快,非常可靠,甚至不需要電力重新整理就能保持其值。

核心記憶體是解開謎題的最後一塊拼圖 。旋風電腦在1953年實際上已經完成,並首次部署在科德角。盡管它沒有達到預期的效能水平,但它仍然能夠每秒處理75000條指令。這遠遠超過了當時可用的任何東西。麻省理工學院將這項技術轉移給IBM,生產版本被重新命名為IBM AN/FSQ-7,並在1956年投產。這些怪獸有超過50000個真空管,重超過250噸,使它們成為有史以來建造的最大的電腦。它還消耗了超過一兆瓦的電力,這還不包括必要的空調。

在當時,旋風電腦打算用於跟蹤轟炸機的套用,但直到到1963年才完全執行。具有諷刺意味的是,這時候已經過了旋風真正有用的時代,因為它被設計用於跟蹤轟炸機,而那時,洲際彈道導彈幾年前已經出現。

盡管如此,雖然旋風電腦的實際用途存在疑問,但由它創造或加速的技術卻非常重要。這些不僅包括前述的核心記憶體,還包括印刷電路板、大規模儲存器材、電腦圖形系統(用於繪制飛機)、CRT和甚至是光筆。 將這些電腦連線在一起,使美國在網絡專業知識和數碼通訊技術方面獲得了巨大的優勢。 它甚至有一個現代電腦所缺乏的功能:內建的點煙器和煙灰缸。顯然,花費80億美元完全安裝SAGE(導彈跟蹤系統)是值得的,盡管SAGE從未幫助攔截過一架轟炸機。

IBM 704

1954年宣布的IBM 704是第一台大規模商業可用的電腦系統,采用全自動浮點算術命令,並首次使用為旋風專案開發的磁性核心記憶體。

核心記憶體由微小的甜甜圈形狀的金屬片組成,大小大致與針頭相當,導線穿過其中,可以朝任一方向磁化,給出邏輯值0或1。核心記憶體有許多優點,尤其是它不需要電力來維護其記憶體。它還允許真正的隨機存取,任何記憶體位置都被存取得和其他位置一樣快(當然,使用交錯時除外)。這與以前的記憶體形式不同,它比其他使用的記憶體技術快得多,存取時間為12微秒。

另外最重要的是, IBM 704提供的可靠性要大得多。對於長期儲存,IBM 704使用磁鼓儲存單元,對於額外的儲存,使用能夠容納五百萬字元的磁帶。

704非常快,每秒能夠執行4000次整數乘法或除法。然而,正如上文提到的,它也能夠本地執行浮點算術,並能夠每秒執行近12000次浮點加法或減法。更重要的是,704增加了索引寄存器,這不僅顯著加快了分支,而且還減少了程式開發時間(因為現在硬件處理了)。

704開創了我們今天擁有的兩項重大技術:索引寄存器和浮點算術。磁性核心記憶體也非常有用,提供了更快的速度和更高的可靠性,但它是一種過渡技術。

IBM 1401數據處理系統

雖然650讓IBM登上了大型電腦的路線圖,但它的替代品—— IBM 1401 數據處理系統,使打孔卡片機變得過時。它 被認為是電腦行業的「Model T」 ,因為它的功能和相對低成本的結合,使許多企業開始使用電腦技術。

IBM 1401的普及幫助IBM成為那個時代的主導電腦公司。具有諷刺意味的是,它的成功並不完全對IBM有利,這台機器肯定不是它最大或最有利可圖的。事實上,在某些情況下,它只是被用作它的大哥的附屬品,將打孔卡上的數據轉移到磁帶上,並進行打印。

然而,這是第一次,大型電腦的成本、可靠性和功能對客戶非常有吸重力。 與IBM 1401取代的650相比,1401大約快七倍,更可靠,並且得到了更好的支持。最重要的是,它有更好的I/O。IBM有先見之明地開發了一台機器,實際上做了它的客戶真正需要的事情,並且以對他們有意義的成本。

同時,這個更新換代也給IBM帶來了煩惱,因為當一個又一個客戶將他們租用的會計機退還給IBM以換取這些新產品時,在短期內給IBM帶來了很多問題。但這對IBM長遠來說是有益的,忍受了這段痛苦,大型電腦為後來IBM帶來了更多的收益。

那麽, 是什麽讓這台電腦與客戶產生如此強烈的共鳴呢? 核心記憶體、晶體管、軟件和印表機都是巨大的進步,其中任何一個方面都比650有了很大的進步。將它們全部放在一起,這台機器的銷量超過了IBM預期的12倍。

我們已經在704的描述中介紹了核心記憶體。它的速度、可靠性、高容量和更低的功耗使其成為一個非常重要的技術。然而,704是非常昂貴的機器,許多企業負擔不起。1401將這項技術帶到了更大的市場。

現在我們都知道晶體管是什麽,但與當時的現有技術相比,它們的改進包括可靠性、功耗、散熱和成本。

IBM采取的整體打包的方法還包括軟件首次免費, IBM軟件包括了滿足客戶需求的軟件包,而不是讓客戶自己開發。 這至關重要,因為它節省了大量的時間和金錢用於內部開發,並允許沒有程式設計師的企業最終獲得電腦的好處。

而且奇怪的是,1401最大的優勢之一是它的印表機。 1403「鏈式」印表機的額定速度為每分鐘600行,是407會計機的四倍。 它也非常可靠。事實上,對許多人來說,1403印表機是大型電腦系統的一個重要特征,通常它與電腦一起銷售給客戶。

所有這些因素促成了一台改變電腦行業的機器。它不僅因其出色的技術特性而非常成功,而且由於其低廉的起始價格每月僅2500美元。事實上,在1401釋出後,大型電腦賽道上僅剩 IBM 與另外 7 家公司。IBM 成為無可爭議的王者,媒體將「藍色巨人」及其競爭對手稱為「IBM 與七個小矮人」。電腦行業的競爭進入新的階段。

IBM 7090

1958年底,IBM宣布用7090取代了老化的709(我們前面看到的700系列中的最後一個)。事實上,在許多方面,7090本質上是一台用50000個晶體管而不是真空管制造的709。所以它帶來包括速度和可靠性在內的許多好處。

7090及其後來升級的形式7094,都是非常經典、強大且非常大的大型電腦電腦——它們非常昂貴。7090每月租金約為63500美元,這是典型配置,還不包括電費。

盡管成本高昂,但這台機器的速度仍然可能非常吸引人。它比它取代的709大約快五六倍,每秒能夠執行229000次加法或減法、39500次乘法或32700次除法。1962年宣布的7094能夠每秒執行250000次加法或減法、100000次乘法和62500次除法。它可以使用32768個36位元字的核心記憶體。

然而, 除了實作最新技術(核心記憶體、RAMAC、晶體管等)及其在速度、功耗和可靠性方面的相應改進之外, 它在功能上與前代產品並沒有太大不同。工作是透過收集磁帶卷上的作業來執行的,並以批次處理方式執行,完成後將結果返回給程式設計師。

雖然這些機器的效能、容量和可靠性給人留下了深刻印象(主要歸功於轉向晶體管和其他新技術),但如果要稱之為突破性的機器,推動了計算的邊界,可能有些牽強。

IBM 7030(Stretch)

IBM 7030,或者說Stretch引入了許多至今我們仍在使用的技術,並且在推出後的三年裏一直是世上最快的電腦。然而,它也被認為是一個失敗,以至於IBM在很快降低了它的價格,損失了大約2000萬美元。 怎麽會這樣呢?

1956年,洛斯阿拉莫斯科學實驗室授予IBM一份建造超級電腦的合約。這台電腦的目標是提供比IBM 704的效能提高一百倍。這確實是一個雄心勃勃的目標。實際上,當7030在1961年釋出時,它的效能比704高出最多38倍。 由於這個「令人失望」的效能,IBM被迫將這台機器的價格從1370萬美元降低到區區778萬美元,這意味著IBM在每台機器上都在虧錢。

雖然如此,在履行了合約義務後,IBM將7030撤出市場,這是一個重大的失望和失敗嗎?或許現在看來很難定義。

這台機器的效能遠遠領先於它所處的時代(0.5 MIPS),而且它引入的技術看起來像是現代電腦的名人錄。指令預取聽起來熟悉嗎?運算元預取呢?那麽並列算術處理呢?還有一個7619單元,它將數據從核心記憶體傳輸到外部單元,如磁帶、控制台印表機、卡片穿孔機和卡片閱讀器。這是我們今天使用的DMA功能的昂貴版本,盡管大型電腦通道本身是實際的處理單元,並且比DMA功能強大得多。

它還增加了中斷、記憶體保護、記憶體交錯、記憶體寫緩沖、結果轉發,甚至是推測執行。這台電腦甚至提供了一種有限形式的亂序執行,稱為指令預執行。

同時,7030的套用幾乎同樣令人印象深刻。7030被用於發展核彈、氣象學、國家安全和阿波羅任務的發展。 這只有在Stretch才變得可行,因為它擁有巨大的儲存容量和令人難以置信的處理速度。事實上,它能夠在一秒鐘內執行超過65萬個浮點加法和超過35萬個乘法。索引單元內最多可以有六個指令在處理中,而前瞻和並列算術單元內最多可以有五個指令在處理中。

因此,在任何時候,Stretch內部最多可以有11個指令在執行階段。即使與當時釋出的出色的7090相比,7030的速度也快了0.8到10倍,這取決於指令流。

那麽,盡管7030的生命周期短暫但非常有用,它的技術至今仍與我們同在,並且對傳奇的System/360系列產生了非常重要的影響。這可能是大型電腦歷史上最重要的電腦。然而,它是否是一個失敗的產品呢?誰又能說清它的意義呢?

B 5000

自從UNIVAC以來,IBM並不是唯一制造電腦的公司。讓我們來看一下 Burroughs的一台機器B 5000 。這是一個非常有趣的機器,特別是考慮到它在1961年宣布。事實上,直到今天,UNISYS仍然支持該軟件。

B 5000是為高級語言開發的,即COBOL和ALGOL 。我的意思是機器語言主要是為了便於從更高級的語言轉譯而建立的 。它包含一個硬件棧、分段以及用於數據存取的許多描述符。

描述符有許多用途,包括允許在硬件中進行邊界檢查、區分字串和單詞陣列、簡化動態陣列分配、指示字元的大小,甚至是某物是否在核心記憶體中。我們為什麽需要這個?

用一個詞來說,就是虛擬記憶體。B 5000是第一台商業上帶有這項技術的電腦。它還支持多處理和多編程,即使是用ALGOL和COBOL。事實上,主控制程式(MCP),就像作業系統被稱呼的那樣,處理記憶體和輸入/輸出單元分配、程式的分段、子程式連結和排程,這解放了程式設計師從所有這些繁瑣且耗時的任務中。

Burroughs自豪的另一個方面是電腦的模組化特性。它可以增加或減少,而無需對整個機器進行昂貴的「重新編程」。

B 5000並沒有像IBM大型電腦那樣取得商業成功。事實上,它有時被稱為每個人都喜歡但沒人買的機器。然而,它的設計無疑是領先和高效的。它專註於解決人類與電腦互動和關聯的問題,而不是為了速度而速度。更重要的是,它引入的一些技術,如虛擬記憶體和多線處理,在現在的電腦中是必需的,其中一些技術在引入48年後仍然支持這一宏偉架構。

UNIVAC 1107

雖然IBM在Stretch的創新值得大量贊譽,但當時世界第二大電腦公司Remington Ran也忙著用自己的魔力創造UNIVAC 1107薄膜記憶體電腦。

正如你會從它的名字中猜到的,它主要的技術成就是使用薄膜記憶體。 它的存取時間是300納秒,一個完整的周期時間是600納秒,這在1962年機器釋出時是極其快的。然而,這並沒有取代具有大約兩微秒周期時間的核心記憶體,而是被用來提供多個累加器、多個索引寄存器和多個輸入/輸出控制寄存器。這允許更大的並列性,最終結果是速度的提高。總共有128個36位元字的薄膜記憶體(或者因為其功能被稱為「控制記憶體」)。按照今天的標準,這根本不能被視為記憶體,而是處理器的一部份,就像寄存器一樣。

盡管在兩種情況下,它們確實是非常快的記憶體。一個區別是控制記憶體寄存器實際上是透過使用記憶體地址而不是寄存器名稱來存取的,但只有當使用特殊的指令指示符或被執行地址參照時。如果不是這種方式存取,地址會被對映到核心記憶體。所以,相當奇怪的是,前128字節的記憶體對映會根據不同的上下文而不同。

雖然薄膜記憶體當然是池中最大的水花,但這條持久的產品線還有其他值得一提的有趣特性。 首先,它有36位元的可用字大小。字元以6位表示。記憶體banks是交錯的,這樣如果從不同的banks連續讀取,存取時間僅為1.8微秒。如果單詞在同一個bank中,則是4微秒。正如提到的,由於更有可能存取不同的bank,這平均為兩微秒。1107還包括16個輸入和16個輸出通道,所有這些都可以同時使用,以支持每秒最多25萬個單詞。

該機器的主要記憶體由一到八個磁鼓組成,每個能夠儲存從262144到6291456個單詞,這使得這台機器具有超過9400萬個36位元單詞(或超過5億個字元儲存)的龐大容量。

盡管UNIVAC 1107無疑是一台優秀的機器,但它更重要的意義是它所開創的電腦系列。 雖然從未接近IBM即將推出的電腦系列的銷量,但UNIVAC的1100系列使該公司多年來成為世界第二大公司,至今仍由UNISYS支持。

這裏已經足夠談論UNIVAC了 ,接下來讓我們回到IBM。

IBM的System/360系列

當大多數人想到大型電腦時,他們會想到IBM的System/360系列電腦,這可以說是IBM創造的最重要的電腦架構。 在許多方面,它與8086處理器類似,因為它為一個行業創造了標準, 並催生了一系列至今仍在活躍和繁榮的後代。

我們先回到手頭的問題。在System/360之前 ,IBM手上有點混亂,因為它建立了許多彼此不相容的系統。 這不僅使得客戶升級更加困難,而且對於IBM來說,在不同的硬件上支持所有這些不同的作業系統也是一個運維噩夢。所以,IBM決定建立我們今天幾乎認為理所當然的東西:一系列相容的電腦,具有不同的速度和容量,但都能夠執行相同的軟件。

事實上,在1964年4月,IBM宣布了六台電腦,效能在最高和最低端機器之間相差50倍。這實際上是設計目標25的兩倍,這本身就給IBM帶來了許多問題。 這種規模的可延伸性據說甚至是才華橫溢的Gene Amdahl都說是不可能的。 這從來就不是一個簡單的問題,只是使某些東西比最小的部份「更大」25倍,它確實需要完全重新實作。

今天,我們通常會禁用處理器的部份,或者降低時脈,以某種方式妥協效能。 但那時候,建立一個高端處理器並人為降低其效能以滿足市場行銷目的,在經濟上是不可行的。 所以,IBM決定在System/360上添加「微編程」,這樣所有家族成員都使用相同的指令集(除了最低端的20型號,它可以執行一個子集)。然後,這些指令被分解為一系列「微操作」,這些操作特定於那個系統的實作。透過這樣做,底層處理器可以非常不同,這允許IBM想要的可延伸性,並且如上所述,甚至超過了兩倍。

這對你來說可能聽起來很熟悉,因為自從Pentium Pro(或者實際上是NexGen Nx586)以來,類似的東西已經在x86處理器上實作了。 然而,正如提到的,IBM是計劃好的。 x86設計師之所以這麽做,是因為指令集非常差,它不能被直接有效執行。微編程有一個非常重要的優勢,這在微處理器上不容易實作。透過建立新的微編程模組,System/360可以與非常流行的1401相容,對於低端機器,甚至是7070和7090對於高端System/360。由於這是在硬件中完成的,它比任何軟件仿真都要快得多,實際上通常在System/360上執行舊軟件的速度比在原生機器上快得多,因為機器更高級。

這些進步中的一些至今仍與我們同在。首先,System/360將字節標準化為8位元,並使用32位元的字長,這兩個都有助於簡化設計,因為它們是2的冪。除了最低端的20型號外,所有型號都有16個通用寄存器(與x86-64相同),而大多數以前的電腦只有一個累加器,可能有一個索引寄存器,以及可能的其他特殊功能寄存器。System/360還可以尋址高達16 MB的巨大記憶體,盡管在那個時候這種記憶體並不可用。最高端的處理器可以執行在非常可觀的5 MHz(回想一下,這是8086在14年後推出時的速度),而低端處理器執行在1 MHz。1966年後期推出的型號還有流水線處理器。

雖然System/360確實開辟了許多新的領域,但在其他方面它未能實作重要的技術。 最明顯的不足是沒有動態地址轉換(除了後來的67型號)。這不僅使虛擬記憶體變得不可能,而且使機器不適合適當的時間共享,這現在隨著電腦效能和資源的提高成為可能。

此外,IBM避免了集成電路,而是使用了「固體邏輯技術」, 這可以大致被認為是介於集成電路和簡單晶體管技術之間的某種技術。相反,在軟件方面,IBM對OS/360可能有點過於雄心勃勃,OS/360是為System/360設計的作業系統之一。它遲遲未推出,使用了大量的記憶體,非常臃腫,缺少一些承諾的功能,而且更重要的是,釋出後很長時間內仍然臃腫。這是一個眾所周知的、高知名度的、戲劇性的失敗,盡管IBM最終做到了,並且它催生了非常重要的後代。

盡管存在這些問題,System/360受到了難以置信的好評,在第一個月就有超過1100個Units被訂購 ,遠遠超過了IBM的目標和能力。它不僅最初成功,而且證明是持久的,並催生了一個大型複制市場。複制甚至在當時的蘇聯制造。它被設計成一個非常靈活和適應力強的系列,被廣泛用於各種類別的努力,最著名的或許是阿波羅計劃。

更重要的是,System/360開創了一個系列, 幾乎50年來一直是計算的支柱,並代表了計算歷史上最商業重要和持久的設計之一。

CDC 6600

當IBM忙於關註其System/360系列的廣泛相容系統時,一家名為 CDC 的公司為其下一台電腦 設定了不同的設計目標:快,更快。

沒有任何其他考慮的束縛,如相容性或成本,西摩·克雷(Seymour Cray)得以自由地運用他傳奇般的才能 專註於純粹的速度 。他成功了,因為這台大約700萬美元的機器透過采用現在被稱為非對稱多處理器設計的獨特設計,從1964年到1969年成為最快的電腦。

CDC 6600主CPU以驚人的10 MHz執行,但它能執行的指令非常有限, 因為它在非常真實的意義上是RISC處理器,早在這個術語被創造出來之前。它只能執行非常簡單的ALU功能,但它由10個邏輯外圍處理器補充,這些處理器可以做CPU不能做的事情,並為它提供數據,同時不受數據的束縛。使處理器更加專業化的能力和使用10個「桶」處理器的並列性是這台機器卓越效能的關鍵組成部份。擁有巨大的記憶體(128 K字),這台60位元電腦可以為了簡單指令集可以提供的額外效能而交換更大的可執行檔大小。

盡管CDC 6600是一台盈利的機器,但它從未威脅到System/360的市場份額 ——也從未打算這樣做。就像我們的下一台機器一樣,有時在IBM沒有競爭的地方競爭,比在它已經瞄準的地方競爭更好。6600針對的市場甚至高於System/360 Model 75可以達到的市場,而我們接下來要看的電腦針對的市場低於System/360 Model 20。

DEC PDP-8

當IBM忙於釋出其宏偉的System/360系列時,數碼器材公司(DEC)也即將釋出一台將對未來計算產生重大影響的電腦,PDP-8。盡管System/360中的不同電腦在效能特性和容量方面有著巨大的範圍,但它們仍然是大型電腦,即使是最低端的型號對許多企業來說仍然太昂貴了。DEC的創始人肯·奧爾森(Ken Olsen)沒有錯過這個機會。

盡管DEC早在1960年就釋出了電腦,但這些型號只取得了有限的成功,對行業影響甚微。然而, 技術的穩步進步,主要是集成電路的形式,使DEC能夠銷售比上一代更小、更便宜的電腦。 集成電路還允許更低的功耗,隨之而來的是更少的散熱。這使電腦擺脫了專門建造的空調房間。1965年釋出時,PDP-8的售價驚人的低,僅為18000美元,加上前面提到的住房要求,使電腦在許多以前發現它們過於昂貴的公司中變得觸手可及。

PDP-1,DEC的第一款產品,一個獨特的功能是使用真正的直接記憶體存取(DMA),這比大型電腦使用的通道便宜得多,也更不復雜,而且對處理器效能沒有太大負面影響。事實上,一個單一的大型電腦通道的成本超過了整個PDP-1。DMA在DEC制造的每一台後續電腦上都使用了,包括PDP-8。

然而,為PDP-8做出的所有成本削減妥協並非都是良性的。12位元字長極大地限制了直接可尋址記憶體的數量,而字中的7位包含地址欄位,只允許直接尋址128字節。有一種解決方法是使用間接尋址,其中7位指向包含要存取的實際地址的記憶體位元置,這雖然慢,但允許完整的12位元存取。另一種方法是將記憶體劃分為128字節的段,並在必要時更改段(人們認為16位元x86處理器的64 K段已經很糟糕了)。這兩種解決方案都不理想,它們嚴重限制了PDP-8與高級語言的實用性。PDP-8也不是速度之王,只能每秒執行35,000次加法。

盡管做出了這些妥協, PDP-8取得了顯著的成功,在停產之前賣出了超過50000台機器。 低廉的購買價格、持續的低成本和易於安置都是比它的缺陷更有說服力的因素。事實上,這台謙遜的機器激發了一種全新的電腦類別,即迷你電腦,它在接下來的二十年裏非常成功,並使DEC成為世界上第二大電腦公司。也許遺憾的是,迷你電腦沒有在微電腦的進軍中幸存下來,現在它已經是一個滅絕的物種,因此更適合被稱為恐龍,而不是通常接受這一不雅稱呼的大型電腦。大型電腦仍然位於食物鏈的頂端,能夠完成遠遠超出桌面電腦的任務。

System/370

盡管System/360非常成功,在某些方面是革命性和創新性的,但它也避免了一些領先技術,給其他公司留下了利用的機會。然而,值得稱贊的是,即使在宣布六年後,它仍然賣得很好,並且為後續幾代產品奠定了基礎,其中System/370是第一個。

1970年最初推出的System/370只包括兩台機器, 魅力四射的155(執行速度接近8.70 MHz)和165(執行速度為12.5 MHz) 。自然,兩台機器都與為System/360編寫的程式相容,甚至可以使用相同的外圍器材。此外,效能大大提高,System/370 165的效能接近System/360 65的五倍,後者是在1965年11月釋出的該系列中最快的機器。

與System/360相比,System/370還有一些新技術。IBM終於轉向了集成電路,許多人認為這一變化早就應該到來。 系列中的大多數型號都采用了晶體管記憶體而不是核心記憶體。 System/370還終於支持動態地址轉換(除了最初的兩款車型),這是時間共享和虛擬記憶體的重要技術。還有一個非常高速度的記憶體緩存(165為80 ns),IBM稱之為緩沖區。這是處理器用來減輕相對緩慢(兩微秒或2000 ns)主記憶體存取時間的。另一個重要考慮是,System/370從一開始就考慮了雙處理器和多編程的構建。

所以,雖然System/370並不是一個驚人的公告,但它確實填補了System/360的一些明顯漏洞,大大提高了速度,擴充套件了指令集,並保持了高度的相容性。這是一個堅實的向前邁出的一步,並保持了IBM在大型電腦世界的主導地位。

IBM 3033:一個大家夥

雖然System/370系列透過引入具有新功能和效能特性的新型號多年來主導了大型電腦計算,但IBM在1977年3月宣布了這個非常成功的電腦家族的繼任者,3033,或「大家夥」。

盡管IBM主要強調了額外的速度(比System/370 168-3快1.6到1.8倍)和它更小的尺寸,但對於「大家夥」來說,具有諷刺意味的是,這台機器的技術優勢在現代電腦中看起來並不突兀。以17.24 MHz執行的處理器擁有一個八級流水線、分支預測,甚至是推測執行。它包含幾個邏輯單元和12個通道。3033處理器的單元是指令預處理功能(IPPF)、執行功能(E-function)、處理器記憶體控制功能(PSCF)、維護和重試功能,以及所有IBM大型電腦固有的眾所周知的通道。IPPF獲取指令並為E-function執行做準備,確定優先級,並為運算元發出獲取請求。它不僅使用分支預測,還可以一次性緩沖三個指令流,因此在「猜測」錯誤時,它很可能會準備好並預處理另一個指令序列以供E-Function使用。E-Function毫不意外的是處理器的執行引擎,首次擁有一個非常大的64 K緩存(行大小為64字節),以加速記憶體存取。記憶體本身是八路交錯的,允許在執行讀取時,在它不存取的七個銀行中進行重新整理,如果在下一次存取中的一個銀行之一,這加快了讀取時間(DRAM需要在讀取後重新整理才能再次存取)。

處理器記憶體控制功能處理所有來自處理器記憶體的儲存或獲取數據的請求,並使用我們之前提到過的動態地址轉換技術將虛擬地址轉換為絕對記憶體地址。像現代處理器一樣,它使用轉換後備緩沖區來加速這一過程。本質上,這是一個已經從虛擬轉換為絕對的地址的緩存,因此如果處理器可以在那裏找到它們,就不需要轉換。在3033上,如果能找到地址,它將在一個時鐘周期內解決它,或者如果沒有,它可能需要10到40個周期,這是一個相當大的差異。

維護和重試功能為操作員控制台和3033處理器之間提供了手動和服務操作的數據路徑。

所以,雖然表面上3033只是比強大的System/370 168-3更快的繼任者,但當我們仔細檢視時,我們發現它幾乎擁有現代處理器的所有技術,甚至有些是今天現代CPU中所缺乏的 。然而,它仍然是一個純量設計,盡管它的特性令人印象深刻,但很快就被3081取代了。雖然我知道你對3081(誰能責怪你?)充滿了好奇心,我保證我們會非常熟悉它,但讓我們首先透過看看當時世界上第二大電腦公司DEC所提供的產品來進行短暫的插曲。

VAX-11/780

雖然我們大多數讀者都知道x86指令集起源於1978年的8086,但也許更重要的是,1977年發生了一個更重大的發展,當時Digital釋出了轟動一時的VAX-11/780。但是,有什麽可能比x86指令集更重要呢?

當大多數人想到DEC時,他們記得這是一個大型迷你電腦制造商,它失敗了,並在微電腦篡奪DEC的關鍵市場時被Compaq收購。但是1977年發生了什麽重要的事情呢?DEC的VAX和它非常迷人的夥伴,VMS,後者至今仍具有很大的相關性。

VAX-11/780表面上釋出是為了解決非常成功且非常受歡迎的PDP-11的缺點。 DEC淡化了許多變化,而是專註於終於打破PDP-11的16位元(64 K)可尋址記憶體限制,VAX-11/780的32位元地址。然而,它的意義遠不止於此。

VAX被認為是所有CISC指令集中最優秀的,僅次於受其影響的那些。它是一個高度正交的指令集,有243條指令用於幾種基本數據類別,有16種不同的尋址模式。這種優雅的架構對摩托羅拉68000系列產生了強烈的影響,後者成為了蘋果Lisa和MacIntosh的平台,直到90年代被PowerPC取代。順便說一下,VAX-11/780的效能被采納為標準度量,當「VAX MIPS」或後來簡稱為「一個MIPS」成為電腦效能的度量時。

然而,VAX最重要的貢獻可能是VMS。 Windows NT是由VMS的設計師戴夫·卡特勒(Dave Cutler)開發的。他是許多VMS開發者之一,他們轉向微軟從事Windows NT的開發。盡管圍繞Windows存在爭議, 但Windows NT仍然是當今使用的主導作業系統, 並且在可預見的未來仍將如此,特別是因為Windows 7比Vista更受歡迎。這並不是為了貶低VMS作業系統的重要性,除了它對Windows NT的影響之外,它是一個備受尊敬的設計,特別是使用者友好。

許多人對這款易於使用的作業系統贊不絕口,它非常超前於它的時代。事實上,盡管VAX已經死了,但OpenVMS顯然沒有,目前它正在Intel的Itanium處理器和HP的過時Alpha處理器上執行,今年晚些時候將釋出新版本。因此,自從32年前釋出以來,作業系統仍然非常強大。

盡管VAX和VMS都很愉快,後者仍然如此,它們從未在任何真正的經濟意義上挑戰過藍色巨獸,反而可能幫助IBM在與政府的鬥爭中,後者不太喜歡他們認為是IBM的壟斷。1981年,朗奴·列根總統放棄了對IBM的反壟斷訴訟,同年,Big Blue釋出了3081,這恰好是我有經驗以來的第一款大型電腦。那真是一次經歷。

IBM 3081大型電腦

如前所述,與當時的個人電腦相比,大型電腦介面較差,但作業系統的可靠性遠遠超過了我們今天使用的Windows NT衍生產品。 3081是「二元」設計,意味著它有兩個處理器,甚至共享相同的緩存。但它們不能被分成兩台電腦,因為它們是不可分割的。

然而,這個作業系統的復雜性如此之高,以至於 即使一個處理器死了,系統也會保持執行並繼續執行。使用失敗處理器的應用程式將會崩潰,但是它會相當優雅地崩潰, 因為作業系統會辨識失敗並將其發送到崩潰應用程式的正確位置(系統會在OPC中跟蹤它們,要麽自己修復它們,要麽讓他們的支持團隊來解決問題)。這並不是暗示3081 CPU總是崩潰,因為它們很少這樣做。

每個3081處理器的執行速度驚人的接近38.5 MHz。根據IBM有些樂觀的測量,基本的3081(型號D)比3033UP快21倍,而更高端的型號K則快了將近30倍。當然,其中一些來自額外的處理器,盡管共享緩存確實產生了一些開銷。例如,單處理器3083實際上比3081執行速度快15%,當工作負載無法使用3081的第二個處理器時。

3084是這個系列的另一個擴充套件,實際上有一對二元處理器。與3081不同,它可以被分成兩台獨立的機器。3081的另一個改進是它可以尋址超過16 MB,並使用31位元尋址而不是3033的24位元尋址。總之,考慮到它比3033晚了四年釋出,這是一台大大改進的機器。硬件是好的,軟件的穩定性簡直令人難以置信。

然而,盡管3081、3083和3084都令人驚嘆,我們仍然要重點介紹下3090這個台大型電腦,它的效能有很多令人難以置信的設計。

IBM 3090

雖然IBM 3090並不是一個知名度很高的大型電腦, 但當它在1985年被宣布時,它在System/370架構上提供了一個堅實的進步, 不僅繼續提高了速度,還增加了處理器的數量,同時為它們提供了向量處理選項。

最初只有200型和400型(第一個數碼表示處理器的數量)可用,在它短短四年的生命周期中,產品線得到了戲劇性的擴充套件。增加了單處理器版本(1xx系列)和600系列處理器,以及每個模型的增強版本(在型號後用"E"表示;例如,600E)。即使是最初的模型也很強大,執行速度超過54 MHz,執行指令的速度幾乎是它們所取代的3081的兩倍。

第二年,3090擴充套件了向量處理功能,增加了171條新指令,將計算密集型程式的速度提高了1.5到3倍。3090的"E"版本執行速度為69 MHz,每個處理器大約能夠達到25 MIPS。相比之下,當時的x86處理器80386執行速度為20 MHz,大約能夠達到4 MIPS,僅支持單處理器,並且沒有向量指令。

3090在短短四年後被ES/9000系列取代。隨著區域網路(LANs)的日益普及,以及像80486和許多RISC設計(包括IBM自己的POWER)這樣的強大新處理器的出現,越來越明顯的是,這些技術將很快使大型電腦變得過時和滅絕,

IBM ES/9000

1990年底,IBM用ES/9000系列取代了著名的3090,這標誌著IBM稱之為ESCON或企業系統連線的光纖技術的引入。自然,這些系統的新事物不僅僅是這個。 實際上,杜文·J·沃森(Thomas J. Watson Jr.)認為ES/9000是公司歷史上最重要的釋出。 甚至比System/360還重要?嗯,沃森先生這麽認為。

ESCON是一項重要的技術。這是一種序列光纖通道,能夠在釋出時以10 MB/s的速度傳輸數據,並且相隔九公裏遠。而且他可能是指它能夠使用的大量9 GB記憶體,還能是在一個sysplex中使用八個處理器的能力,這允許它被視為一個邏輯單元?人們可以建立多個分區,為每個邏輯分區分配處理器資源,並在它們上面執行任何新的(和相容的)企業系統架構/390作業系統。

效能也非常出色,ES/9000大約是3090/600J(IBM之前最快的大型電腦)在商業套用中的1.7到1.9倍,在純量中的2.0到2.7倍,在向量效能中的2.0到2.8倍。雖然給人留下深刻印象,但我們已經看到過在代際之間類似的跳躍。這些聽起來都不足以成為最重要的電腦公司歷史上最重要的釋出,對吧?是的,按照今天的標準,9 GB是很多,10 MB/s在九公裏上比我們大多數人可以存取的互聯網速度還要快。而且序列傳輸已經存在幾年了,虛擬化越來越普遍。八個處理器是一個很好的數量,但雙插槽四核處理器不再那麽罕見了。我們很快就會有這麽多核心的處理器。

也許它的釋出時間與此有關。你知道的,1990年,486處理器正熱門,老布殊(George H.W. Bush)在他的任期的前半段。在雅虎(Yahoo!)出現之前, 從那個時間背景來看,ES/9000是一個巨大的成就,在 系統的許多方面都有如此多的重要進步。總的來說,很難不同意沃森先生的看法。你還會期待從這樣一個傑出和有成就的人那裏得到別的什麽嗎?

但是,盡管這個奇跡擁有的技術即使按照今天的標準來看也幾乎不算過時,我們的故事肯定還沒有結束。但是,什麽能超越ES/9000呢?很難想象,但更難想象的是, 一個電腦系列能保持19年不變。那麽,讓我們來看一下來自IBM歷史上另一個偉大的產品。

System z10 EC

2008年,IBM宣布推出System z10大型主機以幫助客戶建立一個全新企業級數據中心。專業為企業級業務需求設計的世界一流的企業級伺服器。

z10 EC為企業發展和大規模整合,實作更高的IT安全性、彈性和可用性,以及降低IT風險提供了全新的效能和容量,同時引入了即時資源分配來響應不斷變化的業務需求。

在那個時代,很難想象一個體積龐大的電腦,但IBM確實成功地制造了一個占地30平方英尺、重達5000多磅、消耗27500瓦電力的巨獸。還不夠印象深刻?那麽1520 GB的記憶體呢?是的,這比大多數基於Core i7的發燒友盒子的6 GB記憶體要多得多。好吧,實際上,這比搭載Nehalem的PC的平均硬碟還要多。它還可以擁有1024個ESCON、336個FICON Express4、336個FICON Express2、120個FICON Express、96個OSA-Express3和48個OSA-Express2通道。這比X58的I/O還要多,不是嗎?也許多了幾個數量級?這台令人驚嘆的機器甚至可以在一台機器中托管多達16個虛擬區域網路。

不用說,這些電腦遠遠超過了普通的伺服器,事實上,它們整合了許多較小的x86處理器電腦。 與逐漸消失不同,大型電腦正在找到以前從未使用過它們的客戶,這些客戶希望整合他們的x86伺服器以節省空間和能源。這些伺服器的靈活性確實令人印象深刻,因為如果Linux是作業系統的選擇,可以配備多達64個整合設施(IFL)處理器,或者可以添加多達32個zAAP處理器來協助使用Java或XML與後端數據庫整合的Web應用程式。還可以有多達32個zIIP處理器用於數據處理和網絡工作負載,這些通常用於ERP、CRM和XML應用程式和IPSec數據加密。

主處理器,z10處理器單元芯片,擁有豐富的CISC設計,可以執行894條指令,其中668條是硬連線的。作為對ENIAC的致敬,處理器甚至支持硬件十進制浮點運算,這可以限制舍入誤差,並且比使用二進制和轉換要快得多。最重要的是,它仍然可以執行為System/360編寫的軟件,後者現在已經有45年歷史了,以及令人難以置信的穩定MVS作業系統,盡管現在它被稱為z/OS。可以執行多達64個這些4.4 GHz四核怪獸,設計用於99.999%的正常執行時間。難怪這些機器銷售得很好,因為它們提供了令人難以置信的可靠性、出色的靈活性、難以想象的容量和非常先進且穩固的軟件。

正如建議的那樣,這些機器的虛擬化能力遠遠超過了普通伺服器。自然,它們可以執行包括Linux、z/OS(包括UNIX的完整版本)、z/VM和OpenSolaris在內的多個作業系統,但不僅如此,它們能夠在一個分區需要更多容量時,非破壞性地並且即時熱交換容量。甚至可以在短時間內為突發活動帶來額外的處理器,並在一天中的特定時間安排它們,如果有已知的高峰時段。

這些非凡的機器具有如此先進的功能,以至於可能很難理解。暫時忘掉這些機器的卓越效能和靈活性,它們仍然令人驚訝的可靠。例如,它們具有所謂的"鎖步"功能,每個基於結果的指令都會執行兩次,結果會被比較以確保它們是相同的。如果它們不同,指令將被重新執行,電腦嘗試定位錯誤發生的位置。它甚至可以將飛行中的指令切換到其他處理器,從而從使用者的角度消除錯誤的任何負面影響。更重要的是,當在並列sysplex中使用時(將多達32台大型電腦整合為一張邏輯影像),可以在任何大型電腦上更新所有軟件和硬件,而無需停機或中斷。

只有在這些宏偉的機器使普通的桌面機器相比之下顯得微不足道的意義上,它們才是恐龍。它們比我們所知和喜愛的PC在硬件上更先進、更強大、更靈活、更寬敞、更有用,而且在系統軟件的難以置信的穩定性方面也是如此。它們仍然是計算的支柱,並且完全沒有死亡的跡象。相反,它們的銷售每年都在增加。事實上,還能有其他方式嗎?

▉ 今天的大型電腦:Z16

面對未來人工智能、安全性、混合雲和開源等工作負載,滿足企業發展需求,IBM 正式公布了z16大型電腦。 據IBM介紹,IBM z16大型電腦承諾提供一個為一毫秒,並包括 IBM 量子安全系統,以保護組織免受預期的基於量子的安全威脅。

IBM z16 采用了 IBM Telum 雙處理器芯片有 16 個內核,執行頻率為 5.2 GHz。IBM 表示,該系統在單個型號(型號 A01)中配備多達 200 個可配置內核,並且每個系統包括 40TB 的獨立記憶體冗余陣列 (RAIM)。除此之外,IBM z16還有望加速 IBM 發展混合計算和基於開源的企業系統的其他核心戰略,並專為人工智能應用程式進行了最佳化。

據 IBM 介紹 ,與具有 60 毫秒平均網絡延遲的同等 x86 雲伺服器相比,帶有 z/OS 的 z16 在推理時具有 20 倍的響應時間和 19 倍的吞吐量。

而且由於 AI 推理是在芯片上執行的,z16 無需像許多其他供應商的解決方案那樣將數據移入/移出 AI 或分析器材,這在支持的大規模事務環境等情況下非常有益。

采用 z/OS 的 z16 伺服器支持的響應時間比同類 x86 雲伺服器低 20 倍,吞吐量高出 19 倍。此外,z16 的容量和加密功能還使客戶能夠安全地執行關鍵任務應用程式和流程,同時還可以利用公共雲服務。

▉ 總結:

如今,x86伺服器已經成為目前伺服器選擇的主流,大型電腦變成了支流。但真正從事過軟件開發的人會知道,真正有價值的是業務跟專業知識。大 型機依靠寄生業務的復雜、敏感、關鍵性,在未來的很長時間內會一直存在。 但是, 在我看來,老兵不死,只會慢慢雕零。 x86伺服器也終將迎來這麽一天,計算理論以及實踐還在進步,我們能做的就是擁抱變化,迎接未來新的計算浪潮。