本頁使用了標題或全文手工轉換

自由軟體

維基百科,自由的百科全書
前往: 導覽搜尋
GNU計劃的自由軟體之標誌。
自由軟體心智圖

自由軟體英語:free software),根據自由軟體基金會對其的定義,是一類可以不受限制地自由使用、複製、研究、修改和分發的,尊重使用者自由的軟體。這方面的不受限制正是自由軟體最重要的本質,與自由軟體相對的是專有軟件(proprietary software)非自由軟體,或被稱為私有軟體、封閉軟體(其定義與是否收取費用無關──自由軟體不一定是免費軟體)。自由軟體受到選定的「自由軟體授權協議」保護而發佈(或是放置在公有領域),其發布以原始碼為主,二進制檔案可有可無。自由軟體許可證的類型主要有GPL許可證BSD許可證兩種。[1]

用戶[編輯]

自由軟件對全世界的商業發展特別是硬件有巨大的貢獻,多數嵌入式設備系統基於BSD開發[來源請求]而無授權費用。世界上多數計算機包含自由軟件成分(特別是從寬鬆的類BSD協議中分離的部分),直接使用但不出售軟件本身獲取利益的Google可以算作最大受益者。自由軟件使成千上萬的人的日常工作更加便利,為了滿足使用者的各種應用需要。

以往,真正的自由軟件直接使用者往往是開發者,或者有能力改變原始碼。但是這種趨勢隨着Ubuntu等較易用的GNU/Linux操作系統的普及而改變着。

意義與歷史[編輯]

自由軟體的英文為「free software」。在英文裡「free」一詞有「自由」、「免費」的雙重含意,對於如何區分自由軟體(libre)和免費軟體(gratis),自由軟體運動社區的創始人——里查·史托曼做出了以下的定義:「自由軟體的重點在於自由權,而非價格。要了解其所代表的概念,你應該將「自由」想成是「言論自由」,而不是「免費啤酒」。」[2]更精確地說,自由軟體代表電腦使用者擁有選擇和任何人合作之自由、擁有掌控他們所用的軟體之自由。在GNU宣言(GNU Manifesto)中包含了史托曼在一開始對自由軟體使用定義的混淆。

大部分的自由軟體都是在互聯網發佈,不收任何費用。一些或是以離線實體的方式發行,有時會酌情收取的費用(例如:工本費和運輸費),而人們可用任何價格來販售這些軟體。所以,自由軟體也可以是商業軟體:因為販賣軟體沒有違反自由軟體的定義。

最早的開放源代碼定義是在1998年創建,來自Debian的自由軟體指引[來源請求]。當時大多數的開放原始碼軟體同時也是自由軟體。然而,後來「開源」的意義異化,並沒有抓住自由軟件的真正涵義。開源着重軟件的質量,而後者是一種精神,力主開放源代碼是道德問題。[3]

基於新BSD許可證的作業系統都是使用自由軟體的授權協議,FreeBSDOpenBSD以及NetBSD,不同的是它們對於「Copyleft」的闡述,他們常認為「Copyleft」是一種對自由的過度限制,是一種自由的侵害。

免費軟體(freeware)」是一種不須付費就可取得的軟體,但是通常有其他的限制,使用者並沒有使用、複製、研究、修改和分發的自由。該軟體的原始碼不一定會公開,開放的源代碼會限制重製及再發行的自由。

自由軟體的定義[編輯]

自由軟體基金會(FSF)對自由軟體的定義首次於1989年發表。[4]這份定義後來被布魯斯·裴倫斯(Bruce Perens)改寫為《Debian自由軟體指導方針(DFSG)》[5]

根據斯托曼和自由軟體基金會(FSF)的定義,自由軟件賦予使用者四種自由:[6]

  • 自由之零:不論目的為何,有使用該軟件的自由。
  • 自由之一:有研究該軟件如何運作的自由,並且得以修改該軟件來符合使用者自身的需求。取得該軟件之源碼為達成此目的之前提。
  • 自由之二:有重新散布該軟件的自由,所以每個人都可以藉由散布自由軟件來敦親睦鄰。
  • 自由之三:有改善再利用該軟件的自由,並且可以發表修訂後的版本供公眾使用,如此一來,整個社群都可以受惠。如前項,取得該軟件之源碼為達成此目的之前提。

如果一軟件的使用者具有上述四種權利,則該軟件得以被稱之為「自由軟件」。也就是說,使用者必須能夠自由地、以不收費或是收取合理的散布費用的方式、在任何時間再散布該軟件的原版或是改寫版,在任何地方給任何人使用。如果使用者不必問任何人或是支付任何的許可費用從事這些行為,就表示她/他擁有自由軟件所賦予的自由權利。

自由軟體不是沒有著作權[編輯]

大部分的自由軟體可以免費取得,並且它的原始碼可以自由修改並散佈,但它並不是沒有著作權。著作權是當某項作品完成時就自然產生了,不需申請或註冊,在自由軟體的場合,仍然經常要求署名或維持相同授權。以本文為例,本文在寫作的同時,作者即擁有著作權,任何人皆無法剝奪。而當使用者花錢購買某套軟體時,所購買的只是「使用權」,使用者必須接受該軟體的「軟體授權」,才能使用這個軟體;而軟體的原作者則仍然保有其「著作權」。

自由軟體不使用封閉格式[編輯]

封閉軟體通常會使用專屬的封閉格式,並且不允許使用者分發,這極大地限制了使用者的自由。而自由軟體則完全不同,由於自由軟體的原始碼是公開的,所以它所使用的任何格式都是透明的。自由軟體永遠不會只發布專屬的封閉格式軟件來限制使用者修改的自由。

常見自由軟件協議[編輯]

GPL[編輯]

