計算機簡史:你想不通去脈 是因為你不瞭解來龍

阿朱說訂閱號發表於2020-04-23

我們從1950年以後經歷了大型機(IBM為代表)、小型機(DEC為代表)、個人電腦微機(Apple為代表)、膝上型電腦(1985年東芝1100是世界上第一臺膝上型電腦),乃至MP3(世界上第一臺MP3是1998年三星生產的,Apple iPod誕生於2001年)、平板電腦(iPad)、手錶(iWatch)、智慧手機(先是Nokia的Symbian智慧手機,後是Apple的iPhone)。


我們也走過了有線電報、無線電報、有線電話、無線手機(世界第一部手機是摩托羅拉公司工程師馬丁·庫帕在1973年發明)這些電信時代,我們也走過了電腦以太區域網時代、電腦電話線撥號上網時代、電腦ADSL上網時代、電腦WIFI上網時代、手機WIFI上網時代、手機2G3G4G上網時代。


我們有必要對這百年的ICT工業是如何交匯促進做個簡單的歷史梳理。你不明白這些歷史,你就不明白為何現在是這樣。


計算機有幾個核心組成:

1、晶片/CPU

2、儲存

3、網路

4、顯示器

5、鍵盤

6、作業系統

7、資料庫

8、中介軟體

9、程式語言


(1)晶片


1904年英國科學家弗萊明發明瞭電子真空二極體。1882年,弗萊明曾擔任愛迪生電光公司技術顧問,1896年,馬可尼無線電報公司成立,弗萊明被聘為顧問。1946年,世界上第一臺通用計算機ENIAC誕生,用了1.7萬根真空電子管和7200根二極體、7萬個電阻器和1萬個電容器、1500個繼電器和6000個開關。每秒可以做5000次加法或400次乘法,是使用繼電器運轉的機電式計算機的1000倍。


1947年貝爾實驗室的肖克利博士發明了電晶體。1956年,肖克利博士創辦實驗室吸引了諾伊斯、摩爾等青年才俊加盟,但是經過一年時間也沒有做出什麼可商業銷售的產品。1957年,最年長的諾伊斯尋求到生產照相機與電子裝置的仙童攝影器材公司老闆費爾柴爾德的資助,帶領眾人離開肖克利實驗室,成立了快捷半導體公司。


1958年,德州儀器的傑克·基爾比發明了世界上第一塊半導體積體電路:鍺積體電路,並因此獲得2000年的諾貝爾物理學獎。和基爾比前後腳,諾伊斯也研製出了世界上第一塊矽積體電路。


1958年,IBM給了他們第一張訂單,訂購100個矽電晶體,用於IBM電腦的儲存器。1968年,諾伊斯和摩爾,帶著葛洛夫脫離仙童公司,創辦Intel。1971年11月,Intel研製出世界第一款商用計算機的微處理器:4004晶片,因此Intel公司完成了從單一的儲存器製造商向微處理器製造商的轉型。


1983年,Altera發明了世界上第一塊可重複擦寫程式設計的晶片,後被Intel收購。1984年,賽靈思發明FPGA晶片。


1978年12月5日,英國物理學家赫爾曼·豪澤(Hermann Hauser)和工程師Chris Curry,在英國劍橋創辦了CPU公司(Cambridge Processing Unit),他們先是為賭博機設計控制系統。1984年英國BBC做了一款普及計算機技術的節目,希望能有配套的電腦:功能豐富但價格又不能太貴(聽起來像步步高學習機的套路),豪澤就接下了這個活兒。他們使用摩托羅拉的6502晶片,這是一顆8位、主頻2赫茲的CPU。賈伯斯當時研發Apple I也是使用的這款CPU。後來豪澤他們想升級到16位,但是摩托羅拉公司的16位晶片太慢也太貴。他們轉而向Intel公司索要80286晶片的設計資料,但是Intel判斷可能會培養一個潛在競爭對手,於是就拒絕了他們,他們只能被迫自行研發。1985年,Roger Wilson和Steve Furber設計了他們自己的第一代32位、6M Hz的處理器,用它做出了一臺RISC(精簡指令集)的計算機,簡稱ARM(Acorn RISC Machine)。這就是ARM這個名字的由來。由於功耗小、價格便宜,而且和摩托羅拉設計思路有相似性,所以Apple公司研發設計牛頓PDA的時候就想到了他們。1990年11月27日,蘋果公司出資150萬英鎊,晶片廠商VLSI出資25萬英鎊,他們本身則以150萬英鎊的智慧財產權和12名工程師入股,這樣,ARM公司正式成立。就是因為這樣奇怪的組成結構,所以ARM公司既不生產晶片也不銷售晶片,它只出售晶片技術授權。


