1. 程式人生 > >關於Linux系統誕生髮展歷程、組成、特點、核心、發行版本

關於Linux系統誕生髮展歷程、組成、特點、核心、發行版本

Linux

1.關於Linux:

類似Windows,Linux也是一個作業系統軟體,Linux是一套開放原始碼程式的、並可以自由傳播的類Unix作業系統Unix系統是Linux系統的前身,具備很多優秀特性),它是一個基於POSIX多使用者多工並且支援多執行緒CPU的作業系統。

注意:POSIX表示可移植作業系統介面(Portable Operating System Interface of UNIX)POSIX標準定義了作業系統應該為應用程式提供的介面標準

Linux系統是由全世界各地的成千上萬的程式設計師設計和實現的。其目的是建立不受任何商品化軟體的版權制約的全世界都能自由使用的類

Unix作業系統相容產品。

Linux的特點:

▲是開放原始碼的程式,可自由修改。

▲Uinx系統相容,具備Unix幾乎所有優秀特性。

▲可自由傳播,無任何商業化版權制約。

▲適合Intel等X86 CPU系列架構的計算機。

Linux系統之所以受到廣大計算機愛好者的喜愛主要原因有兩個:

一是,Linux 屬於自由軟體,使用者不用支付任何費用就可以獲得系統和系統的原始碼,並且可以根據自己的需要對原始碼進行必要的修改,無償使用,無約束地自由傳播。

二是,Linux 具有Unix 的全部優秀特性,任何使用Unix 作業系統或想要學習Unix 作業系統的人,都可以通學習Linux 來了解Unix,同樣可以獲得Unix 中的幾乎所有優秀功能,並且,Linux 系統更開放,社群開發和全世界的使用者也更活躍。

2.Linux歷史:

2.1Unix的歷史

說到Linux的起源,不得不提起Linux之前的Unix系統。Uinx系統1969年在AT&T的貝爾實驗室開發。20世紀70年代,它逐步盛行,這期間,又產生了一個比較重要的分支,就是大約1977年誕生的BSD(Berkeley Software Distribution)系統,從BSD系統開始,各大廠商業公司開始了根據自身公司的硬體架構,並以BSD系統為基礎進行Unix系統的研發,從而產生了各種版本的Uinx系統,例如:SUN公司的Solaris,IBM公司的AIX,HP公司的HP UNIX等。

 

Unix誕生及版本分支發展簡略圖解

2.Unix的5大優秀特性

●技術成熟,可靠性高

使用Uinx系統時,即時執行若干年也無需重啟,它依然可以工作得非常好。毫不誇張地說,只要計算機硬體不壞,Unix就很難會出問題。

●極強的可伸縮性

Unix支援的CPU處理器體系架構非常多,包括Intel/AMD及HP-PA、MIPS、PowerPC、UltraSPARC、ALPHA等RISC晶片,以及SMP、MPP等技術。

●強大的網路功能

Internet互聯最重要的協議TCP/IP就是在Unix上開發和發展起來的。此外,Unix還支援非常多的網路通訊協議,如:NFS、DCE、IPX/SPX、SLIP、PPP等。

●強大的資料庫支援能力

Orale、DB2、Sybase、Informix等大型資料庫,都把Unix作為其主要的資料庫開發和執行平臺,一直到目前為止,依然如此。

●強大的開發功能

正是Unix促使了C語言的誕生,並相互促進與發展,成為當時工程師的首選作業系統和開發環境。網際網路早期有重大意義的軟體新技術的出現幾乎都在Unix上,例如:TCP/IP、WWW、JAVA、XML等。

2.3Unix 作業系統革命

70年代中後期,由於各廠商及商業公司開發的Unix 及內建軟體都是針對自己公司特定硬體的,因此在其他公司的硬體上基本上無法直接執行,面且當時沒有人對開發基於X86架構CPU 的系統感興趣。另外,70 年代末,Unix又面臨了突如其來的被AT&T 回收版權的重大問題,特別是要求禁止對學生群體提供Unix 系統原始碼,這樣的問題一度引起了當時Unix業界的恐慌,也因此產生了商業糾紛。

由於Unix面臨版權回收問題,以及程式碼不開源等的問題,這直接或間接的導致了新的類Unix系統的誕生以及自由軟體運動的建立和發展。

1984年,Richand Stallman 發起了開發自由軟體的運動,併成立了自由軟體基金會(FreeSoftware Foundation,FST )和GNU 專案。當時發起這個自動軟體運動和建立GNU專案的目的其實很簡單,就是想開發一個類似Unix 系統、並且是自由軟體的完整作業系統,也就是要解決70 年代末Unix 版權問題以及軟體原始碼面臨閉源的問題,這個系統叫做GNU作業系統。補充: 這個GNU 系統後來沒有流行起來。現在的GNU 系統通常是使用Linux 系統的核心,以及使用了GNU 專案貢獻的一些元件加上其它相關程式組成,這樣的組臺被稱為GNU/Linux 作業系統。

