適合新手了解的GUN/Linux起源
一、計(jì)算機(jī)的發(fā)明
世上本無(wú)路,走的人多了,就有了路。世上本無(wú)計(jì)算機(jī),琢磨的人多了……沒(méi)有計(jì)算機(jī),一切無(wú)從談起。
三個(gè)人對(duì)計(jì)算機(jī)的發(fā)明功不可沒(méi),居功至偉。阿蘭·圖靈(Alan Mathison Turing)、阿塔那索夫(John Vincent Atanasoff)、和馮·諾依曼(John von Neumann)。
圖靈從理論上證明了計(jì)算機(jī)的可行性;阿塔那索夫?qū)嵺`了圖靈的理論;馮·諾依曼奠定了現(xiàn)代計(jì)算機(jī)的體系結(jié)構(gòu)。
圖靈說(shuō)這玩意兒應(yīng)該可以做,已經(jīng)被證明了;阿塔那索夫二話不說(shuō)動(dòng)手就做了一個(gè);馮·諾依曼說(shuō)應(yīng)該這么做才更好。
艾倫·麥席森·圖靈
圖靈功勞很大,死得很慘,只因他是同性戀。他的最后時(shí)刻是吃了一個(gè)沾有氰化鉀的蘋果。有人說(shuō)蘋果公司的Logo是為了紀(jì)念圖靈,不實(shí)。確定紀(jì)念圖靈的是“圖靈獎(jiǎng)”,計(jì)算機(jī)研究領(lǐng)域的最高獎(jiǎng)項(xiàng),由美國(guó)計(jì)算機(jī)協(xié)會(huì)于1966年設(shè)立。
阿塔那索夫名氣不大,享年較長(zhǎng)。世界上第一臺(tái)計(jì)算機(jī)是阿塔那索夫領(lǐng)導(dǎo)發(fā)明的ABC計(jì)算機(jī),并非我們很多書(shū)上說(shuō)的ENIAC。
馮·諾依曼長(zhǎng)得帥,聰明,研究領(lǐng)域廣,故事很多。今天我們使用的計(jì)算機(jī)都被打上了一個(gè)的深深的烙印,這個(gè)烙印就叫馮·諾依曼體系結(jié)構(gòu)。
關(guān)于計(jì)算機(jī)之父有很多說(shuō)法,版本不一,這三個(gè)人都可以稱為計(jì)算機(jī)之父。曾有人奉馮·諾依曼為計(jì)算機(jī)之父,馮·諾依曼說(shuō)不敢當(dāng),殊榮當(dāng)歸圖靈。
早年全世界的計(jì)算機(jī)中心在美國(guó)普林斯頓大學(xué),群星閃耀,璀璨奪目。馮·諾依曼曾在此工作,圖靈曾在此學(xué)習(xí),他倆在普林斯頓的花園里聊過(guò)天。馮·諾依曼想讓圖靈給他當(dāng)助手,被拒絕了。
馮·諾依曼
二、最初的Unix和C語(yǔ)言
早期計(jì)算機(jī)個(gè)頭大,電子元器件多,開(kāi)動(dòng)一次電費(fèi)都不少,使用起來(lái)也很不方便。別的不說(shuō),一次只能干一件事就讓人受不了。先煮粥,半小時(shí)之后粥煮好了再炒菜。花老多錢雇的廚師,明明煮粥的時(shí)候可以炒菜好不好?一次做一件事,就叫單任務(wù),比較笨。
受不了就要想辦法,就有人提出了操作系統(tǒng)的想法。操作系統(tǒng)就是想讓計(jì)算機(jī)用起來(lái)更方便,能發(fā)揮更大的作用。
1965年,MIT、貝爾實(shí)驗(yàn)室和美國(guó)通用電氣公司合作準(zhǔn)備搞個(gè)超級(jí)操作系統(tǒng),取了個(gè)霸氣的名字:Multics (Multiplexed Information and Computing System),多路復(fù)用信息和計(jì)算機(jī)系統(tǒng)。能讓多個(gè)人可以同時(shí)干很多事,也叫多用戶多任務(wù)操作系統(tǒng)。
Multics名字挺好,事沒(méi)干成,目標(biāo)過(guò)于龐大,結(jié)果壯志未酬。
1969年,Multics項(xiàng)目進(jìn)展緩慢,被迫停止,參與項(xiàng)目的兩個(gè)人Ken Thompson和Dennis Ritchie也閑了下來(lái)。他們都是貝爾實(shí)驗(yàn)室的人。沒(méi)活干了,就打游戲。他們倆找了一臺(tái)破電腦準(zhǔn)備玩以前開(kāi)發(fā)的一個(gè)游戲。
把游戲移植到一臺(tái)閑置機(jī)器(PDP-7)的過(guò)程中,實(shí)現(xiàn)了一個(gè)簡(jiǎn)單的操作系統(tǒng)。到了 1970年,這個(gè)簡(jiǎn)單的系統(tǒng)已經(jīng)可以使用,但只能同時(shí)兩個(gè)人使用。有人調(diào)侃他們,說(shuō)你們這個(gè)破玩意離Multics差遠(yuǎn)了,就叫Unics(UNiplexed Information and Computing Service)吧。Unics是Multics的反義,與其說(shuō)調(diào)侃他倆,不如說(shuō)在調(diào)侃Multics。Ken Thompson稍微把名字修改了一下,叫Unix。
自此,Unix紀(jì)元開(kāi)始。1970年是為Unix元年,今年已經(jīng)是Unix46年。Unix時(shí)間戳從1970年1月1日開(kāi)始計(jì)算和Unix誕生的時(shí)間有莫大關(guān)系。
早年的操作系統(tǒng)最早是用匯編語(yǔ)言寫(xiě)的,匯編語(yǔ)言低級(jí)落后,寫(xiě)起來(lái)很痛苦。開(kāi)發(fā)Unix過(guò)程中,Thompson發(fā)明了B語(yǔ)言,Ritchie在B語(yǔ)言基礎(chǔ)做了改進(jìn),稱之為C語(yǔ)言。
C語(yǔ)言發(fā)明后,Ritchie和貝爾實(shí)驗(yàn)室的同事Brian W. Kernighan合著一本C語(yǔ)言的書(shū),后來(lái)被稱為K&R。Kernighan名氣沒(méi)Ritchie大,但并非凡人,Unix命令A(yù)wk中的K就是Kernighan。
接下來(lái)Thompson和Ritchie用C語(yǔ)言重新編寫(xiě)了Unix系統(tǒng)。結(jié)果相當(dāng)滿意,Unix可以見(jiàn)人了。1974年,Dennis M. Ritchie和Ken Thompson發(fā)表了第一篇關(guān)于UNIX的論文《The UNIX Time Sharing System》,從此Unix廣為人知。
這幾年世界計(jì)算機(jī)的中心到了貝爾實(shí)驗(yàn)室,Thompson、Ritchie、Kernighan還有好多。Thompson和Ritchie后來(lái)都獲得了圖靈獎(jiǎng)。
有心栽花花不活,無(wú)心插柳柳成蔭。Multics目標(biāo)宏偉,沒(méi)干成,Unix和C語(yǔ)言剛開(kāi)始并沒(méi)想那么多,而且還是業(yè)余時(shí)間的作品,終成偉業(yè)!
Unix和C語(yǔ)言是計(jì)算機(jī)領(lǐng)域的常青樹(shù),歷久彌新。從發(fā)明至今一直保持著旺盛的生命力,從發(fā)明至今都基本保持原貌,足見(jiàn)偉大!
Unix
C語(yǔ)言
三、混亂的Unix發(fā)展過(guò)程
Unix一經(jīng)出現(xiàn),引起了眾人的關(guān)注,很多人找Thompson和Ritchie要Unix的源代碼。那是個(gè)開(kāi)放的時(shí)代,那是個(gè)相互學(xué)習(xí)研究的時(shí)代,把程序的源碼分享給別人是很平常的事。一份份的Unix源碼被流傳到各個(gè)實(shí)驗(yàn)室、學(xué)校、公司。
加州大學(xué)伯克利分校有一幫熱衷于Unix的人,他們拿到源碼后不斷研究,不斷改進(jìn),大大推進(jìn)了Unix的發(fā)展。
這個(gè)階段Unix發(fā)展有兩條主線,一條在貝爾實(shí)驗(yàn)室內(nèi)部,另一條就在伯克利分校。伯克利分校的成果很輝煌,著名的TCP/IP協(xié)議在Unix上的實(shí)現(xiàn)就是他們搞出來(lái)的。后來(lái)把他們搞的這套Unix稱為BSD(Berkeley Software Distribution)。
伯克利分校一時(shí)風(fēng)光無(wú)兩,最杰出的一位是Bill Joy。Bill Joy,Vi、Csh等等一系列軟件的作者,Sun公司的創(chuàng)始人。沒(méi)有Sun公司,就沒(méi)有今天的Java語(yǔ)言。
Unix剛誕生的時(shí)候,貝爾實(shí)驗(yàn)室受反壟斷法所限,不能從事計(jì)算機(jī)業(yè)務(wù)。其實(shí)也并沒(méi)想到Unix發(fā)展勢(shì)頭如此之好。
等到1983年,貝爾實(shí)驗(yàn)室的母公司AT&T已經(jīng)被強(qiáng)制拆分為幾個(gè)小公司,不再受反壟斷法的限制。這時(shí),AT&T發(fā)布了Unix最新版System V,宣布從此Unix只能商業(yè)使用,不再開(kāi)放源代碼。AT&T想用Unix賺大錢。
BSD那邊受到了很大影響,他們不想急著賺錢,他們想開(kāi)放源碼。沒(méi)辦法,伯克利分校決心把BSD當(dāng)中受到影響的源碼重新寫(xiě)過(guò)。從伯克利分校出來(lái)的幾位同學(xué)成立了一家公司,專門開(kāi)發(fā)BSD項(xiàng)目。直到有一天,他們宣布BSD當(dāng)中再?zèng)]有最初來(lái)自貝爾實(shí)驗(yàn)室的源碼。AT&T不買賬,告你,起訴,打官司。
這是一場(chǎng)漫長(zhǎng)的官司,官司尚未打完,Unix版權(quán)就被倒賣了好幾次。買版權(quán)的好幾家公司繼續(xù)和BSD打官司,幾家公司相互也打官司。
等到硝煙散盡,BSD終究推出了完全屬于自己的Unix,因?yàn)榘鏅?quán)的問(wèn)題,不能再叫Unix,只能叫類Unix系統(tǒng)。
BSD的類Unix系統(tǒng)是FreeBSD、MacOS的前身。今天使用的蘋果電腦,iPhone手機(jī)上的操作系統(tǒng)都是從BSD這一支上發(fā)展而來(lái)。
漫長(zhǎng)的官司耗盡了人們對(duì)BSD的熱情,也讓BSD錯(cuò)過(guò)了最好的發(fā)展機(jī)會(huì)。后來(lái)的FreeBSD、NetBSD、OpenBSD都是從BSD分化而來(lái),免費(fèi),開(kāi)源,優(yōu)秀,但再?zèng)]挽回曾經(jīng)的榮光,因?yàn)橐呀?jīng)有了Linux。
Unix發(fā)展過(guò)程圖
四、斯托曼博士的GNU計(jì)劃
AT&T想靠Unix賺錢的時(shí)候,不止是AT&T,很多商業(yè)公司都希望通過(guò)軟件賺錢。不再免費(fèi),不再開(kāi)放源代碼,不再相互通過(guò)源代碼學(xué)習(xí)研究。
曾經(jīng)是多么好的時(shí)代,怎么現(xiàn)在就變得只認(rèn)錢了呢?這一切讓一個(gè)人很不滿意。他曾經(jīng)看到一個(gè)系統(tǒng)有問(wèn)題,想要一份源碼拿來(lái)幫修改一下,別人冷笑以對(duì)。
世風(fēng)日下,他要向這個(gè)令人沮喪的時(shí)代挑戰(zhàn),他要還一個(gè)開(kāi)源、免費(fèi)的系統(tǒng)與人世間。請(qǐng)記住這個(gè)人的名字,理查德·斯托曼(Richard Matthew Stallman)博士。
斯托曼是老牌黑客,Emacs的作者。Emacs和前面提到的Vi是計(jì)算機(jī)領(lǐng)域中兩大強(qiáng)悍的編輯工具,Emacs和Vi哪個(gè)更強(qiáng)是最容易引起爭(zhēng)議的話題之一。為了少吵架,千萬(wàn)別和寶馬車主說(shuō)奔馳好。
斯托曼博士長(zhǎng)頭發(fā),大胡子,不修邊幅,一直單身。他一心投入自由軟件運(yùn)動(dòng),他創(chuàng)建了自由軟件基金會(huì)(FSF)。他雄心勃勃地提出了一項(xiàng)偉大的計(jì)劃,GNU(GNU's not Unix)計(jì)劃。Not Unix,不是Unix,是自由的、免費(fèi)的、開(kāi)源的、像Unix一樣好用的系統(tǒng)。
理查德·斯托曼博士
GNU起初進(jìn)展很順利,GLibc、GCC、GDB,這一系列的操作系統(tǒng)必備軟件都有條不紊地在進(jìn)展。所有的“G”來(lái)自Gnu的首字母。為什么叫“G”,斯托曼博士說(shuō)當(dāng)時(shí)他覺(jué)得好玩,而且他小時(shí)候聽(tīng)過(guò)一首歌,很喜歡,歌名是《The Gnu》。
完全搞個(gè)操作系統(tǒng)看來(lái)也并非易事,GNU完成了一大堆軟件的時(shí)候才意識(shí)到遇到了大麻煩。GNU系統(tǒng)的內(nèi)核項(xiàng)目Hurd遲遲不能令人滿意。內(nèi)核之于操作系統(tǒng),就像發(fā)動(dòng)機(jī)之于汽車,必不可缺。
五、Linux出世記
1991年,Linus Torvalds尚是芬蘭赫爾辛基大學(xué)的一名學(xué)生,他在學(xué)校學(xué)操作系統(tǒng)的課程,他也想搞個(gè)操作系統(tǒng)玩玩。他當(dāng)時(shí)已經(jīng)在使用Gnu項(xiàng)目的Bash、GCC等軟件。受GNU的影響,把他自己開(kāi)發(fā)的一個(gè)簡(jiǎn)陋的操作系統(tǒng)內(nèi)核放到了互聯(lián)網(wǎng)上。
這個(gè)內(nèi)核系統(tǒng)就是Linux,Linus's Unix,Linus的Unix。名字并非Linux所取,他一貫的風(fēng)格是取個(gè)調(diào)侃的名字,但當(dāng)時(shí)管理員說(shuō)Linux挺好,名字就這么定了。
Linux放到網(wǎng)上后引起了很多人的興趣,他們陸續(xù)通過(guò)互聯(lián)網(wǎng)加入到Linux開(kāi)發(fā)過(guò)程中。1993年,大約有100多名程序員參與了Linux內(nèi)核代碼。這時(shí)已經(jīng)是互聯(lián)網(wǎng)的時(shí)代,他們不用相識(shí),不用謀面,通過(guò)網(wǎng)絡(luò)討論,通過(guò)網(wǎng)絡(luò)協(xié)作,推進(jìn)著Linux。
1994年3月,Linux1.0發(fā)布,Linux已經(jīng)成為一個(gè)基本可用的內(nèi)核。從此Linux就一直沒(méi)有踩過(guò)剎車,一步步從幼苗長(zhǎng)成參天大樹(shù)。
Linus小時(shí)候被企鵝攻擊過(guò),他給Linux定Logo的時(shí)候選中了企鵝,真不知道這是什么邏輯。長(zhǎng)得像企鵝的除了QQ,還有Linux。
Linux開(kāi)創(chuàng)了一種前所未有的軟件開(kāi)發(fā)模式。多人協(xié)作,代碼隨時(shí)提交,有問(wèn)題及時(shí)修改,所有參與人員并非精英,而是一群狂熱的支持者。前前后后無(wú)數(shù)人參與了Linux項(xiàng)目的開(kāi)發(fā),組織不太嚴(yán)謹(jǐn),有很多的爭(zhēng)吵和討論。Linus經(jīng)常寫(xiě)代碼,偶爾扮演仲裁的角色,而非傳統(tǒng)意義上的領(lǐng)導(dǎo)。
后來(lái)開(kāi)源運(yùn)動(dòng)的吹鼓手Eric Raymond寫(xiě)了一篇文章《大教堂與集市》來(lái)分析Linux的開(kāi)發(fā)模式。大教堂要設(shè)計(jì)好圖紙,動(dòng)用優(yōu)秀的工匠,有序的工程計(jì)劃才能修筑,鬧哄哄無(wú)序如菜市場(chǎng)的一撥人能不能修一座大教堂?答案是可以的,因?yàn)樗麄兘ǔ闪恕?/p>
Linus后來(lái)坦言,他開(kāi)發(fā)Linux時(shí)不了解還有FreeBSD等項(xiàng)目,如果知道了可能他就不會(huì)動(dòng)手寫(xiě)Linux了。那時(shí)各種BSD系統(tǒng)正在官司的陰影籠罩下,某種程度了也促進(jìn)了Linux的發(fā)展。
他們一開(kāi)始也沒(méi)什么圖紙,一邊修建,一邊請(qǐng)人參觀,出了問(wèn)題隨時(shí)修復(fù),有的地方干脆推倒重來(lái)。他們沒(méi)有嚴(yán)密的組織,只有大體的分工。隨時(shí)有人在使用教堂,給他們提出各種意見(jiàn)。他們建的教堂已經(jīng)足夠好,他們建的教堂一直沒(méi)有竣工,會(huì)一直修建下去。
Eric Raymond這個(gè)人不得不提,早年和斯托曼博士一起共事,還幫斯托曼博士修改過(guò)Emacs的代碼。他比寫(xiě)程序更擅長(zhǎng)的是演講和寫(xiě)文章。《大教堂與集市》是開(kāi)源文化的扛鼎之作。斯托曼博士是開(kāi)源運(yùn)動(dòng)的精神領(lǐng)袖,Raymond是開(kāi)源運(yùn)動(dòng)的布道師和理論家。
六、Linux各種發(fā)行版
一邊GNU項(xiàng)目為內(nèi)核苦苦掙扎,一邊Linux內(nèi)核項(xiàng)目橫空出世,這不天作之合么?不錯(cuò),手快的人來(lái)不及同情斯托曼博士的痛苦,把GNU一大堆項(xiàng)目和Linux攢在一起搞了個(gè)新系統(tǒng),GNU/Linux。
好了,終于大家可以拿去用了,可以用一個(gè)完全免費(fèi)、源碼開(kāi)放的系統(tǒng)了。
今天很多人把使用的系統(tǒng)叫Linux,很不公平,是對(duì)GNU工作的漠視。正確的叫法是GNU/Linux。
有了GNU/Linux還不是一切,只能是一個(gè)基礎(chǔ)的操作系統(tǒng),要想用得更好還缺很多軟件。就像有了Windows系統(tǒng),沒(méi)有Word,沒(méi)有Excel,沒(méi)有瀏覽器,沒(méi)有游戲,可干的事并不多。
所幸的是GNU/Linux誕生的年代,已經(jīng)有了很多優(yōu)秀的開(kāi)源項(xiàng)目,他們和GNU無(wú)關(guān),有的是個(gè)人開(kāi)發(fā),有的是組織開(kāi)發(fā),都遵循免費(fèi)開(kāi)源的理念。這些開(kāi)源項(xiàng)目有Apache、Perl、Python、Vim、TeX等等。
攢系統(tǒng)的人干脆一股腦攢了起來(lái),就是所謂的GNU/Linux的發(fā)行版。最早攢GNU/Linux系統(tǒng)的公司是Redhat,后來(lái)陸續(xù)一大堆GNU/Linux的發(fā)行版,Slackware、Mandrake、Gentoo、Debian、Ubuntu等等。有的已經(jīng)死了,有的還活得挺好。
所謂GNU/Linux發(fā)行版,就是攢好的一套GNU/Linux。選用GNU項(xiàng)目中的基礎(chǔ)軟件,加上Linux內(nèi)核,再找一堆開(kāi)源免費(fèi),版權(quán)協(xié)議許可的軟件,最后做個(gè)安裝程序,就齊活了。更好的發(fā)行版大體就是考慮的更周全些,軟件包的更新、安裝、卸載更方便些。
能不能自己動(dòng)手?jǐn)€一個(gè)GNU/Linux的發(fā)行版?當(dāng)然可以,Linux From Scratch,網(wǎng)上的一個(gè)項(xiàng)目,教你一步一步從頭打造一個(gè)屬于自己的GNU/Linux發(fā)行版。
2002年,南非商人Mark Shuttleworth花了兩千萬(wàn)美金,搭乘俄羅斯的宇宙飛船去了一趟太空。次年,他成立了Canonical公司,致力于開(kāi)源文化的推廣,推出了GNU/Linux發(fā)行版Ubuntu。有錢人辦事就是不一樣,Ubuntu做得太好了,GNU/Linux用戶紛紛投靠,Ubuntu基本一統(tǒng)GNU/Linux發(fā)行版的江湖。
五、GNU/Linux和開(kāi)源文化的背后
GNU/Linux來(lái)了,雖然沒(méi)成為大多數(shù)人電腦里的系統(tǒng),但每個(gè)人都離不開(kāi)它。諸多互聯(lián)網(wǎng)公司的服務(wù)器里都跑著GNU/Linux,名單不完全確認(rèn),Google、Facebook、淘寶、百度、騰訊、小說(shuō)閱讀網(wǎng)等等。
大多人使用的安卓手機(jī)的系統(tǒng)也是基于Linux內(nèi)核。
GNU/Linux的繁榮有宏偉的規(guī)劃,有個(gè)人的努力,也有很多無(wú)形的力量在起著作用。
沒(méi)有Unix就沒(méi)有GNU/Linux,是Unix給予了偉大的啟示。
沒(méi)有C語(yǔ)言就有沒(méi)有GNU/Linux,C語(yǔ)言簡(jiǎn)單,優(yōu)雅,介于高級(jí)語(yǔ)言和低級(jí)語(yǔ)言之間,開(kāi)發(fā)系統(tǒng)軟件的首選編程語(yǔ)言。
沒(méi)有一系列Unix標(biāo)準(zhǔn)的制定就沒(méi)有GNU/Linux的繁榮。標(biāo)準(zhǔn)就是“車同軌、書(shū)同文、統(tǒng)一度量衡”,秦始皇可算最早的標(biāo)準(zhǔn)制訂者。遵循Posix標(biāo)準(zhǔn)為GNU/Linux發(fā)展鋪平了道路。
沒(méi)有互聯(lián)網(wǎng)就沒(méi)有GNU/Linux,GNU/Linux不是一個(gè)人在開(kāi)發(fā),是全球無(wú)數(shù)人協(xié)作的結(jié)果。如果沒(méi)有互聯(lián)網(wǎng)實(shí)在不可想象。當(dāng)然,GNU/Linux也反哺了互聯(lián)網(wǎng),無(wú)數(shù)互聯(lián)網(wǎng)公司采用GNU/Linux搭建服務(wù)器,GNU/Linux也促進(jìn)了互聯(lián)網(wǎng)的繁榮。
沒(méi)有斯托曼博士的努力,就沒(méi)有GNU/Linux。他的功勞不僅是創(chuàng)建GNU組織,也不僅是編寫(xiě)Emacs、GCC、GDB,他的精神感召著無(wú)數(shù)人為開(kāi)源運(yùn)動(dòng)做貢獻(xiàn)。
當(dāng)然還有Raymond的振臂高呼,搖旗吶喊。
還有GNU/Linux誕生之前就開(kāi)發(fā)開(kāi)源項(xiàng)目的人和組織。Larry Wall因?yàn)閼?,整天被?bào)表搞得焦頭爛額,發(fā)布了Perl語(yǔ)言;高德納教授因?yàn)閷?duì)排版工人不滿意,十年時(shí)間停止重要工作,發(fā)明了偉大的排版軟件TeX;Guido為了打發(fā)圣誕節(jié)的無(wú)聊,編寫(xiě)了新的腳本語(yǔ)言Python……
GNU/Linux發(fā)布之后,在前輩們的感召下無(wú)數(shù)人接受了開(kāi)源的思想和理念,接受了開(kāi)源文化的洗禮,興起了開(kāi)源文化運(yùn)動(dòng)。無(wú)數(shù)為開(kāi)源項(xiàng)目做出貢獻(xiàn)的人和組織,他們發(fā)布了PHP、MySQL、Ruby、Node.js、X.Org、Gnome、KDE……他們豐富了GNU/Linux,他們進(jìn)一步推動(dòng)了開(kāi)源文化運(yùn)動(dòng),他們繼續(xù)感召著別人。
KDE(Kool Desktop Environment)的初衷是想開(kāi)發(fā)一套易用的桌面系統(tǒng)。Windows系統(tǒng)就是一種桌面,使用方便,不是像程序員整天對(duì)著黑乎乎的屏幕工作。桌面系統(tǒng)要有瀏覽器,他們就分了一個(gè)小組KHTML來(lái)開(kāi)發(fā)瀏覽器。全世界能開(kāi)發(fā)瀏覽器核心的也沒(méi)幾家,KDE做到了。后來(lái)蘋果公司和微軟鬧別扭,想自己開(kāi)發(fā)瀏覽器,就是在KHMTL的基礎(chǔ)之上開(kāi)發(fā)了自己的瀏覽器Safari。KHTML的瀏覽器核心模塊叫Webkit。Google推出安卓手機(jī)時(shí)瀏覽器也是基于Webkit開(kāi)發(fā)的。
今天的iPhone手機(jī)和安卓手機(jī)的瀏覽器都是Webkit內(nèi)核。
各種版權(quán)許可協(xié)議的制訂也為GNU/Linux的發(fā)展鋪平了道路,其中就有GNU的GPL、LGPL,還有Apache License、BSD協(xié)議。不可能每個(gè)人都有一套自己開(kāi)源協(xié)議項(xiàng)目的版權(quán)協(xié)議,已經(jīng)制訂好的版權(quán)許可協(xié)議使得軟件更好地傳播。
其實(shí)開(kāi)源并非自由,有人說(shuō)GPL是用自由抹殺自由。GPL許可要求任何含有GPL許可的軟件發(fā)布時(shí)必須開(kāi)放源碼。BSD和Apache License相對(duì)比較寬松,算是準(zhǔn)自由軟件。
版本管理軟件對(duì)GNU/Linux的發(fā)展和開(kāi)源文化運(yùn)動(dòng)也功不可沒(méi)。Linux內(nèi)核開(kāi)發(fā)起初使用的是商用版本管理軟件,某天Linus Torvalds先生不開(kāi)心了,就自己動(dòng)手搞了一個(gè)。他好取自嘲調(diào)侃的名字,命名為Git,意為沒(méi)什么用的東西。
Git可不是沒(méi)什么用,太好用了,Linux內(nèi)核源碼從此都用Git管理。Git免費(fèi)、開(kāi)源,Git成就了一家偉大的網(wǎng)站github.com,偉大的源碼項(xiàng)目托管網(wǎng)站。很多開(kāi)源項(xiàng)目紛紛把源碼托管到了Github上。
GNU/Linux不朽,開(kāi)源運(yùn)動(dòng)不朽!