GNU 項(xiàng)目簡(jiǎn)介
1. GNU 項(xiàng)目簡(jiǎn)介
GNU 項(xiàng)目計(jì)劃最開(kāi)始是在 1984 年由美國(guó)著名的黑客理查德?斯托曼(Richard Matthew Stallman)發(fā)起的,GNU 獲得了自由軟件基金會(huì)(FSF)的資金支持一直是 GNU 的主要資金來(lái)源,該項(xiàng)目主要是為了建立免費(fèi)的開(kāi)源的 UNIX 類(lèi)系統(tǒng),其基本原則是程序源代碼開(kāi)放和軟件思想共享。
GNU/Linux 是一種常見(jiàn)的并且廣泛用于商業(yè)環(huán)境的免費(fèi)開(kāi)源操作系統(tǒng)。由于 GNU 將要實(shí)現(xiàn) UNIX 類(lèi)各系統(tǒng)的接口標(biāo)準(zhǔn),因此 GNU 計(jì)劃并不局限于 Linux 系統(tǒng)也可以開(kāi)發(fā)其他不同的操作系統(tǒng)。GNU 計(jì)劃大量采用了當(dāng)時(shí)已經(jīng)可自由使用的軟件,例如 OpenOffice 排版系統(tǒng)和 X-Window 圖形界面系統(tǒng)等。不過(guò)隨著 GNU 計(jì)劃的發(fā)展和壯大也開(kāi)發(fā)了大批其他的自由軟件,這些軟件中的經(jīng)典也被移植到其他操作系統(tǒng)平臺(tái)上,例如 NC 工具就被移植到 Microsoft Windows、BSD 家族、Solaris 及 MacOS。
為了確保 GNU 系列軟件可以真正地自由地 "使用、復(fù)制、修改和發(fā)布",所有 GNU 軟件都包含有一份在禁止其他人添加任何限制的情況下,授權(quán)所有權(quán)利給任何人的協(xié)議框架,GNU 通用公共許可證協(xié)議(GNU General Public License,GPL)。這個(gè)就是被大家稱(chēng)為公共版權(quán)的含義。GNU 也針對(duì)不同場(chǎng)合,提供 GNU 寬通用公共許可證與 GNU 自由文檔許可證這兩種協(xié)議條款以便適用不同的使用場(chǎng)合。
2. GNU 的特點(diǎn)
GNU/Linux 將可以兼容并能夠執(zhí)行 UNIX 標(biāo)準(zhǔn)的程序,但是不會(huì)和 UNIX 系統(tǒng)完全一模一樣,最大的不同是 GNU 計(jì)劃擁有支持長(zhǎng)文件名、版本號(hào)、一個(gè)健壯穩(wěn)定文件系統(tǒng),在某些情況下還有自動(dòng)文件名補(bǔ)全、與使用終端無(wú)關(guān)的顯示支持、可能最后還要有一個(gè)基于 x-windows 的視窗系統(tǒng),以使好幾個(gè)系統(tǒng)程序和普通的 UNIX 應(yīng)用程序能共享同一屏幕。
C 語(yǔ)言將成為系統(tǒng)的程序語(yǔ)言。并且會(huì)想辦法支持 UUCP,MIT Chaosnet,及 Internet 的通訊交流協(xié)議。 GNU 最初的目標(biāo)是在有虛擬內(nèi)存的 68000/16000 等系列機(jī)器上開(kāi)發(fā),因?yàn)檫@樣的環(huán)境是最容易開(kāi)發(fā)程序來(lái)實(shí)現(xiàn) GNU 的運(yùn)行。剩下來(lái)讓 GNU 能在其它較小的機(jī)器上運(yùn)行的工作,將會(huì)留給那些希望能在這些機(jī)器上使用的人。
GNU 不是公共的,毫無(wú)約束的軟件(public domain)。GNU 計(jì)劃允許每一個(gè)人修改及傳播 GNU,但是絕不允許傳播者對(duì)他傳播的程序再加進(jìn)其他的限制。也就是說(shuō),不允許將修改后的程序據(jù)為己有。GNU 計(jì)劃希望能確保 GNU 所有的版本都能保持自由,所以 GNU 的核心精神是自由與分享,這和真正的 Hacker 精神有異曲同工之妙,雖不能說(shuō) GNU 精神就是 Hacker 精神,不過(guò)很難把兩者清楚的分開(kāi),實(shí)際上很多 Hacker 都為 GNU 做出了巨大的貢獻(xiàn)。對(duì)知識(shí)的渴求是支持他們探索的唯一動(dòng)力。當(dāng)然這里的 Hacker 黑客不是那些破壞計(jì)算機(jī)系統(tǒng)牟取私利而臭名昭著的駭客。
3. 發(fā)展歷程
- 1985 年,著名美國(guó)黑客理查德?斯托曼創(chuàng)立了 GNU 項(xiàng)目計(jì)劃。 1985 年,同年查德?斯托曼創(chuàng)立了自由軟件基金會(huì)(Free Software Foundation)來(lái)為 GNU 計(jì)劃提供技術(shù)、法律以及資金支持。盡管 GNU 計(jì)劃大部分時(shí)候是由大家自愿無(wú)償貢獻(xiàn)的,但 FSF 還是會(huì)聘請(qǐng)程序員幫助編寫(xiě)。當(dāng) GNU 計(jì)劃開(kāi)始逐漸獲得成功時(shí),一些商業(yè)公司開(kāi)始介入開(kāi)發(fā)和技術(shù)支持。當(dāng)中最著名的就是之后被 Red Hat 紅帽兼并的 Cygnus Solutions。
- 1990 年,成熟的 GNU 計(jì)劃已經(jīng)開(kāi)發(fā)出的軟件包括了一個(gè)功能強(qiáng)大的文字編輯器 Emacs、C 語(yǔ)言編譯器 GCC 以及大部分 UNIX 系統(tǒng)的程序庫(kù)和工具。唯一依然沒(méi)有完成的重要組件,就是操作系統(tǒng)的內(nèi)核。
- 1991 年,Linux 之父林納斯?托瓦茲編寫(xiě)出了與 UNIX 兼容的 Linux 操作系統(tǒng)內(nèi)核并在 GPL 條款下發(fā)布。Linux 之后在網(wǎng)上廣泛流傳,許多程序員參與了開(kāi)發(fā)與修改。
- 1992 年,林納斯的 Linux 與其他 GNU 軟件開(kāi)始結(jié)合,完全自由的 Linux 操作系統(tǒng)正式誕生。該操作系統(tǒng)往往被稱(chēng)為 “GNU/Linux” 或簡(jiǎn)稱(chēng) Linux。許多 UNIX 系統(tǒng)上也安裝了 GNU 軟件,因?yàn)?GNU 軟件的質(zhì)量比之前 UNIX 的軟件還要好。GNU 工具還被廣泛地移植到 Windows 和蘋(píng)果 Mac OS 上。
- 現(xiàn)在,GNU 項(xiàng)目計(jì)劃十幾年以來(lái)已經(jīng)成為一個(gè)對(duì)軟件開(kāi)發(fā)主要的影響力量,創(chuàng)造了無(wú)數(shù)的重要的工具,例如:編譯器,文本編輯器,甚至一個(gè)全功能的操作系統(tǒng)。這個(gè)工程是從 1984 年麻省理工學(xué)院的程序員理查德?斯托曼的想法得來(lái)的,他想要?jiǎng)?chuàng)建一個(gè)自由的和 UNIX 類(lèi)似的操作環(huán)境。從那時(shí)開(kāi)始,許多程序員聚集起來(lái)開(kāi)始開(kāi)發(fā)一個(gè)自由的、高質(zhì)量、易理解的軟件。
4. 小結(jié)
本小節(jié)介紹了 GNU 項(xiàng)目和 Linux 的關(guān)系,還介紹了 GNU 項(xiàng)目的特點(diǎn)和 GNU 項(xiàng)目的發(fā)展歷程,讓讀者熟悉了 GNU 項(xiàng)目的概念,對(duì) GNU 項(xiàng)目有了一定的了解,幫助讀者學(xué)習(xí)更多 Linux 相關(guān)的知識(shí)。