(2)儲存


1801年,法國人約瑟夫·瑪麗·雅卡爾發明了打孔卡用在控制織布機織出的圖案。1880年代,美國人口調查局職員赫爾曼·何樂禮發明了用於人口普查資料的穿孔卡片及機器,並用於1890年美國人口普查,僅6周就完成了統計。1896年,Herman Hollerith成立了製表機公司,專門生產用於計算的打孔卡和打孔機。1911年,在金融家Charles Flint的投資併購撮合下,製表機公司、列表機公司、以及擁有儲存技術的國際時代唱片公司三家合併,成為現在的IBM公司。其實這麼來看,打孔卡、唱片,都算是資訊儲存介質。


1928年Fritz Pfleumer發明了錄音磁帶,可以儲存模擬訊號。1951年,磁帶首次被用於計算機上儲存資料。


1946年Jan A. Rajchman團隊發明的靜電記憶管Selectron Tube,這是世界上最早的隨機存取數字儲存器(RAM),使用靜電荷儲存資料在真空管內。它能夠短暫儲存大約4000位元組。1947年Freddie Williams和Tom Kilburn發明了類似原理的威廉姆斯-基爾伯恩管(Williams–Kilburn tube)並商用。IBM的第一臺商用科學計算機701就使用了72個該管做記憶體。701計算機也是世界上第一個能儲存程式的計算機。1947年Frederick Viehe第一個申請了磁芯儲存器的專利,1948年華裔王安實現了對磁芯儲存器的寫後讀(Write-after-Read),並且於1949年申請了專利,以50萬美元的價格賣給了IBM。1966年IBM Thomas J. Watson 研究中心的Robert H. Dennard發明了(動態隨機存取儲存器)DRAM,1968年申請了專利。1970年,Intel公司推出Intel 1103,這是第一個商用DRAM晶片。


1956年,世界上第一個硬碟驅動器出現在了IBM的RAMAC 305計算機(第一臺提供隨機存取資料的計算機,同時還使用了磁鼓和磁芯儲存器)中。該驅動器約有兩個冰箱大小,重達一噸,包含50(還是40?)個24英寸碟片,能儲存5M的資訊,資料傳輸速度10K/S。1962年,IBM釋出了第一個可行動硬碟驅動器1311,它有六個14英寸的碟片,可儲存2.6MB資料。1973年,IBM發明了Winchester(溫氏)硬碟3340,其特點是工作時磁頭懸浮在高速轉動的碟片上方,而不與碟片直接接觸,這便是現代硬碟的原型。1978年,IBM推出第一個RAID(獨立磁碟冗餘陣列)並申請技術專利。


1968年IBM的Alan Shugart領導的小組開發了只讀的8英寸軟盤(只能儲存79.5KB的資料)。


1980年日本人Fujio Masuoka為東芝工作時發明了快閃記憶體。這也為後來賈伯斯研發iPod帶來了靈感。


(3)網路


計算機產業晚於電信產業。早在1837年美國人薩繆爾·摩爾斯就發明了電報,併發明瞭電報專用編碼:摩斯電碼。後來1895年,義大利人馬可尼首次成功收發無線電電報。而電話是1860年貝爾發明,1877年貝爾建立了電話公司,1895年,貝爾公司將其正在開發的美國全國範圍的長途業務業務剝離出來,建立了一家獨立的公司稱為美國電話電報公司(AT&T)。


其實網際網路的歷史比區域網的歷史要長的多,根源就在於電信通訊網路早於計算機網路。1958年,AT&T已經發布了世界上第一款商用的Modem:Bell 103。調變解調器的作用就是把計算機的數字訊號翻譯成可沿普通電話線傳送的模擬訊號,這些模擬訊號又被電話線路另一端的另一個調變解調器接收,並譯成計算機的數字訊號,因此電話通訊就和計算機資料傳輸合二為一了。不過更早的雛形還是來自IBM,在1951年幫助美國軍方建設半自動防控警備系統,需要把雷達站-控制中心-指揮中心連線在一起,IBM已經發明瞭一整套類似裝置進行聯網,只不過一直執行在軍方沒有外洩。