也是在.80 年代初期,樣是由於之前的Unix 系統版權和原始碼限制等問題,使得當時大學裡教學Unix 系統的束縛很大。因此,當時的個大學的教授,名字為Andrew Tanenbaum (譚邦寧),於大概1984 年開始著手編寫新的用於教學的Unix 系統,目標是開發的新Unix系統儘可能的和原有的Unix 系統相容,並且可以運行於X86PC 平臺,這個系統的名字為Minix.作者補充: 由於譚邦寧開發的這個Minix 系統的目的只是用於教學,因此,Mimix 系統的功能無法滿足商用的需求,但是Minix 的產生對於Limux 的誕生又是至

關重要的一個部分,

3.Linux的誕生:

Linux系統的誕生開始於芬“赫爾辛基大學的一位計算機的學生,名字為Linus Torvalds.在大學期間,他接觸到了學校的Unix系統,但是當時的Unix系統僅為一臺主機,且對應了多個終端,使用時存在操作等待時間很長等一些不爽的問題,無法滿足年輕的Linus Torvalds 的使用需求。因此他新萌生了自己開發一個Unix 的想法,於是不久,它就找到了前文提到的邦寧教授開發的用於教學的Minix 作業系統,和我們現在一樣,他把Minix安裝到了他的I386 人計算機上。此後,Torvalds又開始陸續閱讀了Minix系統的原始碼,從Minux 系統中學到了很多重要的系充核心程式設計理念 和設計思想,從而逐步開始了Linux 系統雛形的設計和開發。

PS:簡單概括:Linux系統誕生於1991年,由芬蘭大學生林納斯·託瓦茲(Linus Benedict Torvalds)和後來陸續加入的眾多愛好者共同開發完成。

 

Linus Torvalds

Linux的標誌和吉祥物為一隻名字叫作Tux的企鵝——Torvalds’Unix


4.Linux的發展歷程:

(1)1984年,Andrew S.Tanenbaum 開發了用於教學的Unix 系統,命名為MINIX.

(2)1989年,AndrewS.Tanenbaum 將MINIX 系統運行於X86 的PC 計算機平臺。

(3)1990年,芬蘭赫爾辛基大學學生Linus Torvalds 首次接觸MINIX系統。

(4)1991年,LimusTorvalds 開始在MINIX上編寫各種驅動程式等作業系統核心元件。

(5)1991年底,Limus Torvalds 公開了Linux 核心原始碼0.02 版

