• 沒有找到結果。

自由軟體與開放原始碼軟體

二、 文獻回顧

2.3 自由軟體與開放原始碼軟體

2.3.1 自由軟體的定義

自由軟體起源於美國麻省理工學院(MlT)人工智慧程式設計師 Richard

Stallman 在 1970 年代提出的自由軟體「開放原始碼」觀念。他認為「合作共享」

的風氣才是健康的社會風氣,並創作許多自由軟體供社會大眾使用。 1984 年,

Stallman 創立了自由軟體基金會,並發表了「GNU 宣言」(GNU Manifes-to),他 認為人們理應自由地使用軟體,唯有如此才能促進軟體的進步。此宣言包含一般 使用與修改軟體的自由,他提出 GPL(General Public License)授權模式來保障 軟體應有被自由修改及散佈的權利。

根據開放原始碼組織(Open Source Initiative;OSI)的規範,開放原始碼軟 體的主要內涵除了標榜原始碼的開放之外,亦包括了自由散佈的形式、管道與授 權方式等權利義務的規範。期望透過開放性所凝聚的社群開發力量,使軟體功能 更臻完美,這也是吸引廠商或軟體開發人員投入的主要原因。開放原始碼組織列 出的開放原始碼定義包含下列十點特性:

1.允許自由散佈。

2.散佈時亦包含程式原始碼的自由流通。

3.授權條款應允許對原作品的修改以及衍生作品的產生。

4.需保持原作者程式原始碼的完整性(Integrity)。

5.授權條款對任何個人或群體均需一視同仁,不得有差別限制。

圖 2-4 開放原始碼軟體社群開發模式資料來源(王盈勛,2003)

從軟體的開發流程來看,一個典型的開放原始碼軟體的開發週期是(Edwards, 2001): 忘。因此自由軟體目前已發展出了多種不同的授權條款,OSI(Open Source Initiative)本身即認定有超過四十種以上的授權條款。在通過 OSI 認可的授權模式 中,以 GPL(GNU General Public License)、 LGPL (GNU Lesser General Public License)、 BSD (Berkeley Software Distribution)與 MPL(MozillaPublic License)

是幾類較為普及的授權模式,許多授權模式亦以其為基礎所發展出來。(王凱,

2003)

1.GPL(GNU General Public License)

GPL 可被視為開放原始碼軟體授權條款的濫觴。GPL 的設計理念最重要是透 過授權條款保障所有使用者自由複製、散佈與修改的權利。因此,在 GPL 的授 權方式中,最重要的精神便是「使用者權利遞延」(Transitive User Rights),以藉 此確保自由軟體精神、開發社群規模與軟體功能均能延伸與強化。在 GPL 的設

計之下,當軟體開發者應用了 GPL 軟體開發或修改出新作品,除了程式原始碼

2.LGPL(GNU Lesser General Public License)

GPL 授權條款固然確保了開放原始碼軟體的精神得以遞延而不被破壞,但在

3.BSD(Berkeley Software Distribution)

相較於 GPL 在設計上對於維持自由軟體精神與資源的努力,BSD 採取的是 較為寬鬆的方式。就 BSD 授權條款的設計而言,其自由度極大,允許使用者自 由進行使用、複製、修改、散佈或銷售的動作。在 BSD 的授權條款中,僅針對 程式原始碼與二元碼格式散佈時應載明事項,以及特定組織名稱是否具背書

( Endorsement)效力等項目進行規範。依照 BSD 的精神,只要符合授權條款所 述條件,專屬軟體的開發人員可以在其產品中包含 BSD 軟體元件,而該產品亦 可透過一般商業管道進行銷售,而不受到如 GPL 的嚴格限制般,必須將成果同 樣以自由軟體的機制公開。

4.MPL(Mozilla Public License)

相較於 GPL 的嚴格規定與 BSD 的寬鬆作法,MPL 的授權條款可被視為介於

MPL 之外的授權方式,且不限於開放原始碼軟體授權模式,作者若欲採專屬軟體

授權模式亦可。該區段採取 MPL 以外的授權模式,可能由於作者在程式開發階段

取用其它來源的程式庫,也可能是基於特殊理由,希望將該區段採特並的授權方 式。事實上,這樣的作法如同 LGPL 般,同樣提供了專屬軟體與開放原始碼軟體 結合的空間。

相關文件