UNIX :一個強(qiáng)大的多用戶、多任務(wù)操作系統(tǒng),支持多種處理器架構(gòu),按照操作系統(tǒng)的分類,屬于分時操作系統(tǒng)。最早由Ken Thompson、Dennis Ritchie和Douglas McIlroy于1969年在AT&T的貝爾實驗室開發(fā)。經(jīng)過長期的發(fā)展和完善,目前已成長為一種主流的操作系統(tǒng)技術(shù)和基于這種技術(shù)的產(chǎn)品大家族。由于UNIX具有技術(shù)成熟、可靠性高、網(wǎng)絡(luò)和數(shù)據(jù)庫功能強(qiáng)、伸縮性突出和開放性好等特色,可滿足各行各業(yè)的實際需要,特別能滿足企業(yè)重要業(yè)務(wù)的需要,已經(jīng)成為主要的工作站平臺和重要的企業(yè)操作平臺。曾經(jīng)是服務(wù)器操作系統(tǒng)的首選,占據(jù)最大市場份額,但最近在跟WINDOWS SERVER以及Linux的競爭中有所失利。
 
【UNIX詳細(xì)介紹】
  Ken和Dennis最早是在貝爾實驗室開發(fā)Unix的,此后的10年,Unix在學(xué)術(shù)機(jī)構(gòu)和大型企業(yè)中得到了廣泛的應(yīng)用,當(dāng)時的UNIX擁有者AT&T公司以低廉甚至免費的許可將Unix源碼授權(quán)給學(xué)術(shù)機(jī)構(gòu)做研究或教學(xué)之用,許多機(jī)構(gòu)在此源碼基礎(chǔ)上加以擴(kuò)充和改進(jìn),形成了所謂的Unix“變種 (Variations)”,這些變種反過來也促進(jìn)了Unix的發(fā)展,其中最著名的變種之一是由加州大學(xué)Berkeley分校開發(fā)的BSD產(chǎn)品。
  后來AT&T意識到了Unix的商業(yè)價值,不再將Unix源碼授權(quán)給學(xué)術(shù)機(jī)構(gòu),并對之前的Unix及其變種聲明了版權(quán)權(quán)利。變種BSD Unix在Unix的歷史發(fā)展中具有相當(dāng)大的影響力,被很多商業(yè)廠家采用,成為很多商用Unix的基礎(chǔ)。BSD使用主版本加次版本的方法標(biāo)識,如 4.2BSD,4.3BSD,在原始版本的基礎(chǔ)上還有派生版本,這些版本通常有自己的名字,如4.3BSD-Net/1,4.3BSD-Net/2等。其不斷增大的影響力終于引起了AT&T的關(guān)注,于是開始了一場曠日持久的版權(quán)官司,這場官司一直打到 AT&T將自己的Unix系統(tǒng)實驗室賣掉,新接手的Novell公司采取了一種比較開明的做法,允許伯克利自由發(fā)布自己的BSD,但是前提是必須將來自于AT&T的代碼完全刪除,于是誕生了4.4 BSD Lite版,由于這個版本不存在法律問題,4.4BSD Lite成為了現(xiàn)代BSD系統(tǒng)的基礎(chǔ)版本。盡管后來,非商業(yè)版的UNIX系統(tǒng)又經(jīng)過了很多演變,但其最終,都是建立在BSD版本上(Linux除外)。所以從這個角度上,4.4 BSD又是所有自由版(Free版)Unix的基礎(chǔ),它們和Unix V及Linux等共同構(gòu)成Unix操作系統(tǒng)這片璀璨的星空。
  BSD在發(fā)展中也逐漸衍生出3個主要的分支:FreeBSD,OpenBSD和NetBSD。
  此后的幾十年中,Unix仍在不斷變化,其版權(quán)所有者不斷變更,授權(quán)者的數(shù)量也在增加。Unix的版權(quán)曾經(jīng)為AT&T所有,之后Novell擁有了Unix,再之后Novell又將版權(quán)出售給了SCO(這一事實雙方尚存在爭議)。有很多大公司在取得了Unix的授權(quán)之后,開發(fā)了自己的Unix產(chǎn)品,比如IBM的AIX,HP的HPUX,SUN的Solaris和SGI的IRIX。
  Unix因為其安全可靠,高效強(qiáng)大的特點在服務(wù)器領(lǐng)域得到了廣泛的應(yīng)用。直到GNU/Linux流行開始前,Unix也是科學(xué)計算、大型機(jī)、超級計算機(jī)等所用操作系統(tǒng)的主流。
 