網際網路起源於1969年的ARPANet,我們的上網就是始於電話撥號上網的。雖然1974年已經發明瞭TCP/IP一套技術體系,但是直到1982年,ARPANet才全部採用TCP/IP技術。


區域網就晚很多了。


過去的人們使用計算機都在專用機房裡面,在計算機跟前工作。後來發明了啞終端,其實就是一個輸出顯示器一個輸入鍵盤,透過RS-232線纜連線到大型主機上。RS-232線纜標準是1970年由美國電子工業協會聯合AT&T、IBM這些通訊廠商、調變解調器廠商、計算機廠商一起制定的。因為涉及到訊號衰減問題,所以最早線纜長度只能達到30米,後來不斷改進線纜材質,最遠能達到1公里長度。


後來1973年Bob Metcalfe從哈佛博士畢業後到施樂公司工作,發明了乙太網,把施樂公司的40多臺計算機串聯在了一起。我們們現在都是百兆網路卡千兆網路卡,但是在1973年才2.9兆。1979年,施樂聯合Intel(生產網路處理晶片)、DEC(當時很火的小型機廠商)組成產業標準聯盟,制定10M乙太網標準。IEEE隨即接受“藍皮書”,用作802.3標準的基礎。


1979年,Bob Metcalfe覺得這是個巨大的商機,於是出來自己創辦了3Com公司。1981年生產出來世界上第一張乙太網卡,很快就被IBM採用作為IBM PC的組成部分。當然,計算機之間要聯在一起,除了每個電腦上配備一塊網路卡以外,還得在以太區域網中配備集線器(Hub)裝置,以便資料透過Hub進行交換,所以世界上第一臺乙太網路交換裝置也是3Com生產的。進入百兆乙太網時代後,Intel逐步重視網路晶片,大有後來居上。3Com為了應對Intel就採取開放技術授權方式,讓Lucent、Broadcom、Marvell等等公司都可以生產網路晶片。但是3Com最終沒有幹過Intel。


提起網路,不得不提到一家公司,那就是思科。思科的創始人是萊昂納德·波薩克,曾經加入DEC擔任過硬體工程師,後來任史丹佛大學計算機系的計算機裝置主任,他也是網際網路前身ARPA網的主要推動人物。1984年,他發明出了比3Com集線器更好的乙太網資料交換裝置,先在史丹佛大學應用,把史丹佛大學的5000臺電腦連成一片以太區域網。他希望史丹佛大學支援他製造並銷售這種裝置,但是史丹佛大學沒有答應他這個要求。於是他出來創業搞出來思科。後來網際網路崛起,思科也順勢切入了網際網路TCP/IP路由器領域。


(4)顯示器


最早的計算機都是使用電視機作為顯示器。


電視機最早由英國工程師約翰·洛吉·貝爾德在1925年發明,1926年,貝爾德向英國報界做了一次播發和接收電檢視像訊號的表演。


在1927-1929年期間,貝爾德做了透過電話電纜進行機電式電視試播。還做了首次短波電視試驗。1930年實現了電檢視像和聲音同時發播。


直到1976年,賈伯斯成立蘋果公司生產個人電腦Apple I時,業界才使用專門的CRT技術生產出電腦專用的螢幕。到了Apple II系列時,更是增加了彩色螢幕、圖形作業系統、滑鼠這些源於施樂實驗室的技術。發明了鐳射印表機、影印機、圖形作業系統、滑鼠、乙太網的施樂真是太悲催了,自己一點都沒用上。


(5)鍵盤


說到鍵盤,不得不說打字機。


第一臺實用的打字機,是美國人克里斯托夫·拉森·肖爾斯。但是我們們如今鍵盤排列習慣的打字機,是和肖爾斯一起合作的約斯特,他發明的打字機採用26個鍵,可以轉換大小寫,而且可以使打字人隨時能看到所打出的字。1874年正式進入市場。而IBM最早生產的打孔機,其實就是把打字機和打孔卡結合的產物,操作者透過打字機輸入字母,打孔機會根據轉換規則自動輸出帶孔的卡片。


(6)作業系統


