全面了解GNU計(jì)劃
你現(xiàn)在應(yīng)用什么操作系統(tǒng)啊,最近好像流行Linux操作系統(tǒng),你了解GNU/Linux么?GNU計(jì)劃,又稱(chēng)革奴計(jì)劃,是由Richard Stallman在1983年9月27日公開(kāi)發(fā)起的。GNU計(jì)劃的目標(biāo)是創(chuàng)建一套完全自由的操作系統(tǒng)。Richard Stallman最早是在net.unix-wizards新聞組上公布該消息,并附帶一份《GNU宣言》等解釋為何發(fā)起該計(jì)劃的文章,其中一個(gè)理由就是要“重現(xiàn)當(dāng)年軟件界合作互助的團(tuán)結(jié)精神”。
GNU 包含3個(gè)協(xié)議條款,
GPL:GNU通用公共許可證(GNU General Public License)
LGPL:GNU較寬松公共許可證 (GNU Lesser General Public License), ) ,舊稱(chēng) GNU Library General Public License (GNU 庫(kù)通用公共許可證);
GFDL : GNU自由文檔許可證(GNU Free Documentation License )的縮寫(xiě)形式。
這里指的自由,并不是價(jià)格免費(fèi),這和價(jià)格無(wú)關(guān)而是使用軟件對(duì)所有的用戶來(lái)說(shuō)是自由的。GPL 通過(guò)如下途徑實(shí)現(xiàn)這一目標(biāo):
1.它要求軟件以源代碼的形式發(fā)布,并規(guī)定任何用戶能夠以源代碼的形式將軟件復(fù)制或發(fā)布給別的用戶。
2.如果用戶的軟件使用了受 GPL 保護(hù)的任何軟件的一部分,那么該軟件就繼承了 GPL 軟件,并因此而成為 GPL 軟件,也就是說(shuō)必須隨應(yīng)用程序一起發(fā)布源代碼。
3.GPL 并不排斥對(duì)自由軟件進(jìn)行商業(yè)性質(zhì)的包裝和發(fā)行,也不限制在自由軟件的基礎(chǔ)上打包發(fā)行其他非自由軟件。
由于GPL很難被商業(yè)軟件所應(yīng)用,它要求調(diào)用它的庫(kù)的代碼也得GPL,全部開(kāi)放,并且一同發(fā)布,不能直接連接。所以后來(lái)GNU推出了LGPL許可證
如果你準(zhǔn)備在你的項(xiàng)目中使用Linux,那么你必須了解的兩個(gè)上述兩個(gè)兩個(gè)許可證,GPL與LGPL..
相同點(diǎn):
因?yàn)镚PL和LGPL,都是自由軟件基金會(huì)建立的,所以它們之間非常類(lèi)似,它們都具備Copyleft的重要特性:
術(shù)語(yǔ)copyleft源于GNU項(xiàng)目中的俗語(yǔ),是英語(yǔ)Copyleft的雙關(guān)語(yǔ)(Copyright:版權(quán)),表示反版權(quán),也就是非盈利版權(quán)的意思。他指的是開(kāi)放源代碼許可證中如下條款:任何人或者公司都不能把GPL/LGPL保護(hù)下的軟件源代碼拷貝,修改后,把這些修改保護(hù)起來(lái)——即使他們的修改可能使得軟件的性能比原始的版本更好。一旦一段代碼被GPL或者LGPL保護(hù),那么代碼本身和所有對(duì)它所做的修改都必須在對(duì)它感興趣的人和組織面前公開(kāi),如果第三方修改并發(fā)布這段代碼,那么必須把修改的代碼和原始代碼都向接受代碼的人公開(kāi)。
不同點(diǎn):
在GPL與LGPL許可證保護(hù)下發(fā)布源代碼的結(jié)果很相似,對(duì)舊代碼所做的任何修改對(duì)于想知道這些代碼的人必須是公開(kāi)的,***真正的不同之處在于私人版權(quán)代碼是否可以與開(kāi)放源代碼相互連接,LGPL允許實(shí)體連接私人代碼到開(kāi)放源代碼,并可以在任何形式下發(fā)布這些合成的二進(jìn)制代碼。只有這些代碼是動(dòng)態(tài)連接的就沒(méi)有限制。(使用動(dòng)態(tài)鏈接時(shí),即使是程序在運(yùn)行中調(diào)用函數(shù)庫(kù)中的函數(shù)時(shí),應(yīng)用程序本身和函數(shù)庫(kù)也是不同的實(shí)體)
這樣你就了解GNU計(jì)劃了。
【編輯推薦】