Linux的誕生史

Linux誕生史

遠古記憶-UNIX的誕生

Multics計劃開始

這是由麻省理工學院,通用電氣和AT&T的貝爾實驗室合作的操作系統項目,用于使用在GE-645大型主機上的。但是由于整個目標過于龐大,Multics雖然發布了一些產品,但是性能都很低,AT&T退出了Mulitcs項目,計劃終止。肯.湯姆遜當時也參加了這個項目,很不幸,在他加入到這個項目不就,Mutilate計劃就終止了。這時候GE-645依然在貝爾實驗室,于是,肯.湯姆遜就繼續在機器上開發軟件,此時,他寫了一個程序語言Bon。編寫了一個太空旅行的游戲,然而,游戲運行的速度很慢,并且耗費昂貴。

后來,GE-645被搬走了,肯.湯姆遜找了幾臺PDP-7。在丹尼斯里奇的幫助下,湯姆遜用PDP-7的匯編語言重寫了這個游戲,并在PDP-7上運行了起來,加上在MUltics項目的經驗,促使湯姆遜開始在DEC PDP-7上研究如何開發操作系統。

Linux的誕生史

湯姆遜和丹尼斯 里奇

1969年,湯姆遜提議在PDP-7上開發一個新的階層式操作系統的計劃。Multics原有成員加上Rudd Canady,都投入到這個計劃。之后,寫驅動,開發shell,在團隊的合作下,最終做出了一個分時多任務操作系統,成為第一版UNIX。這個項目被稱為UniCSUniplexed Information and Computing System

由于PDP-7的性能不太好,湯姆遜和丹尼斯里奇決定把第一版UNIX移植到PDP-11/20的機器上,在性能提升后,真正可以供多人使用(之前的只能支持兩個用戶),并正式改名為UNIX。后來在湯姆遜和里奇1971年共同發明出C語言之后,在1973年用C語言重寫了UNIX,形成第三版。之后的Unix高歌猛進,發展迅速,并被廣泛的使用。

由于此時的UNIX是幾乎全免費的,所以很多機構在此基礎上對UNIX進行重寫,形成了各種各樣的“類UNIX”版本,其中就有加州伯克萊大學分校開發的伯克萊軟件包(BSD)產品。

后來,貝爾實驗室和AT&T分離之后,開始不再將UNIX源碼授權給學術機構,并對之前的UNIX及其變種聲明了版權權利,并開始了一場持久的版權官司直到Novell接手。Novell采用比較開明的方式,允許柏克萊分校自由發布自己的Unix變種,但是前提是必須將來自于AT&T的代碼完全刪除。

 

自由的產物-BSD

伯克利軟件套件(英語:Berkeley
Software Distribution
,縮寫為BSD),也被稱為伯克利UnixBerkeley Unix),是一個操作系統的名稱。衍生于Unix(類Unix),1970年代由伯克利加州大學的學生比爾·喬伊(Bill Joy)開創,也被用來代表其衍生出的各種套件。

BSD常被當作工作站級別的Unix系統,這得歸功于BSD用戶許可證非常地寬松,許多1980年代成立的計算機公司,不少都從BSD中獲益,比較著名的例子如DECUltrix,以及Sun公司的SunOS。 1990年代,BSD很大程度上被System V 4.x版以及OSF/1系統所取代,但其開源版本被采用,促進了因特網的開發。

GNU計劃的產生

