?1、Linux前身-Unix誕生
1965年,貝爾實(shí)驗(yàn)室Bell、麻省理工學(xué)院MIT、奇異公司GE,發(fā)起了Multics計(jì)劃,讓主機(jī)可以達(dá)成300個(gè)終端。后來因?yàn)橘Y金不足、計(jì)劃進(jìn)度等問題,退出了研究。貝爾研究室退出了Multics計(jì)劃。1968年Multics 項(xiàng)目到后期由于開發(fā)進(jìn)度不是很好,MIT 和Bell實(shí)驗(yàn)室相繼離開這個(gè)項(xiàng)目的開發(fā),最終導(dǎo)致項(xiàng)目擱淺。
原計(jì)劃的人員中有一位Ken Thompson(湯姆森.肯 UNIX之父),再也不能玩自己寫的名為“star travel”的游戲了,因?yàn)檫@個(gè)游戲完全是基于Multics的。既然實(shí)驗(yàn)室撤出了項(xiàng)目,那就自己開發(fā)個(gè)操作系統(tǒng)來滿足想玩游戲的愿望。1969年8月,Thompson趁老婆不在家自己用4周時(shí)間寫了一個(gè)核心程序(包括:內(nèi)核,文件系統(tǒng),編輯器,編譯程序),Thompson將Multics計(jì)劃中的系統(tǒng)簡(jiǎn)化了,最后叫Unics(此時(shí)還不叫Unix,它是由B語言寫的)。
? ? 1970年 Unix誕生
當(dāng)時(shí)在開發(fā)Multics項(xiàng)目的時(shí)候,實(shí)驗(yàn)室中有一個(gè)開發(fā)成員開發(fā)了一 款游戲 (ravel space:遨游太空),因?yàn)閮蓚€(gè)實(shí)驗(yàn)室相繼離開項(xiàng)目開發(fā),導(dǎo)致這名開發(fā)人員沒法玩游戲。后來他提議組織人員重新在Multics項(xiàng)目之上重新的開發(fā),也就出現(xiàn)了1970 年的Unix.當(dāng)時(shí)Unix操作系統(tǒng)是使用的匯編語言(機(jī)器語言)開發(fā)的。
? ? 1973年用C語言重寫 Unix
1973年Unix正式誕生,由于Thompson寫的這個(gè)系統(tǒng)是在太好用了,經(jīng)過貝爾實(shí)驗(yàn)室的流傳與數(shù)次改版,成為如今用C語言寫成的Unics核心,也就是Unix。因?yàn)閰R編語言有一一個(gè)最大的局限性,對(duì)于計(jì)算機(jī)硬件過于依賴。導(dǎo)致移植性不好,所以后斯在1973年使用了C語言對(duì)其進(jìn)行重新開發(fā)。
1975年Bell 實(shí)驗(yàn)室允許大學(xué)使用Unix
1975年,Bell 實(shí)驗(yàn)室允許大學(xué)使用Unix操作系統(tǒng)用于教學(xué)作用,而不允許用于商業(yè)用途。
Unix的版本主要兩個(gè)分支:
AT&T System V ——就是俗稱的“系統(tǒng)5” (貝爾實(shí)驗(yàn)室)
Berkley Software Distribution (BSD) (加州大學(xué)伯克利分校)
2、Linux 誕生
?Linux的開發(fā)作者,Linux之父, linus(李納斯. 托瓦茲)。
1991年芬蘭的赫爾辛基大學(xué)的Linus Torvalds(拖瓦茲,萊納斯:Linux之父),他使用bash、gcc等工具寫了一個(gè)內(nèi)核程序,可以在386機(jī)器上運(yùn)行,從此開始Linux的發(fā)展之路。
?一個(gè)名叫Linus Torvalds 的芬蘭大學(xué)生想要了解Intel的新CPU386。他認(rèn)為比較好的學(xué)習(xí)方法是自己編寫一個(gè)操作系統(tǒng)的內(nèi)核。出于這種目的,加上他對(duì)當(dāng)時(shí)Unix 變種版本(即Minix)對(duì)于80386類機(jī)器的脆弱支持十分不滿,他決定要開發(fā)出一個(gè)全功能的、支持POSIX標(biāo)準(zhǔn)的、類Unix的操作系統(tǒng)內(nèi)核,該系統(tǒng)吸收了BSD和System V的優(yōu)點(diǎn),同時(shí)摒棄了它們的缺點(diǎn)。Linus獨(dú)立把這個(gè)內(nèi)核開發(fā)到0.02 版,這個(gè)版本已經(jīng)可以運(yùn)行g(shù)cc、bash 和很少的一些應(yīng)用程序。這些就是他開始的全部工作了。后來,他又開始在因特網(wǎng)上尋求廣泛的幫助。
李納斯當(dāng)時(shí)學(xué)校使用的就是Unix 操作系統(tǒng),然后其對(duì)系統(tǒng)的底層代碼進(jìn)行了修改,放到了學(xué)校為學(xué)生開放的網(wǎng)站上,原先他把文件命名寫成了Linus's Unix,后期網(wǎng)絡(luò)管理發(fā)現(xiàn)之后覺得這個(gè)名字不好,自己手動(dòng)的將名字改成Linux.隨后其他同學(xué)下載之后發(fā)現(xiàn)這個(gè)版本還是挺好用的,隨后都把自己代碼貢獻(xiàn)給李納斯。
? ?1991年9月17日 Linux 0.0.1版本
? ?1992年1月5日? ?Linux 0.0.2 版本
? ?1994年3月14日 Linux 1.0 版本
? ?1996年6月9日? ?Linux 2.0 版本
? ?2011年6月21日? Linux 3.0 版本
上述提及的版本號(hào)并不是分支版本,而是指linux的內(nèi)核版本。
Linux核心理念:萬物皆文件;
Linux:是一個(gè)內(nèi)核,而不是一個(gè)操作系統(tǒng);因此我們平常說的“操作系統(tǒng)用的是Windows、Mac還是Linux???”是錯(cuò)誤的,Ubuntu、Fedora等才是操作系統(tǒng)的名字,他們都使用Linux內(nèi)核;1991年最初由Linus Torvalds針對(duì)386(個(gè)人計(jì)算機(jī))開發(fā);Linus Torvalds那時(shí)是芬蘭的一名研究生;Unix Like:很像Unix的操作系統(tǒng);
蘋果電腦為什么現(xiàn)在能裝Windows操作系統(tǒng)?因?yàn)樘O果使用了Intel的X86架構(gòu),而windows也是針對(duì)此架構(gòu)的,因此按理論來說一般的PC上也可以安裝mac操作系統(tǒng);
3、開源文化
Linux是開源的操作系統(tǒng)。所謂開源就是指開放源代碼
1984年Richard Mathew Stallman(斯托曼)發(fā)起GNU計(jì)劃, GNU是一個(gè)組織(GNU is Not Unix)。計(jì)劃目的是:建立一個(gè)自由、開源的Unix系統(tǒng)。于是他不僅宣傳讓同事使用此內(nèi)核程序,自己還編寫C語言的編譯器也就是gcc。
其中GNU開發(fā)的幾個(gè)重要軟件:
(1) Emacs 代碼編輯器工具
(2) GNU C (GCC)
(3) GNU C Library
(4) Bash shell
1985年FSF 基金會(huì)
1990年Emacs、 GCC、程序庫(kù)
1991年Stallman 去找Linus,商談讓Linux加入其開源計(jì)劃(GNU 計(jì)劃)
1992年GNU/Linux
4、Linux系統(tǒng)特點(diǎn)
? 開放性、多用戶、多任務(wù) 、良好的用戶界面、優(yōu)異的性能與穩(wěn)定性
?單用戶:一個(gè)用戶,在登錄計(jì)算機(jī)(操作系統(tǒng)),只能允許同時(shí)登錄一個(gè)用戶;
?單任務(wù): 一個(gè)任務(wù),允許用戶同時(shí)進(jìn)行的操作任務(wù)數(shù)量;
?多用戶:多個(gè)用戶,在登錄計(jì)算機(jī)(操作系統(tǒng)),允許同時(shí)登錄多個(gè)用戶進(jìn)行操作;
?多任務(wù):多個(gè)任務(wù),允許用戶同時(shí)進(jìn)行多個(gè)操作任務(wù);
Windows屬于:單用戶、多任務(wù)。
Linux屬于:多用戶、多任務(wù)。
5、Linux 分支
現(xiàn)在比較有名的ubuntu、debian、 centos(Community Enterprise Operating System)、 redhat、 suse 等等 。
Linux主要有以下幾個(gè)版本:
Debian
Debian運(yùn)行起來極其穩(wěn)定,這使得它非常適合用于服務(wù)器。
Gentoo
與Debian一樣,Gentoo這款操作系統(tǒng)也包含數(shù)量眾多的軟件包。Gentoo并非以預(yù)編譯的形式出現(xiàn),而是每次需要針對(duì)每個(gè)系統(tǒng)進(jìn)行編譯。它被認(rèn)為是最佳學(xué)習(xí)對(duì)象,可以進(jìn)而了解Linux操作系統(tǒng)的內(nèi)部運(yùn)作原理。
Ubuntu
Ubuntu是Debian的一款衍生版,也是當(dāng)今最受歡迎的免費(fèi)操作系統(tǒng)。Ubuntu側(cè)重于它在這個(gè)市場(chǎng)的應(yīng)用,在服務(wù)器、云計(jì)算、甚至一些運(yùn)行Ubuntu Linux的移動(dòng)設(shè)備上很常見。
Damn Vulnerable Linux
易受攻擊的Linux,根本不是一般意義上的優(yōu)秀的Linux發(fā)行版,它的目的在于借機(jī)訓(xùn)練Linux管理員。
紅帽企業(yè)級(jí)Linux
這是第一款面向商業(yè)市場(chǎng)的Linux發(fā)行版。它有服務(wù)器版本,支持眾多處理器架構(gòu),包括x86和x86_64。
CentOS
CentOS是一款企業(yè)級(jí)Linux發(fā)行版,它使用紅帽企業(yè)級(jí)Linux中的免費(fèi)源代碼重新構(gòu)建而成。這款重構(gòu)版完全去掉了注冊(cè)商標(biāo)以及Binary程序包方面一個(gè)非常細(xì)微的變化。有些人不想支付一大筆錢,又能領(lǐng)略紅帽企業(yè)級(jí)Linux。
Fedora
小巧的Fedora適合那些人:想嘗試最先進(jìn)的技術(shù),等不及程序的穩(wěn)定版出來。其實(shí),F(xiàn)edora就是紅帽公司的一個(gè)測(cè)試平臺(tái);產(chǎn)品在成為企業(yè)級(jí)發(fā)行版之前,在該平臺(tái)上進(jìn)行開發(fā)和測(cè)試。Fedora是一款非常好的發(fā)行版,有龐大的用戶論壇,軟件庫(kù)中還有為數(shù)不少的軟件包。Fedora同樣使用YUM來管理軟件包。
Kali Linux
Kali Linux是Debian的一款衍生版。Kali旨在用于滲透測(cè)試。
Arch
Arch是一款采用滾動(dòng)發(fā)行方式的操作系統(tǒng):只要安裝一次就夠了;每當(dāng)發(fā)行了某個(gè)新版本,就可以升級(jí)發(fā)行版,不需要重新安裝。Pacman是Arch Linux的軟件包管理器。Arch Linux既支持X86處理器架構(gòu),又支持X86_64架構(gòu),安裝程序可以從光盤或U盤來運(yùn)行。Arch旨在從開發(fā)者的角度而不是從用戶的角度做到力求簡(jiǎn)單。Arch配置和安裝起來超容易。它真是一款面向高手的發(fā)行版,讓你可以了解Linux系統(tǒng)的每一個(gè)細(xì)枝末節(jié)。
OpenSuse
OpenSuse這款Linux發(fā)行版是免費(fèi)的,并不供商業(yè)用途使用,仍然供個(gè)人使用。OpenSuse的真正競(jìng)爭(zhēng)對(duì)手是紅帽企業(yè)級(jí)Linux。它使用Yast來管理軟件包。有了Yast,使用和管理服務(wù)器應(yīng)用程序就非常容易。此外,Yast安裝向?qū)С绦蚩梢耘渲秒娮余]件服務(wù)器、LDAP服務(wù)器、文件服務(wù)器或Web服務(wù)器,沒有任何不必要的麻煩。它隨帶snapper快照管理工具,因而可以恢復(fù)或使用舊版的文件、更新和配置。由于讓滾動(dòng)發(fā)行版本成為可能的Tumbleweed,可將已安裝的操作系統(tǒng)更新到最新版本,不需要任何的新發(fā)行版。
?
6、Linux重要人物
Ken Thompson:C語言之父和Unix之父
Dennis Ritchie:C語言之父和Unix之父;
Stallman:著名黑客,GNU創(chuàng)始人,開發(fā)了Emacs、gcc、bash shell;
Bill Joy:BSD開發(fā)者;
Tanenbaum:Minix開發(fā)者;
Linus Torvalds:Linux之父,芬蘭赫爾辛基大學(xué);
7、補(bǔ)充知識(shí):
Linux 操作系統(tǒng)的誕生、發(fā)展和成長(zhǎng)過程依賴于以下五個(gè)重要支柱:
UNIX 操作系統(tǒng)、 ? ?MINIX操作系統(tǒng)、 ? ? ?GNU 計(jì)劃、 ? ? ? POSIX 標(biāo)準(zhǔn) 、 ? Internet 網(wǎng)絡(luò)。
操作系統(tǒng)介紹
內(nèi)核負(fù)責(zé)控制硬件資源分配,而如果只有內(nèi)核,則只能讓計(jì)算機(jī)硬件運(yùn)行,而不能有任何功能,因此需要系統(tǒng)調(diào)用提供給開發(fā)者使用,從而開發(fā)應(yīng)用程序;內(nèi)核能夠控制硬件,比如:讓CPU可以運(yùn)算、讓硬盤可以讀寫數(shù)據(jù)等;只有內(nèi)核的話,只能讓計(jì)算機(jī)運(yùn)行,但是我們不能控制計(jì)算機(jī);而系統(tǒng)調(diào)用是操作系統(tǒng)提供給開發(fā)者的調(diào)用接口;任何硬件都不會(huì)默認(rèn)就被操作系統(tǒng)控制,而需要開發(fā)商根據(jù)操作系統(tǒng)提供的接口開發(fā)驅(qū)動(dòng)程序,只有安裝了驅(qū)動(dòng)程序才能夠控制硬件設(shè)備。
UNIX操作系統(tǒng)
Linux 操作系統(tǒng)是UNIX 操作系統(tǒng)的一個(gè)克隆版本。UNIX操作系統(tǒng)是美國(guó)貝爾實(shí)驗(yàn)室的Ken.Thompson和Dennis Ritchie 于1969 年夏在DEC PDP-7 小型計(jì)算機(jī)上開發(fā)的一個(gè)分時(shí)操作系統(tǒng)。Ken Thompson 為了能在閑置不用的PDP-7 計(jì)算機(jī)上運(yùn)行他非常喜歡的星際旅行(Space travel)游戲,于是在1969 年夏天乘他夫人回家鄉(xiāng)加利福尼亞渡假期間,在一個(gè)月內(nèi)開發(fā)出了UNIX 操作系統(tǒng)的原型。當(dāng)時(shí)使用的是BCPL 語言(基本組合編程語言),后經(jīng)Dennis Ritchie 于1972 年用移植性很強(qiáng)的C語言進(jìn)行了改寫,使得UNIX 系統(tǒng)在大專院校得到了推廣。
MINIX操作系統(tǒng)
MINIX 系統(tǒng)是由Andrew S. Tanenbaum(AST)開發(fā)的。AST 是在荷蘭Amsterdam 的Vrije 大學(xué)數(shù)學(xué)與計(jì)算機(jī)科學(xué)系統(tǒng)工作,是ACM 和IEEE 的資深會(huì)員(全世界也只有很少人是兩會(huì)的資深會(huì)員)。MINIX 是他1987 年編制的,主要用于學(xué)生學(xué)習(xí)操作系統(tǒng)原理。到1991 年時(shí)版本是1.5。目前主要有兩個(gè)版本在使用:1.5 版和2.0 版。當(dāng)然目前MINIX 系統(tǒng)已經(jīng)是免費(fèi)的,可以從許多FTP 上下載。
對(duì)于Linux 系統(tǒng),他后來曾表示對(duì)其開發(fā)者Linus的稱贊。但他認(rèn)為L(zhǎng)inux的發(fā)展很大原因是由于他為了保持MINIX 的小型化,能讓學(xué)生在一個(gè)學(xué)期內(nèi)就能學(xué)完,因而沒有接納全世界許多人對(duì)MINIX的擴(kuò)展要求。因此在這樣的前提下激發(fā)了Linus 編寫Linux 系統(tǒng)。當(dāng)然Linus 也正好抓住了這個(gè)好時(shí)機(jī)。
作為一個(gè)操作系統(tǒng),MINIX 并不是優(yōu)秀者,但它同時(shí)提供了用C語言和匯編語言編寫的系統(tǒng)源代碼。這是第一次使得有抱負(fù)的程序員或hacker能夠閱讀操作系統(tǒng)的源代碼。在當(dāng)時(shí),這種源代碼是軟件商們一直小心守護(hù)著的秘密。
GNU計(jì)劃
軟件產(chǎn)業(yè)在70年代成就了兩位針鋒相對(duì)的領(lǐng)袖人物,來自哈佛大學(xué)的比爾·蓋茨和Richard M.Stallman。前者宣布了Copyright(版權(quán))時(shí)代的到來,并構(gòu)建了微軟帝國(guó)的輝煌;后者于1984年創(chuàng)立自由軟件體系GNU,擬定普遍公用版權(quán)協(xié)議(GeneralPublicLicense,簡(jiǎn)稱GPL),今天Linux的成功就得益于GPL協(xié)議。
所有GPL協(xié)議下的自由軟件都遵循著Richard M. Stallman的"Copyleft"(非版權(quán))原則:即自由軟件允許用戶自由拷貝、修改和銷售,但是對(duì)其源代碼的任何修改都必須向所有用戶公開。
GNU計(jì)劃和自由軟件基金會(huì)FSF(the Free Software Foundation)是由Richard M. Stallman 于1984 年一手創(chuàng)辦的。旨在開發(fā)一個(gè)類似UNIX 并且是自由軟件的完整操作系統(tǒng):GNU系統(tǒng)(GNU 是"GNU's Not Unix"的遞歸縮寫,它的發(fā)音為"guh-NEW")。
各種使用Linux作為核心的GNU 操作系統(tǒng)正在被廣泛的使用。雖然這些系統(tǒng)通常被稱作"Linux",但是Stallman 認(rèn)為,嚴(yán)格地說,它們應(yīng)該被稱為GNU/Linux系統(tǒng)。
到上世紀(jì)90 年代初,GNU 項(xiàng)目已經(jīng)開發(fā)出許多高質(zhì)量的免費(fèi)軟件,其中包括有名的emacs 編輯系統(tǒng)、bash shell 程序、gcc 系列編譯程序、gdb 調(diào)試程序等等。這些軟件為L(zhǎng)inux 操作系統(tǒng)的開發(fā)創(chuàng)造了一個(gè)合適的環(huán)境。這是Linux 能夠誕生的基礎(chǔ)之一,以至于目前許多人都將Linux 操作系統(tǒng)稱為“GNU/Linux”操作系統(tǒng)。
POSIX標(biāo)準(zhǔn)
POSIX(Portable Operating System Interface for Computing Systems)是由IEEE 和ISO/IEC 開發(fā)的一簇標(biāo)準(zhǔn)。該標(biāo)準(zhǔn)是基于現(xiàn)有的UNIX 實(shí)踐和經(jīng)驗(yàn),描述了操作系統(tǒng)的調(diào)用服務(wù)接口。用于保證編制的應(yīng)用程序可以在源代碼一級(jí)上在多種操作系統(tǒng)上移植和運(yùn)行。它是在1980 年早期一個(gè)UNIX 用戶組(usr/group)的早期工作基礎(chǔ)上取得的。該UNIX 用戶組原來試圖將AT&T 的System V 操作系統(tǒng)和BerkeleyCSRG 的BSD 操作系統(tǒng)的調(diào)用接口之間的區(qū)別重新調(diào)和集成。并于1984 年定制出了/usr/group 標(biāo)準(zhǔn)。
在90 年代初,POSIX 標(biāo)準(zhǔn)的制定正處在最后投票敲定的時(shí)候,那是1991-1993 年間。此時(shí)正是Linux剛剛起步的時(shí)候,這個(gè)UNIX 標(biāo)準(zhǔn)為L(zhǎng)inux 提供了極為重要的信息,使得Linux 能夠在標(biāo)準(zhǔn)的指導(dǎo)下進(jìn)行開發(fā),并能夠與絕大多數(shù)UNIX 操作系統(tǒng)兼容。在最初的Linux 內(nèi)核源代碼中(0.01 版、0.11 版)就已經(jīng)為L(zhǎng)inux 系統(tǒng)與POSIX 標(biāo)準(zhǔn)的兼容做好了準(zhǔn)備工作。在Linux 0.01 版內(nèi)核的/include/unistd.h 文件中就已經(jīng)定義了幾個(gè)有關(guān)POSXI 標(biāo)準(zhǔn)要求的符號(hào)常數(shù),而且Linus 在注釋中已寫道:“OK,這也許是個(gè)玩笑,但我正在著手研究它呢”。
Internet 網(wǎng)絡(luò)文章來源:http://www.zghlxwxcb.cn/news/detail-446328.html
Internet是linux開發(fā)、交流、發(fā)展的信息和資源的交流平臺(tái)。
?文章來源地址http://www.zghlxwxcb.cn/news/detail-446328.html
到了這里,關(guān)于Linux發(fā)展史的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!