前言
Linux屬于類Unix中的一個當下比較流行的操作系統,占領了服務器大部分江山。作為一個專業復雜的操作系統,了解其發展過程是很有必要的。如果要講linux的歷史,肯定是從三個團體開發Multics系統說起,貝爾實驗室離開Multics項目后,Tompson和他的同事一起創造了unix,而在unix的各種分支中BSD則是迅速發展。因為后來長達10年的unix版權之爭。以及386bsd發布時間的推遲,linus在Minix系統的基礎下,創造了linux系統,并遵循GUN的gpl協定。
Multics
1964年,由貝爾實驗室,麻省理工學院及美國通用電氣公司所共同參與研發,被設計在GE-645大型主機上。通過unix,幾乎所有現在操作系統都深受Multics的影響。
19669年,因Multics項目的工作過于緩慢,整個項目過于龐大,糅合了太多特性,最終澡裁撤。
UNIX
Thompson在加入此計劃不久,計劃就終止了,但因為機器仍然保留在貝爾實驗室,他繼續在GE-645上開發軟件,Thompson在GE-645上寫出了一個仿真器,可以讓一個文件系統與內存分頁機制運作起來,他編寫了一個Space Travel的游戲,但游戲在GECOS系統上面的表現還不如Multics系統,湯普森想要找到一個更好的解決方案,于是向貝爾實驗室請求購買一臺DEC-10大型機,以從事新系統的開發,大約需要12萬美元。Thompson的請求被駁回,因為貝爾實驗室剛剛放棄一個操作系統項目,不會再對花錢研制操作系統感興趣。但是Thompson發現周圍的部分有一臺老舊且很少被使用的PDP-7小型機,同樣可以達到目的。在丹尼斯 里奇的幫助下,湯普森用PDP-7的匯編語言重寫了這個游戲,并使其在PDP-7上運行起來。這次經歷加上Multics項目的經驗,促使湯普森開始在PDP-7上研究如何開發系統。
1969年,肯 湯普森提議在PDP-7上開發一個新的階層式操作系統的計劃,于是開發了一個殼層(shell)與一些驅動程序做出一個操作系統的雛形。在團隊的合作下,Multics的許多功能都被采納,重新實作,最終做出了一個分時多任務操作系統,成為第一個UNIX。因為Multics來自"MULTiplexed Information and Computing system"的縮寫,在1970年,那部PDP-7卻只能支持兩個用戶,彼得 紐曼戲稱他的系統其實是“UNiplexed Information and Computer System”縮寫為"UNICS",當第二版在PDP-11上運行的UNIX真正可以提供多人同時使用時,布萊恩 柯林漢提議講它的名稱改為UNIX。
第一版是用PDP-7匯編語言編寫的,一些應用是由B語言和匯編語言混合編寫的,1971年湯普森和里奇共同發明了C語言,1973年,他們用C語言重寫了UNIX,形成第三版UNIX。用C語言編寫的UNIX代碼簡介緊湊,易讀,易移植,易修改。為此后UNIX的發展奠定了堅實的基礎。1974年,UNIX第一次出現在貝爾實驗室以外。
BSD:Berkeley software Distribution
1974年,第一個伯克利的UNIX系統被安裝在PDP-11機器上,計算機科學系而后將其用作擴展研究。
1977年,伯克利的研究生Bill Joy將程序整理到磁帶上作為first Berkeley Software Distribution(1BSD)發行
1978年,2BSD發布,比爾 喬伊寫了兩個新程序vi編輯器,以及C shell。
1992年,AT&TZ的USL正式對BSD提起訴訟,這導致Net/2發布的中止。由于最后的判決懸而未決,這樁法律訴訟將BSD后裔的開發,特別是自由軟件延遲了兩年,這導致沒有法律問題的linux內核獲得極大的支持。
GUN
在提linux之前,GUN是必須得提起的。
GUN的創始人Richard stallman 1971年進入哈弗大學學習,同時受聘于麻省理工學院人工智能實驗室,工作在一個只使用自由軟件的小組中,成為一名職業黑客,stallman在AI是一名典型的黑客,是整個黑客文化的一份子。然后進入八十年代,黑客社群在軟件工業商業化的強大壓力下,日漸土崩瓦解,甚至連AI實驗室也成立了symbolic公司,試圖以專利軟件來取代實驗室中黑客文化的產物—可自由流通的軟件。stallman對此感到氣憤與無奈,對symbolic進行了一段時間的抗爭。后于1983年9月27日發出最初的聲明,1984年開始構建GUN工程
1985年發表了著名的GUN宣言,正式宣布要開始進行一項宏偉的計劃,創造一套完全自由的向下兼容unix的GUN操作系統
1989年,他與一群律師起草了廣為使用的GUN通用公共協議證書,創造了“copylift”的概念。同時,GUN計劃中除了最關鍵的Hurd內核之外,其他絕大多數軟件已經完成。
Minix
因為AT&T的政策改變,在Version 7 Unix推出之后,發布新的使用許可協議,將UNIX源代碼私有化,在大學中不再能使用UNIX源代碼。荷蘭阿姆斯特丹自由大學計算機科學系的教授,塔能鮑姆為了能在課堂上教授學生操作系統運作的實務細節,決定在不使用任何AT&T的源代碼前提下,自行開發與UNIX兼容的操作系統,以避免版權上的爭議。他以小型UNIX(mini-UNIX)之意,將它稱為MINIX。當時,MINIX不允許被用作任何商業使用。
Linux
1991年,Linus Torvalds在赫爾辛基大學上學時,對操作系統很好奇。他對MINIX只允許在教育上使用很不滿。于是他便開始在MINIX上開發Linux內核,為MINIX寫的軟件也可以在Linux內核上使用。后來使用GUN軟件代替MINIX的軟件,因為使用從GUN系統來的源代碼可以自由使用,這對Linux的發展是有益的。為了讓Linux可以在商業上使用,林納斯·托瓦茲決定更改他原來的協議(這個協議會限制商業使用),以GNU GPL協議來代替。之后許多開發者致力融合GNU元素到Linux中,做出一個有完整功能的、自由的操作系統。
原創文章,作者:M21-陜西-李賢,如若轉載,請注明出處:http://www.www58058.com/50943