1964年,在IBM沒有發明System 360大型計算機之前,IBM已經發明瞭很多計算機。如IBM 1952年釋出的第一臺商用計算機:701計算機。1959年,IBM首次利用電晶體、磁芯儲存器、印刷電路技術,發明了小型資料處理計算機 IBM1401,但這些計算機都沒有完整的作業系統概念,算是軟體和硬體一體化。IBM在1953年釋出IBM 650大型主機時,才研發出來組合語言,使人類終於告別了直接用最原始的01010編寫程式的歷史,人類終於可以靠打字機+打孔卡片,人類輸入符合組合語言規範的字母和數字,打孔機輸出的就是用打孔卡片表示的01010。把打好孔後的卡片送入到計算機的卡片讀入裝置,計算機就能執行程式了。


1964年,IBM釋出了System 360大型計算機。這算是出現了計算機的作業系統雛形。早期的計算機,都是一個型號就有一套CPU指令集。但是IBM在設計System 360的時候,就做了精良的設計,承諾以後IBM出的計算機CPU指令集具有向上相容性,而且IBM出的其他系列的計算機,指令集和System 360的CPU指令集也相容。為了達到這個標準要求,IBM就開始抽象出薄薄一層軟體,但當時,這層軟體也是最後和硬體計算機一體的,並不單獨釋出和售賣。


在當時,各大公司都想生產計算機,就連通用電氣公司也不例外。所以1964年,通用電氣公司聯合貝爾實驗室、MIT成立了一個專案組,來設計Multics(多路資訊計算系統)。後來通用電氣決定退出計算機行業,就沒再資助這個研發專案了。1969年,無所事事的Multics專案組成員K.Thompson,想把一款遊戲移植到另一個型號的計算機上,他為了好移植,決定用匯編語言開發一個簡化版的Multics,命名為Unics(單路資訊計算系統)。


1973年,Dennis Ritchie和Thompson兩人一起完善Unics,但是Dennis Ritchie發現Unics越來越功能強大並複雜,用匯編語言開發起來不順手。於是他在B語言的基礎上開發出C語言,然後他們就開始用C語言重寫了Unics,並把它命名為Unix。1974年,Kenneth Thompson和Dennis Ritchie合寫的“The UNIX Time-Sharing System"在Communication of ACM上發表,正式向外界披露了UNIX系統。從此,軟體和硬體第一次分離。


當時人們對專門的獨立的軟體還沒有什麼版權意識,所以1976年蓋茨才寫了那封告知計算機業餘愛好者的一封信,強調軟體也是有版權的。但是1974年人們還沒有這個意識。於是,Unix原始碼就在各高校傳播。1977年,伯克利大學的Bill Joy在取得了Unix的核心原始碼後,著手修改成適合自己機器的版本, 同時增加了很多功能軟體與編譯工具,最終將它命名為Berkeley Software Distribution (簡稱BSD)。


1979年,貝爾實驗室的母公司AT&T出於商業的考量,將Unix的版權收了回去,需要商業授權才能使用。因此,AT&T在1979年發行的第七版Unix中,特別提到了 “不可對學生提供原始碼”的嚴格限制。這導致後來學術界自力更生,Andrew Tanenbaum(安德魯·塔能鮑姆)教授參照Unix的功能,寫了一個Minix系統,用於教授學生作業系統。該系統在1986年完成併發布,並於次年釋出了相關書籍。Linus Torvalds(林納斯·託瓦茲)上學時學習Minix作業系統,覺得自己也能開發一個作業系統, 於是開始構建Linux,並於1991年開源。


而BSD首先開枝散葉。1982年,史丹佛大學研究生安迪.貝克託森製造出一種圖形工作站,於是他和斯科特·馬可尼裡創立了Sun公司。他們用開源的BSD Unix 3.0版本改造出了Sun OS,後來Sun的創始人員Bill Joy,他來自伯克利大學,從SunOS 5.0開始,SUN的作業系統開發取得AT&T的商業授權,轉向Unix System V Release 4,並且有了新的名字叫做Solaris,這是Sun公司閉源的商業作業系統。惠普公司也取得AT&T的商業授權,研發出HP閉源的商業作業系統HP/UX。IBM也取得了AT&T的商業授權,研發出了IBM AIX閉源商業作業系統。