使用者必須接受軟體的『軟體授權』,才能使用該軟體,而在自由軟體中,最常見的授權方式就是GPL - GNU General Public License了。[7]

因為使用者是免費取得了自由軟體的原始碼,那麼如果使用者修改了它的原始碼,基於公平互惠的原則,使用者也必須公開其修改的成果。而這就是自由軟件的精神──自由、分享、互惠。

BSD許可證[編輯]

BSD許可證(Berkeley Software Distribution license),是自由軟件中使用最廣泛的許可證之一。BSD軟件就是遵照這個許可證來發布,該許可證也因此而得名。

BSD套件最初所有者是加州大學董事會,這是由於BSD源自柏克萊加州大學。BSD開始後,BSD許可證得以修正,使得以後許多BSD變種,都採用類似風格的許可證。

跟其他許可證相比,從GNU通用公共許可證(GPL)到限制重重的著作權(Copyright),BSD許可證比較寬鬆,甚至跟公有領域更為接近。事實上,BSD許可證被認為是copycenter(中間版權),界乎標準的copyright與GPL的copyleft之間。"Take it down to the copy center and make as many copies as you want"。[8]

自由軟體的精神領袖[編輯]

自由軟體的精神領袖是理查德·馬修·斯托曼。他被人稱為『最後的真正黑客』,他認為一個好的軟體,應該自由自在地讓人取用。軟體不應該拿來做為相互傾軋、剝削的工具。所以他起草GNU通用公共許可證來保障自由軟體的自由,並創辦了自由軟體基金會來貫徹他的理念。領袖們有時被稱作「Benevolent Dictators」。

開源軟件與自由軟體[編輯]

形式上的差異[編輯]

開源軟件與自由軟體是兩個不同的概念,只要符合開源軟件定義英語the Open Source Definition的軟件就能被稱為開源軟件。而自由軟件有比開源軟件更嚴格的概念,因此所有自由軟件都是開放源代碼的,但不是所有的開源軟件都能被稱為「自由」。但一般,絕大多數開源軟件也都符合自由軟件的定義。

開放原始碼的規定較寬鬆,而自由軟體的規定較嚴苛。很多的開放原始碼所認可的授權根本不算是自由軟體,所以自由軟體不得不和開放原始碼劃清界線。

兩者內涵的差異[編輯]

  1. 開放原始碼作用是,使用開放的開發方式,儘可能的使軟件最佳化,而自由軟件則將尊重用戶自由作為道德標準。
  2. 如果說「自由軟體」會引起誤解,(因為英文「Free」一詞有「自由」、「免費」的雙重含意),那麼「開放原始碼」的名字則會引起的誤解則更多。「開源」很容易讓人認為是只要把原始碼「公開」出來就算是開源了,即「你可以看到源代碼」。但是如果使用者的自由仍然得不到尊重,那麼即使公開原始碼也沒有意義。有的軟體公司只是為了想找使用者幫它除錯、吸收社區貢獻的功能,這樣子會破壞了自由軟體的原意。一個例子是Tivo公司生產的機頂盒。雖然它基於GNU/Linux,TiVo公司也按照許可證發布了源代碼,但是卻禁止用戶在機頂盒上運行自己的程序,或重新安裝系統。[9]
  3. 自由軟體的原意就是要給予使用者運用軟體的自由,這個『自由』就是自由軟體的精神所在。但是一些商業化開放的原始碼卻故意忽略了這個最重要的精神,反而無法讓使用者體認到『自由』的真意,那麼開源這一個替代自由軟體的辭句反而把自由的原意除去了。

自由軟體的精神領袖理查德·馬修·斯托曼很反對人們把開放原始碼和自由軟體混為一談。[10]

開源軟件未必自由[編輯]

開源軟件未必自由,自由軟件必定滿足開源(自由軟件更加寬鬆舒適,開源軟件限制較)。GNU project致力於開發hurd(微內核)自由軟件。但是hurd開發太爛跟不上計算機發展,緊急情況GNU引入第三方開發的Linux(宏內核),這個第三方就是指Linux之父(Linus torvalds,中文名:林納斯)。但是Linux是GPL v2許可證,並非v3,所以Linux某部分閉源。GNU一怒之下改造出了Linux-Libre談判LinuxLinux-Libre真正做到100%自由軟件(上文說,自由軟件更加寬鬆舒適)。舉個例子,parabola、gnewsense就是100%自由的Linux-Libre發行版

Linux的logo是一隻黑白皮毛的企鵝,Linux-Libre卻是一隻淡藍色皮毛的企鵝

GNU官方澄清:GNU英文發音其實是「Ge nu」,分為兩個音。第一個讀音是「咯噔」開頭的「ge」短音。再把「loop」讀音轉化成「noop」,提取出「怒」的長音作為第二個讀音

自由軟件翻譯成英文libre software,自由未必翻譯成free。免費的英文翻譯成gratis,嚴禁翻譯成free

參考文獻[編輯]

  1. ^ What is free software and why is it so important for society?. Free Software Foundation, Inc. [2011-10-05] (英語). 
  2. ^ 原文如下:Free software is a matter of liberty, not price. To understand the concept, you should think of 'free' as in "free speech", not as in "free beer"
  3. ^ GNU 工程的哲學. 
  4. ^ GNU's Bulletin, vol. 1 no. 6
  5. ^ Debian Free Software Guidelines(DFSG,內有各種語言版本)
  6. ^ The Free Software Definition. Gnu.org. [2010-11-12]. 
  7. ^ GNU General Public License
  8. ^ 引用自:copycenter
  9. ^ GNU 工程的哲學. 
  10. ^ Why「Open Source」misses the point of Free Software

外部連結[編輯]

參見[編輯]