【UNIX歷史】
  初創(chuàng)期
  Unix的誕生和Multics(Multiplexed Information and Computing System)是有一定淵源的。Multics是由麻省理工學(xué)院,AT&T貝爾實驗室和通用電氣合作進(jìn)行的操作系統(tǒng)項目,被設(shè)計運行在GE-645大型主機(jī)上,但是由于整個目標(biāo)過于龐大,糅合了太多的特性,Multics雖然發(fā)布了一些產(chǎn)品,但是性能都很低,最終以失敗而告終。
  AT&T最終撤出了投入Multics項目的資源,其中一個開發(fā)者,Ken Thompson則繼續(xù)為GE-645開發(fā)軟件,并最終編寫了一個太空旅行游戲。經(jīng)過實際運行后,他發(fā)現(xiàn)游戲速度很慢而且耗費昂貴——每次運行會花費75美元。
  在Dennis Ritchie的幫助下,Thompson用PDP-7的匯編語言重寫了這個游戲,并使其在DEC PDP-7上運行起來。這次經(jīng)歷加上Multics項目的經(jīng)驗,促使Thompson開始了一個DEC PDP-7上的新操作系統(tǒng)項目。Thompson和Ritchie領(lǐng)導(dǎo)一組開發(fā)者,開發(fā)了一個新的多任務(wù)操作系統(tǒng)。這個系統(tǒng)包括命令解釋器和一些實用程序,這個項目被稱為UNICS(Uniplexed Information and Computing System),因為它可以支持同時的多用戶操作。后來這個名字被改為UNIX。
  發(fā)展期
  最初的Unix是用匯編語言編寫的,一些應(yīng)用是由叫做B語言的解釋型語言和匯編語言混合編寫的。B語言在進(jìn)行系統(tǒng)編程時不夠強(qiáng)大,所以Thompson和Ritchie對其進(jìn)行了改造,并與1971年共同發(fā)明了C語言。1973 年Thompson和Ritchie用C語言重寫了Unix。在當(dāng)時,為了實現(xiàn)最高效率,系統(tǒng)程序都是由匯編語言編寫,所以Thompson和 Ritchie此舉是極具大膽創(chuàng)新和革命意義的。用C語言編寫的Unix代碼簡潔緊湊、易移植、易讀、易修改,為此后Unix的發(fā)展奠定了堅實基礎(chǔ)。
  1974年,Thompson和Ritchie合作在ACM通信上發(fā)表了一片關(guān)于UNIX的文章,這是UNIX第一次出現(xiàn)在貝爾實驗室以外。此后UNIX被政府機(jī)關(guān),研究機(jī)構(gòu),企業(yè)和大學(xué)注意到,并逐漸流行開來。
  1975年,UNIX發(fā)布了4、5、6三個版本。1978年,已經(jīng)有大約600臺計算機(jī)在運行UNIX。1979年,版本7發(fā)布,這是最后一個廣泛發(fā)布的研究型UNIX版本。20世紀(jì)80年代相繼發(fā)布的8、9、10版本只授權(quán)給了少數(shù)大學(xué)。此后這個方向上的研究導(dǎo)致了Plan 9的出現(xiàn),這是一個新的分布式操作系統(tǒng)。
  1982年,AT&T基于版本7開發(fā)了UNIX System Ⅲ的第一個版本,這是一個商業(yè)版本僅供出售。為了解決混亂的UNIX版本情況,AT&T綜合了其他大學(xué)和公司開發(fā)的各種UNIX,開發(fā)了UNIX System V Release 1。
  這個新的UNIX商業(yè)發(fā)布版本不再包含源代碼,所以加州大學(xué)Berkeley分校繼續(xù)開發(fā)BSD UNIX,作為UNIX System III和V的替代選擇。BSD對UNIX最重要的貢獻(xiàn)之一是TCP/IP。BSD 有8個主要的發(fā)行版中包含了TCP/IP:4.1c、4.2、4.3、4.3-Tahoe、4.3-Reno、Net2、4.4以及 4.4-lite。這些發(fā)布版中的TCP/IP代碼幾乎是現(xiàn)在所有系統(tǒng)中TCP/IP實現(xiàn)的前輩,包括AT&T System V UNIX 和Microsoft Windows。
  其他一些公司也開始為其自己的小型機(jī)或工作站提供商業(yè)版本的UNIX系統(tǒng),有些選擇System V作為基礎(chǔ)版本,有些則選擇了BSD。BSD的一名主要開發(fā)者,Bill Joy,在BSD基礎(chǔ)上開發(fā)了SunOS,并最終創(chuàng)辦了Sun Microsystems。
  1991年,一群BSD開發(fā)者(Donn Seeley、Mike Karels、Bill Jolitz 和 Trent Hein)離開了加州大學(xué),創(chuàng)辦了Berkeley Software Design, Inc (BSDI)。BSDI是第一家在便宜常見的Intel平臺上提供全功能商業(yè)BSD UNIX的廠商。后來Bill Jolitz 離開了BSDI,開始了386BSD的工作。386BSD被認(rèn)為是FreeBSD、OpenBSD 和 NetBSD的先輩。
  AT&T繼續(xù)為UNIX System V增加了文件鎖定,系統(tǒng)管理,作業(yè)控制,流和遠(yuǎn)程文件系統(tǒng)。1987到1989年,AT&T決定將Xenix(微軟開發(fā)的一個x86-pc上的UNIX版本),BSD,SunOS和System V融合為System V Release 4(SVR4)。這個新發(fā)布版將多種特性融為一體,結(jié)束了混亂的競爭局面。
  1993年以后,大多數(shù)商業(yè)UNIX發(fā)行商都基于SVR4開發(fā)自己的UNIX變體了。
  現(xiàn)況
  UNIX System V Release 4發(fā)布后不久,AT&T就將其所有UNIX權(quán)利出售給了Novell。Novell期望以此來對抗微軟的Windows NT,但其核心市場受到了嚴(yán)重傷害,最終Novell將SVR4的權(quán)利出售給了X/OPEN Consortium,后者是定義UNIX標(biāo)準(zhǔn)的產(chǎn)業(yè)團(tuán)體。最后X/OPEN和OSF/1合并,創(chuàng)建了Open Group。Open Group定義的多個標(biāo)準(zhǔn)定義著什么是以及什么不是UNIX。
  實際的UNIX代碼則輾轉(zhuǎn)到了Santa Cruz Operation,這家公司后來出售給了Caldera Systems。Caldera原來也出售Linux系統(tǒng),交易完成后,新公司又被重命名為SCO Group。
  1127部門的解散
  根據(jù)一項報導(dǎo)指出,當(dāng)年負(fù)責(zé)研發(fā)UNIX與后續(xù)維護(hù)工作的貝爾實驗室1127部門已于2005年8月正式宣告解散。Ken Thompson已退休,現(xiàn)居