而蓋茨1975年成立微軟軟體公司,一開始只是把開發語言移植到個人電腦上,如BASIC、Fortran等,這些開發語言早已經存在,只是蓋茨他們做了個人電腦版本的移植,然後商用銷售。但是蓋茨目光確實敏銳,他也看到了作業系統軟體的重要性。於是,1980年,他和SCO公司合作也取得AT&T的商業授權,研發Xenix作業系統用於個人電腦。但是發現Unix還是太複雜,不適合當時效能和價格都很Poor的個人電腦。所以,當IBM1981年要從大型計算機業務延伸到消費者個人電腦業務時,而IBM因為不熟悉個人電腦也沒有個人電腦作業系統,聽說微軟搞過這個事於是就找到了微軟。其實微軟並沒有搞成功,但是蓋茨機靈也有運氣,他到市場上去尋找。1980年,西雅圖電腦產品公司(Seattle Computer Products)的一名24歲的程式設計師蒂姆·帕特森(Tim Paterson)花費了四個月時間編寫出了86-DOS作業系統。1981年7月,微軟以五萬美元的代價向西雅圖公司購得本產品的全部版權,並將它更名為MS-DOS。


但其實86-DOS是在CP/M的基礎上改進出來的。CP/M是加里·基爾代爾在1974年發明的,大家想想1974年也是Unix對外公佈的年份。當時他對Intel在1974年釋出的8008 CPU很感興趣,於是Intel就送給他一塊8008晶片。他花了幾個月的時間基於Intel CPU寫了一套PC作業系統,但是當時他只是蓋茨眼中的計算機業餘愛好者而已,展示自己的本領就OK。所以在計算機俱樂部聚會中他也只是大力宣傳自己的軟體,開源免費傳播。所以五花八門改出來的CP/M可以執行在多達3000多種型號的計算機上,也支援Intel和摩托羅拉晶片。後來基爾代爾看見蓋茨賣MS-DOS賣的歡快,也自己成立了Digital Research公司開始銷售CP/M。在MS-DOS沒有大行其道之前,CP/M以及它的各種開源改進版本,就被安裝了多達50萬臺電腦上。


提到Unix、CP/M、微軟、SCO這幾樣東西和幾個公司,我們不得不提到一家公司:Novell。這家公司1979年就成立了,瞎折騰。先是自己設計個人電腦,裝上CP/M作業系統賣(1991年還買下了Digital Research)。後來1981年看IBM的PC上有3Com網路卡和乙太網聯網功能,於是Novell也在自己的電腦上搞網路卡並開發乙太網聯網功能。1982年Raymond Noorda當CEO的時候,就大力發展乙太網聯網功能當主打特色,也是他首先提出:網路作業系統、網路檔案伺服器、網路目錄伺服器、網路列印伺服器。他還把Novell電腦改造成無盤工作站號稱網路電腦。所以Noorda在業界有個名頭叫:以太區域網之父。是他把這些在大型主機才應用的技術引入個人電腦領域、引入局域聯網領域。當微軟有這些技術的時候,那已經是1993年Windows NT釋出以後,可想Novell當年的技術有多麼強大。尤其在1993年Novell還收購了AT&T的Unix智慧財產權更加增強自己的技術實力。但是不知道Noorda動錯了哪根筋,開始和微軟全面競爭,1994年併購了WordPerct(類似Word)和Quatto Pro(類似EXCEL),而且1995年還把好不容易到手的Unix智慧財產權又賣給了SCO。2003年又迴歸初心到網路作業系統,併購了SUSE。


賈伯斯創辦的Apple公司一向喜歡自己幹,從硬體到軟體都自己幹。後來賈伯斯被趕出蘋果公司,賈伯斯一氣之下賣掉蘋果股份開始在市場上晃悠,希望尋找機會東山再起。1985年他遇到了一家創業公司NexT正在研發設計強大的圖形工作站。賈伯斯開始銷售NexT工作站,他在思考哪兒最需要這種電腦。正好他遇到了盧卡斯,盧卡斯的電影特效製作公司工業光魔正需要這種強大功能的電腦。工業光魔是盧卡斯為了拍攝逼真的科幻電影星球大戰而專門成立的電腦特效公司。1984年,約翰·拉塞特(John Lasseter)離開了工作多年的迪士尼加入了工業光魔,開始製作電腦動畫。但這和工業光魔的理念不符合,盧卡斯就想賣掉,於是找到了金主賈伯斯。賈伯斯1986年買下了這個電腦動畫部,成立了公司叫皮克斯。賈伯斯就用NexT的圖形工作站製作電影:玩具總動員,並獲得多項奧斯卡金獎。1996年,賈伯斯再次被邀請回蘋果公司主持大局,賈伯斯就把NexT公司賣給蘋果公司,而NexT圖形工作站的作業系統也是源於AT&T的商業授權的Unix版本,從此NexT作業系統成為了後來的Mac OS和iOS的基礎。