因為UNIX操作系統的商業化,原來的UNXI系統已經不能再被隨意的使用,很多人都希望能有一款免費好用的操作系統,因為并不是每個人都很有錢,也不是每個人都能任性的自己去寫操作系統,此時,理查·斯托曼在麻省理工學院人工智能實驗室發起GNU計劃,希望發展出一套完整的開放源代碼操作系統來取代Unix,計劃中的操作系統,名為GNU。    1983927日,理查·斯托曼在 net.unix-wizards net.usoft新聞組中公布這項計劃。在此項計劃中,開發出了很多我們現在熟悉的常用的工具,包括GNU編譯器套裝(GCC)、GNUC庫(glibc)、以及GNU核心工具組(coreutils)。另外也是GNU除錯器(GDB)、GNU二進制實用程序(binutils[15]GNU Cash shell[10] GNOME桌面環境。當然,GNU計劃的目的還是開發出一款自由傳播的操作系統,這個操作系統的名字叫Hurd,但是由于對操作系統的要求過高,以至于Hurd一直處于測試階段,但是在后來的Linux加入到GNU彌補了這一空缺。

 

導火索MINIX

Linux的誕生史

MINIX的開機啟動界面

         Unix產生后,版權在AT&T手里,在Version 7
Unix
發布之后,發布新的授權條款,將Unix源碼私有化,在大學不得再使用Unix源碼,荷蘭阿姆斯特丹自由大學計算機科學系的塔能鮑姆教授為了教學,自己寫了一個類Unix的小系統,命名為MINIX(意為mini-UNIX)。

 

LINUX的產生

Linux的誕生史

我們的主角人物,林納斯 托瓦茲(Linus Torvalds1991年,林納斯·托瓦茲在赫爾辛基大學上學時,對操作系統很好奇。由于但是386BSD還沒有出來??墒撬幌矚g他的386電腦上的MS-DOS操作系統,所以就安裝了Minix,可對MINIX只允許在教育上使用很不滿(在當時MINIX不允許被用作任何商業使用),于是他便開始寫他自己的操作系統。

Linux的第一個版本在19919月被大學FTP
server
管理員Ari Lemmke發布在Internet上,最初Torvalds稱這個內核的名稱為“Freax”,意思是自由(“free”)和奇異(“freak”)的結合字,并且附上“X”這個常用的字母,以配合所謂的類Unix的系統。但是FTP服務器管理員嫌原來的命名“Freax”的名稱不好聽,把內核的稱呼改成“Linux”,當時僅有10000行程序碼,仍必須運行于Minix操作系統之上,并且必須使用硬盤開機;隨后在10月份第二個版本(0.02版)發布,同時這位芬蘭赫爾辛基的大學生在comp.os.minix上發布一則消息

Hello everybody out there using minix- I’m
doing a (free) operation system (just a hobby, won’t be big and professional
like gnu) for 386(486) AT clones.

19943月,Linux1.0版正式發布。為了讓Linux可以在商業上使用,林納斯·托瓦茲決定更改他原來的協議(這個協議會限制商業使用),以GNU GPL協議來代替。之后許多開發者致力融合GNU元素到Linux中,做出一個有完整功能的、自由的操作系統。

Linux的標志物

Linux的誕生史

Linux的標志和吉祥物是一只名字叫做Tux的企鵝,標志的由來是因為Linus在澳洲時曾被一只動物園里的企鵝咬了一口,便選擇企鵝作為Linux的標志。更容易被接受的說法是:企鵝代表南極,而南極又是全世界所共有的一塊陸地。這也就代表Linux是所有人的Linux。

Linux的現狀

今天由Linus Torvalds帶領下,眾多開發共同參與開發和維護Linux內核。理查德·斯托曼領導的自由軟件基金會,繼續提供大量支持Linux內核的GNU組件。一些個人和企業開發的第三方的非GNU組件也提供對Linux內核的支持,這些第三方組件包括大量的作品,有內核模塊和用戶應用程序和庫等內容。Linux社區或企業都推出一些重要的Linux發行版,包括Linux內核、GNU組件、非GNU組件,以及其他形式的的軟件包管理系統軟件。

                                                                                                                                      

原創文章,作者:XinYi,如若轉載,請注明出處:http://www.www58058.com/80022

(0)
XinYiXinYi
上一篇 2017-07-11 20:51
下一篇 2017-07-11 21:13

相關推薦

  • linux中進程及內存管理工具

    pstree 顯示進程樹 ({}是線程) 選項-p #顯示進程編號 pstree username #查看指定用戶的進程 centos7中可以使用選項-s來查看指定進程的父子進程   ps (默認顯示當前終端運行的進程) 支持三種選項: 1、UNIX選項 -C cmdlist 指定命令(允許同時指定多個命令) -L 顯示線程 -e: 顯示所有進程,…

    Linux干貨 2017-12-17
  • linux 簡單命令

    前面介紹一些基本基礎篇 后面主要介紹screen命令的用法。

    2017-11-19
  • 幾個有意思的小腳本

    ①.用腳本畫一個圣誕樹 效果 ②.用腳本畫一個類似國際象棋的棋盤 半成品效果 再像這樣在下面多寫幾個循環,就可以了,我這個方法太笨,全寫完要截圖的太多,就放一部分意思下 ③.編寫一個腳本,打印出九九乘法表 效果 ④.編寫一個腳本,可接收一個 1-7 的數字作為參數,用 if 和 case 兩種方法實現根據輸入的數字輸出對應星期的英文 用if的方法 用case…

    2017-05-11
  • 第三周博客作業

      開始學習已經三周了,感覺到年底有些時間不夠,作業也交的越來越晚,需要加緊學習的進度了?! ?1、列出當前系統上所有已經登錄的用戶的用戶名,注意:同一個用戶登錄多次,則只顯示一次即可?! ∽詈唵蔚膶崿F題目要求的方法是使用cut命令只顯示用戶名并用sort命令排序去重: [root@localhost ~]# who |&nbs…

    Linux干貨 2016-12-20
  • N22-love cat 17周博客作業第2部分-構建一個LVS-DR模型的高性能集群

    題目: 搭建一個LVS-DR模型的高性能集群,并實現以下功能:       (1)、wordpress程序通過nfs共享給個個realserver;       (2)、后端realserver中的nginx和php分離; 第17周   第2部分 網…

    Linux干貨 2016-08-15
  • HAProxy 入門及基礎負載應用

    A、首介 。。。         HAProxy——開放源代碼軟件,是一款代理服務器和偽4層的負載均衡軟件解決方案?;赥CP(第四層)和HTTP(第七層)應用的代理軟件,支持高并發鏈接,它的工作模式可以將其簡單而安全地整合到當前的服務架構中,同時可以保護你的WEB服務器不暴露到…

    Linux干貨 2017-05-17
欧美性久久久久