加州;Dennis Ritchie調(diào)到別的部門;Douglas McIlroy在達(dá)特茅斯學(xué)院擔(dān)任教授等等。
 
【UNIX標(biāo)準(zhǔn)】
  從1980年代開始,POSIX,一個開放的操作系統(tǒng)標(biāo)準(zhǔn)就在制定中,IEEE制定的POSIX標(biāo)準(zhǔn)現(xiàn)在是UNIX系統(tǒng)的基礎(chǔ)部分。
  自由的類Unix系統(tǒng)
  Richard Stallman建立了GNU項目,要創(chuàng)建一個能夠自由發(fā)布的類UNIX系統(tǒng)。20年來,這個項目不斷發(fā)展壯大,包含了越來越多的內(nèi)容?,F(xiàn)在,GNU項目開發(fā)的產(chǎn)品,比如Emacs,GCC等已經(jīng)成為各種其他自由發(fā)布的類UNIX產(chǎn)品中的核心角色。
  1990年,Linus Torvalds決定編寫一個自己的Minix內(nèi)核,初名為Linus' Minix,意為Linus的Minix內(nèi)核,后來改名為Linux,此內(nèi)核于1991年正式發(fā)布,并逐漸引起人們的注意。當(dāng)GNU軟件與Linux內(nèi)核結(jié)合后,GNU軟件構(gòu)成了這個POSIX兼容操作系統(tǒng)GNU/Linux的基礎(chǔ)。今天GNU/Linux已經(jīng)成為發(fā)展最為活躍的自由/開放源碼的類Unix操作系統(tǒng)。
  1994年,BSD Unix走上了復(fù)興的道路。BSD的開發(fā)也走向了幾個不同的方向,并最終導(dǎo)致了FreeBSD、OpenBSD和NetBSD的出現(xiàn)。
  20世界60年代末期,在新澤西州的美國電報電話公司(AT&T),有一間陰暗潮濕的實驗室,在這里,AT&T的貝爾實驗室和麻省理工學(xué)院共同開發(fā)了一個龐大的單一操作系統(tǒng),稱為Multics.當(dāng)時,貝爾實驗室的團(tuán)隊成員有Ken Thompson,Dennis Ritchie,Brian Kernighan,以及對新Unix操作系統(tǒng)的開發(fā)作出重要貢獻(xiàn)的計算機(jī)科學(xué)研究組(Computer Science Research Group)一些其他成員.
  到了1969年,貝爾實驗室開始對Multics逐漸失去興趣,Multics系統(tǒng)非常慢,而且開銷巨大,主要在General Electric大型機(jī)上運行,而這中大型機(jī)非常昂貴,并且很快就會過時.問題是,Tompson和小組成員非常喜歡Multics所提供的能力,尤其是獨立用戶的環(huán)境和多用戶功能.
  在那一年,Thompson編寫了一個計算機(jī)游戲,叫做Space Travel,它首先在Multics上,然后又在GECOS(GE計算機(jī)操作系統(tǒng))上運行.這個游戲模擬太陽系天體運動,由玩家駕駛飛船,觀察景色,而且試圖在個種行星和月亮上登陸.該游戲GE計算機(jī)上不是很有趣,因為性能不穩(wěn)定,而且不規(guī)律,更重要的是,每個游戲幾乎要花費100美元的機(jī)時費.
  在Thompson改進(jìn)游戲的過程中,他發(fā)現(xiàn)了一種很少使用的小型機(jī)PDF-7(Digital Equipment公司出品),在Ritchie的幫助下,Thompson為PDF-7重寫了游戲.開發(fā)過程是在GE大型機(jī)上完成的,并通過紙帶傳給了PDF-7.
  當(dāng)Thompson研究了PDF-7的一些功能之后,他沒有只停留在開發(fā)游戲上,而是開始實現(xiàn)他早期實際的一個文件系統(tǒng),隨后增加了進(jìn)程,簡單的文件程序(cp,mv)和被他稱為shell的命令解釋程序.直到第二年,新開發(fā)的系統(tǒng)才有了它自己的名稱:Unix.這個名稱是Multics的雙關(guān)語,是由Brian Kernighan建議的.
  最初的UNIX是用一種RMG的語言編寫的,然后,Thompson試圖編寫一個FORTRAN編譯程序,但沒有成功,所以他轉(zhuǎn)而設(shè)計了一種叫做B的語言.兩年之后,也就是在1971年,Ritchie在B的基礎(chǔ)上設(shè)計了一種新的編程語言的第一版,也就是C語言.到1973年,為了獲得兼容性和速度,整個UNIX系統(tǒng)已經(jīng)都用C語言重寫了.
  在20世紀(jì)70年代,AT&T還沒有分為許多區(qū)域性的運營公司之前(就象現(xiàn)在一樣),公司被禁止銷售新的UNIX操作系統(tǒng).為了尋求最好的出路,貝爾實驗室將UNIX提供給學(xué)院和大學(xué),只收取很少的費用.這些研究機(jī)構(gòu)也很愿意購買這種既便宜又強(qiáng)大的PFP-11計算機(jī)系統(tǒng)-它們是完美的匹配.不久以后,UNIX就成為人們所選擇的研究和軟件開發(fā)操作系統(tǒng)了.
 
【UNIX和LINUX的區(qū)別和聯(lián)系】
  Linux和UNIX的最大的區(qū)別是,前者是開放源代碼的自由軟件,而后者是對源代碼實行知識產(chǎn)權(quán)保護(hù)的傳統(tǒng)商業(yè)軟件。這應(yīng)該是他們最大的不同,這種不同體現(xiàn)在用戶對前者有很高的自主權(quán),而對后者卻只能去被動的適應(yīng);這種不同還表現(xiàn)在前者的開發(fā)是處在一個完全開放的環(huán)境之中,而后者的開發(fā)完全是處在一個黑箱之中,只有相關(guān)的開發(fā)人員才能夠接觸的產(chǎn)品的原型。
  另外兩大區(qū)別:
  1) UNIX系統(tǒng)大多是與硬件配套的,而Linux則可運行在多種硬件平臺上.
  2) UNIX是商業(yè)軟件,而Linux是自由軟件,免費、公開源代碼的.