(7)資料庫


1961年,通用電氣的Charles Bachman ,開發了IDS(整合資料儲存,Integrated Data Store),這是世界上第一個網狀資料庫,也是世界上第一個資料庫。1968年, IBM在System 360 計算機上,開發了IMS,這是IBM的第一代資料庫,所以也稱IMS為DB1。IMS是世界上第一個層次資料庫。


1970年,IBM的研究員E. F. Codd(埃德加·科德),發表了論文“A Relational Model of Data for Large Shared Data Banks”。該論文提出了關係模型,並於1981年獲得ACM圖靈獎。


1974年,IBM的San Jose 實驗室,啟動了System R 專案,其目標是論證一個全功能RDBMS的可行性。1974年,IBM的Don Chamberlin和Ray Boyce,透過 System R 專案的實踐,發表了論文"SEQUEL:A Structured English Query Language",提出了 SEQUEL 語言,此即 SQL 語言的原型。該專案結束於1979年,它是SQL 語言的第一次實現,併為IBM的二代資料庫DB2,打下了基礎。


1973年,伯克利大學的Michael Stonebraker和EugeneWong,利用System R的公開資訊,開發了Ingres(互動式圖形和檢索系統,INteractive Graphics REtrieval System)並開源。該專案結束於1985年,在Ingres 基礎上產生了很多商業資料庫軟體,包括 Sybase、Microsoft SQL Server、Informix等。後來Informix被IBM收購、Sybase被SAP收購成為了HANA的基礎技術。在Sybase獨立的時候,微軟還和Sybase一起合作研發執行在微軟作業系統之上的SQLServer,但是後來微軟自己掌握了資料庫技術就把Sybase一腳踢開。


1977年6月,Larry Ellison閱讀了Codd的那篇論文覺得這是個機會,於是與 Bob Miner、Ed Oates在矽谷共同創辦了SDL(軟體開發實驗室,Software Development Laboratories)。1978年釋出Oracle資料庫1.0版本,1979年釋出Oracle 2.0版本。這是世界上第一個基於SQL的商業版RDBMS。1982年,公司正式改名為Oracle。


1990年,TcX公司的的客戶,要求為報表工具Unireg的API提供SQL支援。TcX的工程師Monty就自己寫了一個SQL查詢引擎。1995年,Michael Widenius(Monty), David Axmark and Allan Larsson,在瑞典創立了MySQL AB公司。1996年就釋出了MySQL1.0。2001年,MySQL整合了Heikki Tuuri的儲存引擎InnoDB,這個引擎不僅能持事務處理,並且支援行級鎖,從此MySQL開始一飛沖天。


(8)中介軟體


最早的中介軟體是1984年發源于貝爾實驗室的Tuxedo,用於用於控制分散式事務。1992年被賣給了Novell。1995年又被賣給了BEA,BEA公司因此成立。


1989年,歐洲粒子物理實驗室(CERN)的蒂姆·伯納斯·李,他已經使用Internet兩年時間了,他正在思考如何透過因特網和全球的高能物理研究領域的科學家交流科學論文和資料。於是他嘗試開發了一整套程式,包含:HTML超文字語言、HTML解析工具網頁瀏覽器、HTTP網路文字傳輸協議、HTML Web Server軟體。1993年,伊利諾斯大學學生馬克·安德列森寫出了Mosaic工具並在高校間傳播,1994年他覺得這是很好的商業機會,就創辦了網景公司,從此拉開了世界網際網路的大幕。1995年,微軟也眼饞網際網路熱潮,於是在Mosaic的基礎上開發出來IE瀏覽器,免費繫結在Windows95中,與網景競爭。網景公司為了競爭,於是開發了可以在各個作業系統上都能執行的瀏覽器版本。


伊利諾伊斯大學還有一夥計算機愛好者,他們組成了一個叫Apache的自由軟體聯盟,開發了Web Server並把它開源,這就是Apache Web Server。有家創業公司叫WebLogic,在開發商用Web Server,1996年被BEA收購。


當時的HTML都是靜態文字,網景公司為了競爭,想做出動態的技術來吸引使用者。誰有可以支援各個作業系統並且可以動態執行的技術呢?


