Linux操作系統(tǒng)的發(fā)展歷程總結(jié)
Linux操作系統(tǒng)的發(fā)展歷程總結(jié)
Linux操作系統(tǒng)作為現(xiàn)在的主流系統(tǒng)之一,發(fā)展歷程也是步步艱辛。下面由學(xué)習(xí)啦小編為大家整理了Linux操作系統(tǒng)的發(fā)展歷程總結(jié),希望對大家有幫助!
Linux操作系統(tǒng)的發(fā)展歷程總結(jié)——Linux 操作系統(tǒng)的誕生
1981 年IBM 公司推出享譽(yù)全球的微型計算機(jī)IBM PC。在1981-1991 年間,MS-DOS 操作系統(tǒng)一直是微型計算機(jī)上操作系統(tǒng)的主宰。此時計算機(jī)硬件價格雖然逐年下降,但軟件價格仍然是居高不下。當(dāng)時Apple 的MACs 操作系統(tǒng)可以說是性能最好的,但是其天價沒人能夠輕易靠近。
當(dāng)時的另一個計算機(jī)技術(shù)陣營是Unix世界。但是Unix操作系統(tǒng)就不僅是價格貴的問題了。為了尋求高利率,Unix經(jīng)銷商將價格抬得極高,PC小用戶就根本不能靠近它。曾經(jīng)一度受到Bell Labs的許可而可以在大學(xué)中用于教學(xué)的UNIX源代碼一直被小心地守衛(wèi)著不需公開。對于廣大的PC用戶,軟件行業(yè)的大型供應(yīng)商始終沒有給出有效的解決該問題的手段。正在此時,出現(xiàn)了MINIX操作系統(tǒng),并有一本詳細(xì)的書本描述它的設(shè)計實(shí)現(xiàn)原理。由于AST的書寫的非常詳細(xì),并且敘述有條有理,幾乎全世界的計算機(jī)愛好者都在看這本書以理解操作系統(tǒng)的工作原理。其中也包括Linux系統(tǒng)的創(chuàng)始者Linus Benedict Torvalds。當(dāng)時(1991年),Linus Benedict Torvalds 是赫爾辛基大學(xué)計算機(jī)科學(xué)系的二年級學(xué)生,也是一個自學(xué)hacker。這個21 歲的芬蘭年輕人喜歡鼓搗計算機(jī),測試計算機(jī)的能力和限制。但當(dāng)時缺乏的是一個專業(yè)級的操作系統(tǒng)。MINIX 雖然很好,但只是一個用于教學(xué)目的簡單操作系統(tǒng),而不是一個強(qiáng)有力的實(shí)用操作系統(tǒng)。
到1991 年,GNU 計劃已經(jīng)開發(fā)出了許多工具軟件。最受期盼的Gnu C 編譯器已經(jīng)出現(xiàn),但還沒有開發(fā)出免費(fèi)的GNU 操作系統(tǒng)。即使是MINIX 也開始有了版權(quán),需要購買才能得到源代碼。而GNU 的操作系統(tǒng)HURD 一直在開發(fā)之中,但并不能在幾年內(nèi)完成。對于Linus 來說,已經(jīng)不能等待了。從1991 年4 月份起,他開始醞釀并著手編制自己的操作系統(tǒng)。剛開始,他的目的很簡單,只是為了學(xué)習(xí)Intel 386 體系結(jié)構(gòu)保護(hù)模式運(yùn)行方式下的編程技術(shù)。但后來Linux 的發(fā)展卻完全改變了初衷。
1991 年初,Linux 開始在一臺386sx 兼容微機(jī)上學(xué)習(xí)minix 操作系統(tǒng)。通過學(xué)習(xí),他逐漸不能滿足minix 系統(tǒng)的現(xiàn)有性能,并開始醞釀開發(fā)一個新的免費(fèi)操作系統(tǒng)。根據(jù)Linus 在comp.os.minix 新聞組上發(fā)布的消息,我們可以知道他逐步從學(xué)習(xí)minix 系統(tǒng)到開發(fā)自己的Linux 的過程。
Linus 第1 次向comp.os.minix 投遞消息是在1991 年3 月29 日。題目是"gcc on minix-386 doesn't optimize",是有關(guān)gcc 編譯器在minix-386 上運(yùn)行的優(yōu)化問題,由此可知,Linus 在1991 年的初期已經(jīng)開始深入研究了minix 系統(tǒng),并在這段時間有了改進(jìn)minix 操作系統(tǒng)的思想,而且在進(jìn)一步學(xué)習(xí)minix系統(tǒng)中,逐步演變?yōu)橄胱约褐匦略O(shè)計一個基于Intel 80386 體系結(jié)構(gòu)的新操作系統(tǒng)。他在回答有人提出minix 上的一個問題時,所說的第一句話是"閱讀源代碼"("RTFSC (Read the Fucking Source Code :-)")。他認(rèn)為答案就在源程序中。這也說明了對于學(xué)習(xí)系統(tǒng)軟件來說,你不光需要懂得系統(tǒng)的工作基本原理,還需要結(jié)合實(shí)際系統(tǒng),學(xué)習(xí)實(shí)際系統(tǒng)的實(shí)現(xiàn)方法。因?yàn)槔碚摦吘故抢碚?,其中省略了許多枝節(jié),而這些枝節(jié)問題雖然沒有太多的理論含量,但卻是一個系統(tǒng)必要的組成部分,就像麻雀身上的一根羽毛。
從1991 年的4 月份開始,Linus 幾乎花了全部時間研究386-minix 系統(tǒng)(hack the kernel),并且嘗試著移植GNU 的軟件到該系統(tǒng)上(GNU gcc、bash、gdb 等)。并于4 月13 日在comp.os.minix 上發(fā)布說自己已經(jīng)成功地將bash 移植到了minix 上,而且已經(jīng)愛不釋手、不能離開這個shell 軟件了。
第一個與Linux 有關(guān)的消息是在1991 年7 月3 日在comp.os.minix 上發(fā)布的(當(dāng)然此時還不存在Linux 這個名稱,當(dāng)時Linus 的腦子里想的可能是FREAX ,F(xiàn)REAX 的英文含義是怪誕的、怪物、異想天開等)。其中透露了他正在進(jìn)行Linux 系統(tǒng)的開發(fā),并且在Linux 最初的時候已經(jīng)想到要實(shí)現(xiàn)與POSIX(UNIX 的國際標(biāo)準(zhǔn))的兼容問題了。
在Linus 的下一發(fā)布的消息中(1991 年8 月25 日 comp.os.minix),他向所有minix 用戶詢問"What would you like to see in minix?"("你最想在minix 中見到什么?"),在該消息中他首次透露出正在開發(fā)一個(免費(fèi)的)386(486)操作系統(tǒng),并且說只是興趣而已,代碼不會很大,也不會象GNU 的那樣專業(yè)。開發(fā)免費(fèi)操作系統(tǒng)這個想法從4 月份就開始醞釀了,希望大家反饋一些對于minix 系統(tǒng)中喜歡那些特色不喜歡什么等信息,由于實(shí)際的和其它一些原因,新開發(fā)的系統(tǒng)剛開始與minix 很象(并且使用了minix 的文件系統(tǒng))。并且已經(jīng)成功地將bash(1.08 版)和gcc(1.40 版)移植到了新系統(tǒng)上,而且在過幾個月就可以實(shí)用了。
最后,Linus 申明他開發(fā)的操作系統(tǒng)沒有使用一行minix 的源代碼;而且由于使用了386 的任務(wù)切換特性,所以該操作系統(tǒng)不好移植(沒有可移植性),并且只能使用AT 硬盤。對于Linux 的移植性問題,Linus 當(dāng)時并沒有考慮。但是目前Linux 幾乎可以運(yùn)行在任何一種硬件體系結(jié)構(gòu)上。
到了1991 年的10 月5 日,Linus 在comp.os.minix 新聞組上發(fā)布消息,正式向外宣布Linux 內(nèi)核系統(tǒng)的誕生(Free minix-like kernel sources for 386-AT)。這段消息可以稱為Linux 的誕生宣言,并且一直廣為流傳。因此10 月5 日對Linux 社區(qū)來說是一個特殊的日子,許多后來Linux 的新版本發(fā)布時都選擇了這個日子。所以RedHat 公司選擇這個日子發(fā)布它的新系統(tǒng)也不是偶然的。
Linux操作系統(tǒng)的發(fā)展歷程總結(jié)——Linux 操作系統(tǒng)版本的變遷
0.00 (1991.2-4?) 兩個進(jìn)程分別顯示AAA BBB
0.01 (1991.9?)第一個正式向外公布的Linux 內(nèi)核版本。
0.02 (1991.10.5)該版本以及0.03 版是內(nèi)部版本,目前已經(jīng)無法找到。
0.03 (1991.10.5)
0.10 (1991.10)由Ted Ts'o 發(fā)布的Linux 內(nèi)核版本。
0.11 (1991.12.8)基本可以正常運(yùn)行的內(nèi)核版本。
0.12 (1992.1.15)主要加入對數(shù)學(xué)協(xié)處理器的軟件模擬程序。
0.95 (0.13) (1992.3.8) 開始加入虛擬文件系統(tǒng)思想的內(nèi)核版本。
0.96 (1992.5.12)開始加入網(wǎng)絡(luò)支持和虛擬文件系統(tǒng)VFS。
0.97 (1992.8.1)
0.98 (1992.9.29)
0.99 (1992.12.13)
1.0 (1994.3.14)
1.20 (1995.3.7)
2.0 (1996.2.9)
2.20 (1999.1.26)
2.40 (2001.1.4)
2.60 (2003.12.17)
將Linux 系統(tǒng)0.13 版內(nèi)核直接改稱0.95 版,Linus 的意思是讓大家不要覺得離1.0 版還很遙遠(yuǎn)。同時,從0.95 版開始,對內(nèi)核的許多改進(jìn)之處(補(bǔ)丁程序的提供)均以其他人為主了,而Linus 的主要任務(wù)開始變成對內(nèi)核的維護(hù)和決定是否采用某個補(bǔ)丁程序。
Linux操作系統(tǒng)的發(fā)展歷程總結(jié)——Linux 名稱的來由
Linux 操作系統(tǒng)剛開始時并沒有被稱作Linux,Linus 給他的操作系統(tǒng)取名為FREAX,其英文含義是怪誕的、怪物、異想天開等意思。在他將新的操作系統(tǒng)上載到ftp.funet.fi 服務(wù)器上時,管理員Ari Lemke很不喜歡這個名稱。他認(rèn)為既然是Linus 的操作系統(tǒng)就取其諧音Linux 作為該操作系統(tǒng)的目錄吧,于是Linux 這個名稱就開始流傳下來。
在Linus 的自傳《Just for Fun》一書中,Linus 解釋說:"坦白地說,我從來沒有想到過要用Linux 這個名稱發(fā)布這個操作系統(tǒng),因?yàn)檫@個名字有些太自負(fù)了。而我為最終發(fā)布版準(zhǔn)備的是什么名字呢?Freax。實(shí)際上,內(nèi)核代碼中某些早期的Makefile - 用于描述如何編譯源代碼的文件 - 文件中就已經(jīng)包含有"Freax"這個名字了,大約存在了半年左右。但其實(shí)這也沒什么關(guān)系,在當(dāng)時還不需要一個名字,因?yàn)槲疫€沒有向任何人發(fā)布過內(nèi)核代碼。而Ari Lemke,他堅(jiān)持要用自己的方式將內(nèi)核代碼放到ftp 站點(diǎn)上,并且非常不喜歡Freax 這個名字。他堅(jiān)持要用現(xiàn)在這個名字(Linux),我承認(rèn)當(dāng)時我并沒有跟他多爭論。但這都是他取的名字。所以我可以光明正大地說我并不自負(fù),或者部分坦白地說我并沒有本位主義思想。但我想好吧,這也是個好名字,而且以后為這事我總能說服別人,就象我現(xiàn)在做的這樣。"-- Linus Torvalds《Just for fun》第84-88 頁。
通過上述說明,我們可以對上述Linux 的五大支柱歸納如下:
?、佟NIX 操作系統(tǒng)——UNIX 于1969 年誕生在Bell 實(shí)驗(yàn)室。Linux 就是UNIX 的一種克隆系統(tǒng)。UNIX的重要性就不用多說了。
?、凇INIX 操作系統(tǒng)——Minix 操作系統(tǒng)也是UNIX 的一種克隆系統(tǒng),它于1987 年由著名計算機(jī)教授Andrew S. Tanenbaum 開發(fā)完成。由于MINIX 系統(tǒng)的出現(xiàn)并且提供源代碼(只能免費(fèi)用于大學(xué)內(nèi))在全世界的大學(xué)中刮起了學(xué)習(xí)UNIX 系統(tǒng)旋風(fēng)。Linux 剛開始就是參照Minix 系統(tǒng)于1991 年才開始開發(fā)。
?、邸NU 計劃——開發(fā)Linux 操作系統(tǒng),以及Linux 上所用大多數(shù)軟件基本上都出自GNU 計劃。Linux只是操作系統(tǒng)的一個內(nèi)核,沒有GNU 軟件環(huán)境(比如說bash shell),則Linux 將寸步難行。
?、堋OSIX 標(biāo)準(zhǔn)——該標(biāo)準(zhǔn)在推動Linux 操作系統(tǒng)以后朝著正規(guī)路上發(fā)展起著重要的作用。是Linux前進(jìn)的燈塔。
?、荨NTERNET——如果沒有Intenet 網(wǎng),沒有遍布全世界的無數(shù)計算機(jī)駭客的無私奉獻(xiàn),那么Linux最多只能發(fā)展到0.13(0.95)版的水平。