unix系統發展史


一、Multics計劃


1965年,AT&T貝爾電話實驗室、通用電氣公司、麻省理工學院MAC課題組一起聯合開發一個稱爲Multics的新操作系統。Multics系統的目標是要向大的用戶團體提供對計算機的同時訪問,支持強大的計算數據存儲,以及允許用戶在需要的時候容易地共享他們的數據。



1969年Multics的原始版本在GE645計算機上運行了,但它既沒能提供預定的綜合服務,而且,連它自己也不清楚究竟什麼時刻算達到開發目標。在這種情況下,AT&T貝爾電話實驗室首先退出了這一項目。

二、UNIX系統的萌芽


Multics項目中止後,AT&T貝爾電話實驗室中參加開發的主要人員開始尋找其他有趣的項目。這其中,KenThompson寫了一個名叫“太空漫遊”的遊戲程序。他找到了一臺基本無人使用的DEC
PDP-7計算機運行他的程序。然而由於DEC PDP-7缺少程序開發程序,以致於Thompson不得不在另一臺運行GECOS操作系統的Honeywell635上交叉彙編子他的程序,然後再通過紙帶加載到DEC
PDP-7上。
爲了方便太空漫遊的開發,Thompson和Dennis Ritchie一起着手開發DEC PDP-7上的操作環境:
1.一個簡單的文件系統,它後來深化成稱之爲System V文件系統的早期版;
2.一個進程子系統和shell(命令解釋器)。
這樣這個系統就足以滿足他們的需要,他們將這個操作環境命名爲UNIX。
Thompson和Ritchie後來開發了B語言(後來Ritchie又將其發展爲C語言),並擴展了UNIX系統,UNIX系統便在AT&T貝爾電話實驗室流行起來。



1973年11月,他們用C語言徹底重寫,這是UNIX操作系統邁向成功之路的關鍵一步。完成後,Thompson和Ritchie共同在《ACM通信》上發表了首篇UNIX論文,The
UNIX Time Sharing System。
三、UNIX系統的發展


而由於AT&T公司受到美國反托拉斯法的訴訟,與聯邦政府簽署了一份協議,這份協議不允許AT&T公司生產與電話和電報服務無關的設備,也不允許從事除“公用通信服務”外的任何商業活支。這樣,AT&T公司就陷入了不能經營計算機產品的尷尬局面。



而自從在《ACM通信》中發表了關於UNIX的論文後,越來越多的人希望能夠獲得UNIX軟件和源碼。爲了不違背與政府簽署的協議,AT&T公司既不出售UNIX、也不爲其作廣告、不對其提供技術支持。而同時爲了滿足大家的需要,AT&T公司在簽署簡單協議的前提下,將UNIX系統無償地提供給大學,以供教學與研究。



由於AT&T公司對UNIX的策略,使得UNIX在全世界範圍內快速發展。到1975年底,它已經傳播到西至耶路撒冷的Hebrew大學,南至澳大利亞的新南威爾士大學,北至加拿大多倫多大學的世界各地。

1979年1月發行的UNIX版本是一個真正可移植的UNIX系統,它對其後的UNIX發展有着深遠的影響。該版本最初是運行在PDP-11和Interdata
8/32上的,該系統更加健壯,而且提供了比版本6更強大的功能,但其相當慢。許多領取了許可證的用戶針對這一情況從不同方面對系統的性能進行了改進,AT&T又將這些改進中的許多加入了其以後的UNIX發行中。

這種使用者與開發者之間的合作精神正是UNIX快速成長和不斷髮展的關鍵因素。不幸的是,當UNIX在商業上取得很大成功之後,這種精神就不存在了。

四、UNIX系統最重要的分支----BSD UNIX


