自由软件
维库,知识与思想的自由文库
自由软件是由自由軟體基金會所提出的,他是指一件可以让用户自由复制、使用、研究、修改、分发等等,而不附带任何条件的软件。自由软件的主要许可证有GPL许可证和BSD许可证兩種。
目录 |
[编辑] 簡介
以下是自由软件更詳細的規範:
- 自由階段 0: 任何人皆有因任何目的執行該軟體的自由。
- 自由階段 1: 任何人皆可自由的研究該程式的源代碼並且依照自己的需求加以更改。
- 自由階段 2: 任何人皆可自由的再將該軟體散發來幫助自己周遭的人。
- 自由階段 3: 任何人皆可自由的改進該程式,並將改變對大眾發表,如此整個社群都將受惠。
如要滿足自由階段 1以及自由階段 3則該軟體必需讓使用者能夠觀看/修改源代碼。也就是說,滿足自由階段 1以及自由階段 3的軟體可被稱為開放源代碼軟件。但是如果是要成為自由軟件則 自由階段 0~3 皆需滿足。
由此可知,自由軟體的領導者認為,自由軟體必須給予人們在軟體上的使用、學習、散佈、修改等自由。如果有一個軟體宣稱它是自由軟體,它就必須符合以上四個條件。
[编辑] 自由軟體並不是沒有版權
自由軟體可以免費取得,並且它的原始碼可以自由修改並散佈但它並不是沒有版權。
版權是當某項作品完成時就自然產生了,不需申請或註冊。 以本文為例,本文在寫作的同時,作者即擁用版權,任何人皆無法剝奪。
而當使用者花錢購買某套軟體時,所購買的只是『使用權』,使用者必須接受該軟體的『軟體授權』,才能使用這個軟體;而軟體的原作者則仍然保有其『版權』。
[编辑] 自由軟體常見的授權方式
[编辑] GPL
如欲得知更詳細的資訊,請參看GNU通用公共许可证。
使用者必須接受軟體的『軟體授權』,才能使用該軟體,而在自由軟體中,最常見的授權方式就是 GPL - GNU General Public License 了。
因為使用者是免費取得了自由軟體的原始碼,那麼如果使用者修改了它的原始碼,基於公平互惠的原則,使用者也必須公開其修改的成果。而這就是 GPL 的精神 - 自由、分享、互惠。
[编辑] BSD许可证
如欲得知更詳細的資訊,請參看BSD许可证。
BSD license(BSD许可证)是"Berkeley Software Distribution license 的首字母缩写,是自由软件(开源软件的一个子集)中使用使用最广泛的许可证之一。BSD软件就是遵照这个许可证来发布,该许可证也因此而得名。
BSD套件最初所有者是加州大學的董事会,这是由于BSD源自柏克萊加州大學。BSD开始后,BSD许可证得以修正,使得以后许多BSD变种,都采用类似风格的许可证。
跟其他许可证相比,从GNU通用公共许可证到限制重重的版權所有,BSD许可证比较宽松,甚至跟公有領域更为接近。事实上,BSD许可证被认为是copycenter(中间版权),界乎标准的版權所有与GPL的版權屬左之间。"Take it down to the copy center and make as many copies as you want"。
[编辑] 自由軟體並不使用封閉格式
封閉軟體通常會使用專屬的封閉格式,但這會極大地限制了使用者的自由度。
而自由軟體則完全不同,由於自由軟體的原始碼是公開的,所以它所使用的任何格式都是透明的。自由軟體永遠不會利用專屬的封閉格式來限制使用者分發或修改的自由。
[编辑] 自由軟體的精神領袖
自由軟體的精神領袖是理查德·马修·斯托曼。他被人稱為為『最後的真正駭客』,他認為一個好的軟體,便該自由自在的讓人取用。軟體不應該拿來做為相互傾軋、剝削的工具。所以他起草GNU通用公共许可证來保障自由軟體的自由,並創辨了自由軟體基金會來貫徹他的理念:
- 他要做出一系列亂棒的自由軟體,好到讓廠家們只要不用它就會倒店的程度!
[编辑] 開放源代碼軟件與自由軟件
嚴格地說來,開放源代碼軟件(開源軟件)與自由軟件是兩個不同的概念,只要符合開源軟件定義的軟件就能被稱為開放源代碼軟件。自由軟件是一個比開源軟件更嚴格的概念,因此所有自由軟件都是開放源代碼的,但不是所有的開源軟件都能被稱為「自由」。但在現實上,絕大多數開源軟件也都符合自由軟件的定義。比如,遵守GPL和BSD許可的軟件都是開放的並且是自由的。
若要具體區分,可作這數項比較︰
- 首先,開放源代碼的規定較寬鬆,而自由軟件的規定較嚴苛。很多的開放源代碼所認可的授權根本不算是自由軟件,所以自由軟件不得不和開放源代碼劃清界線了。
- 再來,如果說自由軟件會引起誤解,(因為 Free 有 自由/免費 雙義),那麼開放源代碼會引起的誤解更多。開放源代碼很容易讓人以為只要把原始碼『公開』出來就算是開放源代碼了,但是如果使用者無法自由運用這些源代碼,那麼公開了源代碼也沒有意義!有的軟體公司甚至只是想找使用者幫它除蟲、幫它追縱編碼,這樣子會破壞了自由軟件的原意。
- 另外,自由軟件的原意就是要給予使用者運用軟體的自由,這個『自由』就是自由軟件的精神所在。但是為了商業化開放源代碼卻故意忽略了這個最重要的精神,反而無法讓使用者體認到『自由』的真意,那麼開放源代碼這一個替代自由軟件的辭句反而把自由的原意除去了。
而自由軟體的精神領袖理查德·马修·斯托曼也很反對人們把開放源代碼和自由軟件混為一談。(請參考:Why ``Free Software' is better than ``Open Source' 一文)。




