Linux發展史

前言

    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

(0)
M21-陜西-李賢M21-陜西-李賢
上一篇 2016-10-14 11:41
下一篇 2016-10-14 11:42

相關推薦

  • 正則表達式基礎

    正則表達式正則表達式? ? 元字符:? ? ? ? . ? ? ? 點表示任意單個字符 最少一次? ? ? ? \w ? ? ?匹配字母、數字、下劃線、或漢字。? ? ? ? \s ? ? ?匹配任意空白字符? ? ? ? \d ? ? ?匹配數字? ? ? ? \b ? ? ?匹配字符的開始或結束? ? ? ? ^ ? ? ? 匹配首字符? ? ? ? $…

    Linux干貨 2017-11-14
  • 編譯安裝lamp框架

    一、 先說說啥叫lamp     1. lamp簡介: Linux Apache Mysql PHP(Python, Perl)的簡稱,下面說說他們之間的關系         Linux:系統運行平臺    &…

    Linux干貨 2015-06-18
  • KeepAlived實現HAProxy雙主并實現資源的動靜分離

    KeepAlived實現HAProxy雙主并實現資源的動靜分離 前言 HAProxy介紹 實驗拓撲 實驗環境 實驗步驟 配置后端httpd服務器 配置HAProxy實現backend負載均衡 測試動靜分離效果 配置KeepAlived 測試KeepAlived 配置DNS DNS測試 最終測試 總結 前言 我們這次使用HAProxy作為負載均衡調度器來實現后…

    Linux干貨 2016-04-16
  • ?Ansible

    Ansible ansible簡介 安裝ansible 使用ansible前提條件 主要文件 配置文件 Host Inventory ansible.cfg 命令使用 ansible ansible-doc ansible-playbook 常用模塊 ansible各模塊簡單示例 ansible playbooks playbook內容組成 host、use…

    Linux干貨 2016-11-06
  • Heartbeat高可用http

    Heartbeat高可用http 實驗圖 heartbeat高可用http 一、實驗圖: 二、heartbeat高可用http(Heartbeat V1 haresource) heartbeat節點ssh互信 heartbeat節點名稱相互解析,uname -n heartbeat節點時間一致性 安裝前準備: ssh多節點互信 [root@node4&nb…

    Linux干貨 2016-07-07
  • linux 權限相關知識

    linux day 6     用戶、組和權限 1.Linux用戶:Username/UID         管理員:root, 0         普通用戶:1-65535             …

    Linux干貨 2016-08-08
欧美性久久久久