你未必知道 虛擬機(jī)是如何來到世界上的 |
發(fā)布時(shí)間: 2012/9/12 16:44:49 |
在今天的計(jì)算機(jī)世界中,虛擬機(jī)的概念已經(jīng)被用來解決許多問題。從機(jī)器的分割(IBM模型),到“半平臺(tái)無關(guān)”的程序設(shè)計(jì)語言(Java模型),到開發(fā)操作系統(tǒng)(UNIX模型和OSI模型),虛擬機(jī)的概念在構(gòu)成現(xiàn)代計(jì)算機(jī)的過程中已經(jīng)被證明是一個(gè)強(qiáng)大的工具。然而,這個(gè)概念對(duì)每個(gè)人來說并非總是清晰,并且直到20世紀(jì)60年代中期,它才被用于實(shí)踐。
1965年前后,IBM的研究人員試圖去測量一些計(jì)算機(jī)科學(xué)領(lǐng)域新概念的實(shí)際效果。為了能夠測量到這些新特性開啟和關(guān)閉后機(jī)器的兩種性能,研究人員需要一種方式來關(guān)閉這些新的特性。這些人是IBM約克鎮(zhèn)(美國弗吉尼亞州東南部城鎮(zhèn))研究中心的研究人員。他們?cè)O(shè)計(jì)了一種方案,需要把機(jī)器分割成“更小的部件”。這些部件要求能夠管理他們自己的資源,以使得研究人員能夠在同一時(shí)間在系統(tǒng)中測試測試許多不同的條件,而不用改變系統(tǒng)的其他“部件”。他們相信,對(duì)于這個(gè)實(shí)驗(yàn)來講,一個(gè)虛擬機(jī)的實(shí)現(xiàn)會(huì)工作的非常好。 在這次實(shí)驗(yàn)之后,IBM繼續(xù)他們的工作,并最終開發(fā)出了一個(gè)虛擬機(jī)概念的實(shí)現(xiàn)。他們把它當(dāng)作一個(gè)多用戶環(huán)境的操作系統(tǒng)來賣。許多企業(yè)和大學(xué)都使用這個(gè)操作系統(tǒng),因?yàn)樗试S他們共享主機(jī)的計(jì)算能力和資源。每個(gè)用戶在他們自己的虛擬機(jī)中工作,從而可以和其他人共享資源而不影響其他人的工作。這臺(tái)虛擬機(jī)現(xiàn)在被稱做IBM370系統(tǒng)(S/370)和IBM390系統(tǒng)(S/390)。這些機(jī)器利用IBM VM/ESA操作系統(tǒng),并且都被歸為IBM虛擬機(jī)派系。 這個(gè)虛擬機(jī)的實(shí)現(xiàn)被證明非常的強(qiáng)大,因?yàn)橹两袼歼在銷售。虛擬機(jī)的概念從那以后開始被用來解決許多其他的計(jì)算問題,如計(jì)算機(jī)程序的可移植問題和操作系統(tǒng)的設(shè)計(jì)問題。 UNIX操作系統(tǒng)是最早利用虛擬機(jī)概念解決這些問題的實(shí)現(xiàn)之一。 UNIX操作系統(tǒng)源自貝爾實(shí)驗(yàn)室的Denise Richie和Ken Thompson在1974年發(fā)表的一篇論文。他們關(guān)于UNIX的這一思想很快被用在了PDP-11計(jì)算機(jī)上。PDP-11是一種大學(xué)使用的機(jī)器。通過大學(xué)畢業(yè)生,這一思想又很快被應(yīng)用于商業(yè)計(jì)算機(jī)領(lǐng)域。從1980年到1985年,IEEE標(biāo)準(zhǔn)化委員會(huì)實(shí)施POSIX(Portable Operating System 可移植操作系統(tǒng))項(xiàng)目來為UNIX庫函數(shù)提供一個(gè)標(biāo)準(zhǔn)。他們的想法是:任何軟件供應(yīng)商都可以使用標(biāo)準(zhǔn)庫函數(shù)書寫他們的代碼,并且可以和任何UNIX系統(tǒng)對(duì)接。1990年,IEEE POSIX項(xiàng)目組發(fā)表了“信息技術(shù)可移植操作系統(tǒng)接口”。這為UNIX外殼和應(yīng)用例程規(guī)定了一個(gè)標(biāo)準(zhǔn),使得UNIX應(yīng)用接口成為一種正式的規(guī)范,從而使UNIX進(jìn)程作為一個(gè)獨(dú)立的虛擬機(jī)來工作。 創(chuàng)造一種真正可移植的計(jì)算機(jī)程序是長期困擾程序員的問題之一;蛘哒f,程序員希望能夠?qū)懗隹梢栽谌魏纹脚_(tái)上工作的程序。上世紀(jì)90年代中期,利用虛擬機(jī)的概念創(chuàng)造的JAVA語言使得這一想法幾乎成為現(xiàn)實(shí)。 但是,在上世紀(jì)90年代,JAVA程序語言的思想并不是一個(gè)新的想法。它實(shí)際上是上世紀(jì)70年代,一個(gè)叫Bill Joy的紳士的想法。Joy想通過創(chuàng)造一種語言來整合MESA和C最好的優(yōu)點(diǎn)。但是后來其他項(xiàng)目組(如Sun)攙和進(jìn)來,并且實(shí)現(xiàn)這一想法需要很多年。到90年代早期,Joy對(duì)大型程序開始變的疲倦。在90年代后期,Joy寫了一篇叫“更進(jìn)一步”的論文。(譯者按:可能作者在此處的時(shí)間問題上有點(diǎn)錯(cuò)誤,應(yīng)該是80年代后期。待查證。)在這篇論文中,他列出了對(duì)Sun工程師的建議,認(rèn)為他們應(yīng)該基于C++創(chuàng)造一個(gè)對(duì)象環(huán)境。也正是在這個(gè)時(shí)候,James Gosling已經(jīng)在一個(gè)叫做“Imagination”的SGML編輯器上使用C++工作幾個(gè)月了。因?yàn)镚osling在“Imagination”項(xiàng)目中使用C++時(shí)受到挫折,這使他創(chuàng)造了Oak編程語言。 1990年12月5日,Patrick Naughton開始了綠色項(xiàng)目(Green Project)。Naughton是這樣定義這個(gè)項(xiàng)目的:為實(shí)現(xiàn)“做的越少越好”而努力。在那年12月,他招募了Gosling和Mike Sheridan來幫忙啟動(dòng)這個(gè)項(xiàng)目。Joy給他們看了自己“更進(jìn)一步”的論文,并且用C為圖形學(xué)和用戶接口的問題工作了幾個(gè)月。 1991年4月,綠色項(xiàng)目組(Naughton,Gosling和Sheridan)開始以“智能家電”(smart consumer electronics)為目標(biāo)市場。而Gosling開始為Oak編程語言而努力工作。Gosling用C寫了最早的編譯器,而Naughton,Gosling和Sheridan完成的運(yùn)行時(shí)解釋程序也是用C完成的。1991年8月,Oak的第一個(gè)程序誕生了。 到1992年秋天,一種在PDA和遠(yuǎn)程控制之間的交叉互通器“*7”準(zhǔn)備好了。是年10月,他們向Sun的董事長Scott McNealy展示了這個(gè)系統(tǒng)。接著,Sun以綠色項(xiàng)目為主體成立了一個(gè)全資子公司,叫First Person Inc.。1993年早些時(shí)候,綠色項(xiàng)目組聽說時(shí)代華納(Time-Warner)需要一個(gè)關(guān)于機(jī)頂盒操作系統(tǒng)的計(jì)劃書。First Person迅速從智能家電轉(zhuǎn)向機(jī)頂盒操作系統(tǒng)市場,并且向時(shí)代華納遞交了標(biāo)書。幸運(yùn)的是Sun沒有中標(biāo)。(譯者按:這應(yīng)該是個(gè)不幸的事件。)First Person繼續(xù)研究機(jī)頂盒操作系統(tǒng)。直到1994年早些時(shí)候,他們意識(shí)到機(jī)頂盒和智能家電一樣華而不實(shí)。 1994年,因?yàn)榭床坏绞袌銮熬,F(xiàn)irst Person被母公司Sun兼并。也正是在那個(gè)時(shí)候,他們意識(shí)到,智能家電和機(jī)頂盒上需要的軟件(它們的特點(diǎn)是:短小,平臺(tái)無關(guān),安全可靠)在新生的web上也同樣需要。綠色項(xiàng)目組第三次轉(zhuǎn)變他們的方向,這次是web。Patrick Naughton寫了一個(gè)叫WebRunner的瀏覽器雛形。經(jīng)過Naughton和Jonathan Payne增補(bǔ),這個(gè)瀏覽器成為Hot Java。1995年,Oak更名為Java。1995年,Java第一個(gè)開發(fā)工具JDK1.0alpha版發(fā)布。從那時(shí)起,已經(jīng)有許多修訂版陸續(xù)發(fā)布,直到最近的JDK1.2。 本文出自:億恩科技【mszdt.com】 服務(wù)器租用/服務(wù)器托管中國五強(qiáng)!虛擬主機(jī)域名注冊(cè)頂級(jí)提供商!15年品質(zhì)保障!--億恩科技[ENKJ.COM] |