( http://www.kernel.org)(寫下該文件是Linux的核心版本為4.14.8)
(6) 1993年,Linux 1.0版發行,Linux 轉向GPL 版權協議
(8) 1994 年,Linux 的第一個商業發行版Slackware 問世。
(9) 1996年,美國國家標準技術局的計算機系統實驗室確認Linux 版本1.2.13 (由Open Linux 公司打包)符合POSIX 標準
(10)1999 年,Linux 的簡體中文發行版問世。
(11) 2000 年後,Linux 系統日趨成熟,湧現木量基於Linux 伺服器平臺的應用,並廣應用於基於ARM技術的嵌入式系統中。

5.Linux發展歷程中相關人物:

向前輩致以深深地敬意,沒有他們,就沒有今天的Linux優秀系統的存在。

 

Richard Matthew Stallman理查德·馬修·斯托曼 

自由軟體與GNU專案發起人


AnderwS.Tanenbaum

Minix開發者

LinusTorvalds

Linux之父

Linux系統誕生髮展過程中關鍵代表人物

6.Linux更多特點介紹:

●可以說Linux是Unix 在PC機上的克隆版,仿Unix 核心構建,同時Unix指令集向下幾乎完全相容

●是一個完善的多使用者、多工,支援多程序、多CPU的系統

●具有很高的系統穩定性與可靠性。

●具有很高的系統安全性。

●有完善的網路服務,支援HTTP、FTP、SMTTP、POP、SAMIBA、SNMIP、DNS、DHCP、SSH、TEINET等。

●是基於GNU許可自由開放的系統

●有大量第三方免費應用程式

●得到了眾多業界廠商支援,如IBM、ORACLE、INTEL、HP、MOTO、Google等。

●具有完善的大型資料庫平臺,包括Oracle、DB/2、Sybasc、MySQL、Postgres等。

●具有完善的圖形使用者介面,包括GNOME、KDE等。

●具有完善的開發平臺,包括C/Ct+、Java、Perl等,支援各類圖形介面API,如GTK+、QT等。

7.Linux核心概念知識:

 7.1自由軟體與FSF

 自由軟體:沒有商業化軟體版權制約,原始碼開放,可無約束自由傳播

自由意味著freedom,而免費意味著free,這是完全不同的概念。例如: Red Hat Linux

自由但不免費,CentOS Linux 是自由且免費的。

自由軟體關乎使用者執行、複製、釋出、研究、修改和改進該軟體的自由。更精確地說,自由軟體賦予軟體使用者四種自由:

●不論目的為何,有執行該軟體的自由。

●有研究該軟體如何執行,以及按需改寫該件的自由。當然,取得該軟作原始碼為達成此目的之前提。

●有重新發布拷貝的自由。

●有改進該軟體,以及向公眾釋出改進的自由,這樣整個社群都可受惠。同樣,取得該軟體的原始碼為達成此目的之前提。

FSF(Free Software Foundation):Richard Stallman

1984 年發起和創辦的。FSF的主要專案是GNU專案。它的目標是建立可自由釋出和可移植的類Unix作業系統產品。GNU 專案本身產生主要軟體包括: Emacs編輯軟體、gcc編譯軟體、bash 命令解釋程式和程式語言,以及gawk (GNU' s awk) 等。

7.2GNU知識

GNU 的全稱為GNU's not unix,意思是“GNU 不是UNTX”,GNU 計劃,又稱革奴計劃,是由Richard Sallman 在1984 年公開發起的,是FSF的主要專案。前已經提到過,這個專案的目標是建立一套完全自由的和可移植的類Unix作業系統。

GNU 類Unix作業系統是由一系列應用程式、系統庫和開發工具構成的軟體集合,例如: Emacs 編輯軟體、gcc 編譯軟體、bash 命令解釋程式和程式語言,以及gawk(GNU's awk) 等,並加上了用於資源分配和硬體管理的核心。

但是GNU 自己的核心Hurd仍在開發中,離實用還有一定的距離。因此,這個GNU系統並沒有流起來。現在的GNU 系統通常是使用Limux 系統的核心、加上GNU 專案奉獻的一些元件,以及其他相關程式組成的,這樣的組合被稱為GNU Linux 作業系統。

1991年Linux核心釋出的時候,GNU專案已經完成除系統核心之外的各種必備軟體的開發。在Linus Torvalds和其他開發人員的努力下,GNU 專案的部分元件又執行到Linux 核心之上,例如: GNU專案裡的Emacs、gee、bash、gawk 等,至今都是Linux

系統中很重要的基礎軟體。

  

GNU相關圖片紀念

7.3GPL知識

GPL個稱為General Public License,中文名為通用公共許可,是個最著名的開源許可協議,開源社群展著名的Linux 核心城是在GPL許可下發布的GPL許可是由由軟體其金會( Free Software foundation) 建立的。

1984 年,Richard Stallman 發起開發自由軟體的運動後不久,在其他人的協作下,他創立了通用公共許同證(GPL),這對推動自由軟體的發展起了至關重要的作用。

簡單理解,GPL 許可的核心,是保證任何人們共享和修改自由軟作的自由,任何人有權取得、修改和重新發布自由軟體的原始碼權利,但都必須同時給出具體更改的原始碼。

雖然整個Linux 核心是基於GNU用公共許可的,但是Linux 核心並不是GNU計劃的一部分

7.4LGPL知識

LGPL(Lesser General Public Liense) 相對於GPL 較為寬鬆,允許不公開全部原始碼,為基於Linux 平臺開發商業軟體提供了更廣闊的空間。

8.Linux系統組成

Linux 作業系統的核心Linus Torvalds開發的KernelLinux 核心之上的元件分為幾部分: 一部分是GNU 的元件,如Emacs、gcc、bash、gawk 等: 另一些重要組成部分則來自加利福尼亞大學Berkeley分校的BSD Unix專案和麻省理工牛院的X Windows系統專案,以及在這之後成千上萬的程式設計師開發的應用程式等。正是Linux核心與GNU專案、BSD Unix 以及MTT 的XI1(X Windows)的結合,才使的整個Linux 作業系統得以很快形成,並得到了發展,進而組成了今天優秀的Linux系統。


Linux作業系統組成原理簡單示意圖

9.Linux發行版本

Linux 核心(kernel) 版本主要有3 個系列,分別為Linux kernel 2.2、Linux kernel 2 4、Linux kernel 2.6。

(1)Linux的發行商包括Slackware、RedhatDebianFedoraTurboLinuxMandrakeSUSECentOSUbuntu紅旗、麒麒....

2) Red Hat Linux --9 0: 核心2.4.20-8

3)Red Hat 發展: 從版本9.0 後,Red Hat 不再遵循GPL協議了,成為收費產品(但仍開源),發展的版本依次為RedHat 3.x、RedHat 4.x、RedHat 5.x、RedHat 6.x、RedHat 7.x,伺服器的版本分別為:

Red Hat Enterprise Linux Advanced Platform(對應以前的Red Hat Enterprise Linux As)

Red Hat Enterprise Linux (對應以前的Red Hat Enterprise Linux ES)

(4)Fedora為Red Hat的一個分支,仍然保持GPL協議,可以認為是Red Hat預釋出版。

(5)CentOS(Community Enterprise Operating System)為Red Hat的另一個分支,以Red Hat 所釋出的原始碼重建符合GPL許可協議的Linux系統,即把Red Hat Linux原始碼中去除商標LOGO以及非自由的軟體部分後的再編譯版,目前CentOS已被Red Hat公司收購,但仍開源免費。CentOS Linux 是國內網際網路公司使用最多的一套Linux系統。