2014年12月11日 星期四

1212Linux

自由軟體(Free Software)的定義界定了一個特定的軟體能否乎合自由軟體的準則。為了解決一些細節的問題,我們不時會重新審視這些準則。可以從以下的更新記錄了解這個定義的演變。「自由軟體」指尊重使用者及社群自由的軟體。簡單來說使用者可以自由運行、複製、發佈、學習、修改及改良軟體。他們有操控軟體用途的權利。

如果使用者不能控制軟體,就會反被軟體操控,而軟體開發者就可以透過軟體操控使用者。這些不自由(nonfree)或專有(proprietary)的軟體就成為不公義勢力的利器。
所以「自由軟體」是自由、權利的問題,而不是價格的問題。自由軟體的性質就跟「自由言論」一樣,而不是「免費啤酒」[按1]。
如果軟體使用者有以下四項自由,那軟體就是自由軟體︰

以任何目的運行該程式 (自由0)[按2]。
取得軟體的代碼(source code)並學習程式的運作、修改為你想要的樣子 (自由1)
隨意發佈軟體副本以幫助別人 (自由2)。
隨意分發你修改的版本(包括代碼)給別人 (自由 3)。此舉可使你的版本惠及社群。

自由軟體參考資料:http://www.gnu.org/philosophy/free-sw.zh-tw.html

開放原始碼軟體 (Open Source Software),指的是符合開放源碼促進會 (Open Source Initiative, OSI) 所訂定開放源碼定義 (Open Source Definition, OSD) 的軟體。
開放源碼定義由 Bruce Perens 所擬,其曾經為 Debian 開發計畫的領導人,並為 Debian 草擬「Debian 自由軟體指導綱要(The Debian Free Software Guidelines, DFSG,註二)」,用來判斷 Debian 計畫中的程式是否為自由軟體,之後裴倫斯將 DFSG 加以修改成為開放源碼定義的第 1 版。目前開放源碼定義由 OSI 維護,最新版本為第 1.9 版,共有十項要件(註三):

1.自由再散布 (Free Distribution):允許自由再散布程式,並且不可以因此而收取授權金,不過仍然可以收取授權金以外的費用。
2.原始碼 (Source Code):為了使程式可以被修改,所以必須允許程式以原始碼形式散布。散布原始碼的形式不拘,可以透過電子媒介,也可以透過紙本。而除了直接提供原始碼外,也可以先單獨散布程式的執行檔,若收到執行檔之人想要原始碼時,可以再向散布執行檔著索取原始碼,現行常見的做法,是將程式執行檔與原始碼的下載連結置於同一網頁上,於固定網址中提供他人自行下載。
3.衍生著作 (Derived Works):必須允許他人可以修改原程式,並且允許他人散布修改過的程式。授權條款可以要求修改過的程式必須採用與原程式相同的授權內容,不過此並非是這項定義中強制性的要求。
4.原創作者程式原始碼的完整性 (Integrity of The Author's Source Code):為了保持原作者原始碼的完整性,授權條款可以要求修改版本冠以不同的版本編號,用來和原程式做區別,或者是要求以修正檔 (patch files) 附加於原程式的形式來散布修改程式。這項定義並不是強制性。
5.不得對任何人或團體有差別待遇 (No Discrimination Against Persons or Groups):為了讓開放源碼軟體可以廣泛地散布,授權條款內容不得歧視任何人或團體。不過某些國家對於特定種類的軟體設有輸出限制,授權條款中可以提醒使用者可能有這樣的規定必須遵守,不過條款本身則不可以有輸出限制的內容。
6.對程式在任何領域內的利用不得有差別待遇 (No Discrimination Against Fields of Endeavor):基於和第五項定義同樣的理由,授權條款內容不得限制程式僅可以或不可以在特定領域中運用,當然也不得限制程式在商業領域中的運用。
7.散布授權條款 (Distribution of License):授權條款中的權利繼續適用於收到程式的所有使用者。這項要件的重點並非在於,修改過的程式仍然必須適用相同的授權條款,因此像 GPL 這樣的授權條款也符合這項要件。
8.授權條款不得專屬於特定產品 (License Must Not Be Specific to a Product):這一項定義是防止開放源碼軟體的程式被封閉起來。若多個程式一同以一個開放源碼套裝軟體 (package) 的形式散布時,若其中一個程式單獨被拿出來散布時,授權條款不可以限制這個程式繼續以開放源碼授權條款散布。
9.授權條款不得限制其他軟體 (License Must Not Restrict Other Software):一個開放源碼程式與其他程式在透過同一個散布媒介體散布,例如 CD-ROM,此時開放源碼授權條款不得限制其他一同散布的程式也必須是開放源碼的。
10.授權條款必須技術中立 (License Must Be Technology-Neutral):授權條款必須技術中立,必須使程式可以在非網際網路環境以及在非圖形化使用者環境 (non-GUI) 下散布。若是授權條款規定「點選即視為同意 (click-wrap)」的程序作為使用者接受條款的要件,這樣的規定會阻礙程式透過紙本散布,就不符合技術中立要件的要求。

參考資料:http://www.openfoundry.org/tw/news/520

沒有留言:

張貼留言