1974年12月,加州大學伯克利分校獲得了UNIX許可證。在其後的幾年裏,包括Bill Joy和Chuck Haley在內的一組研究生爲UNIX開發了幾個實用工具,其中包括ex編輯器---vi的前身和一個Pascal編譯器。他們將這些軟件綁定成一個稱爲“伯克利軟件銷售(BSD)”的軟件包,並在1978年春以每個許可證50美元出售。最初的BSD發行僅包括應用程序和實用工個,並沒有對操作系統進行修改和再發行。Joy早期的貢獻之一就是C
Shell。


1978年伯克利得到一臺VAX-11/780以及由新澤西州Holmdel的BTL小組移植的UNIX/32V。VAX-11採用32位體系結構,可以有4GB的地址窨,而物理內存僅爲2MB。與此同時,Ozalp
Babaoglu爲VAX設計了一個分頁式的虛存系統,並將其加入到UNIX系統中。這就是1979年末發行的3BSD,是由伯克利發行的第一個操作系統。



伯克利在虛存方面的工作促使美國國防部高級研究項目署(DARPA)決定投資支持伯克利的UNIX系統開發。DARPA項目的目的之一就是將TCP/IP網絡協議族集成到UNIX系統中。在DARPA的資助下,伯克利又推出了幾個BSD發行,統稱4BSD。




五、純UNIX系統----System V


AT&T公司與美國司法部的法律大戰終天在1982年達到終點,一部里程碑式的法律出臺了。根據該法令,地區性運營公司都從AT&T公司中分離出來,成立一系列的“貝爾寶寶”,
貝爾電話實驗室也獨立出來,改名爲貝爾實驗室。同時,AT&T也被重新允許進入計算機市場。
貝爾實驗室先後在1982年發行了System III,1983年發行了System,1984年發行了System V Release
2(SVR2),1987年發行了SVR3。
System V UNIX也引入了許多新特徵,新設施。最有代表性的就是進程間通信機制。
六、UNIX系統的商業化


UNIX系統的不斷髮展吸引了許多計算機公司。它們急急忙忙地開始將UNIX商業化,出售自己的UNIX版本。每一家都是以AT&T或BSD爲藍本,將它們移植到自己的硬件上,並加上一些自己的“增值”功能。

1982年,Bill Joy離開了伯克利,與人合資成立了Sun公司,基於BSD開發、發行了SunOS,後來又基於SVR4發行了Solaris。

微軟與SCO合作開發發行的XENIX。
此後,SCO公司將SVR3移植到386上,並將其命名爲SCO UNIX。
還有一此大型的硬件公司,配合自己的計算機系統,也開發出一許多不同的UNIX版本:
IBM公司開發的AIX操作系統----運行在RS 6000小型機上;
HP公司開發的HP-UX----運行在HP工作站上;
Digital公司開發的Digital UNIX。
還有著名教授Tanenbaum爲了教學開發的MINIX系統;
以及我們可愛的小企鵝----LINUX操作系統。
每種商業變體都增加了許多新特徵,這些功能中的許多後來又被加入到主線系統中,這樣逐步推動UNIX系統向前發展。
七、UNIX系統標準
UNIX系統變體的泛濫造成了許多不兼容問題,儘管所有的變體從某種程度“看起來都像UNIX”,但它們在許多重要方面卻千差萬別。最初,業界根據AT&T的System
V發行版、伯克利的BSD發行版的不同一分爲二。然而,後來隨着商業變體不斷涌現,情況越來越糟。
System V與BSD系統的不同,影響到了用戶編程。此時,你已不可能編寫一個複雜應用不需任何修改變可以在兩種系統上運行。
接着,各種商業版本的摻合,使得開發應用的程序員不得不花費大量的精力來保證它們的程序可以運行於各種不同的UNIX系統。
在這種局面下,人們強烈要求出臺一組標準接口,許多小組開始了這方面的工作。其中被廣泛認可的有三個標準:
1.AT&T的System V接口定義----SVID;
2.IEEE POSIX(可移植操作系統標準)規範;

發佈了333 篇原創文章 · 獲贊 14 · 訪問量 73萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章