1991年,Sun公司想開拓智慧家電裝置市場。於是成立了一個叫做Green的小組,他們一開始為了相容層出不窮的消費家電用C++寫,但是C++寫出的程式碼太龐大,而且C++程式碼由於開發人員水平參差不齊導致有的程式碼很容易崩潰掉,這在大多數是家庭主婦使用的家用電器上面是不可饒恕的,所以他們開始創造一種叫做Java的虛擬機器和開發語言,既可以相容各種層出不窮的消費家電,而且即使是爛程式設計師寫的程式碼也不容易崩潰,因為有虛擬機器的保護。但是這個東西一直未能開啟市場,他們面臨著被Sun公司裁掉的風險。1996年,網際網路如日中天,他們就也想進入網際網路市場。於是他們找到網景公司,聲稱他們滿足網景公司的需求,並且願意免費合作。於是1997年,Sum釋出了JSP技術在伺服器端執行,網景公司的工程師Brendan Eich發明了JavaScript在瀏覽器客戶端執行。


1997年,擔任IBM軟體解決方案總經理Mills看到了Sun公司在網際網路的舉措,也在思考IBM如何進入這個新興爆發的網際網路軟體市場。這些創業的網際網路公司,用x86組裝白牌伺服器(1998年Intel釋出用於伺服器的CPU至強品牌)、用開源的Linux作業系統、用開源的Apache Web Server、用開源的Java開發語言、用開源的MySQL資料庫。


當時,IBM決定在開源的Apache基礎上開發出IBM的商用版本,並且也迅速跟進J2EE標準,由位於北卡羅來納州羅利的十幾個 IBM 開發人員在 Chris Wicher 和 Sue Wallenborn 的帶領下開發,他們的進展非常快,在短短四個月內就開發出了第一個版本,並在三個月後推出了第二個版本,這就是後來的WebSphere。


1998年Sun想再次提高JSP技術的競爭力,而IBM也想繼續增強WebSphere產品商業競爭力,於是兩家一拍即合,又拉了一些公司做聯盟,聯合制定了J2EE標準,Weblogic也迅速跟進。


其實在1989年,Sun和IBM就混在一起搞事了。他們當時還組建了一個聯盟,叫OMG,專門針對分散式計算進行標準規範制定。像UML、CORBA、MOF後設資料規範、XML、BEPL業務流程描述語言,這些東西都是這個組織搞的。但是CORBA被制定的太複雜了,一直難以實現。所以,1998年他們才又聯合搞了J2EE,其實J2EE思想就是來自CORBA技術標準族。後來IBM在WebService技術基礎上又搞了SOA。


(9)程式語言


1953年,IBM釋出650大型主機時,研發出來組合語言,使人類終於告別了直接用最原始的01010編寫程式的歷史。


一開始計算機很昂貴也很複雜,主要用於科學研究和軍事。所以,1957年,IBM發明了Fortran語言,主要目的用於科學計算。而與此同時,IBM還發明瞭Fortran 編譯器,這是世界上第一個編譯器。


在1953年,安達信會計師事務所就為幫助通用電氣公司提高薪資處理效率而安裝了美國第一臺商用電腦,從此開創了企業資訊化的時代。COBOL開發語言於1958年產生。現在,全球很多金融機構,還有很多COBOL程式碼仍然在執行。還有個商業業務邏輯開發語言我們也介紹一下,那就是SAP公司的ABAP。ABAP最初是用於報表開發的,是隨著1979年R/2套件開發而逐步產生的。你可以這麼理解,ABAP一開始就好像是EXCEL表格的函式和VBA宏指令碼語言。這套語言在1983年釋出。要知道,VBA宏指令碼語言,是微軟1991年才發明的,到了1993年才隨著Excel5.0的釋出而釋出。


還有一個古老的專用開發語言也需要介紹一下,那就是1958年產生的人工智慧專用開發語言LISP,而發明人就是曾聯合發明BASIC程式語言的麥卡錫。


其實還有一個專用的開發語言要說一下,那就是IBM為了做資料庫處理而發明的SQL語言。


1972年,貝爾實驗室的 D.M.Ritchie為了開發Unix,特意發明了C語言。這是歷史上第一個人類可流暢使用的通用程式語言。


縱觀整個計算機行當,是IBM創造了這個產業,帶出了一眾Intel晶片、3Com網路卡、微軟作業系統、Oracle資料庫、Sun中介軟體、SAP應用軟體這些小弟。


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69940597/viewspace-2687944/,如需轉載,請註明出處,否則將追究法律責任。

相關文章