嵌入式系統廠商不能不懂的自由軟體授權 GPLv3

jollen 發表於 April 30, 2008 3:14 PM

Richard Stallman[1] 是 Free Software Foundation[2](自由軟體基金會)的創始人。FSF 成立於 1985 年,致力於爭取電腦使用者的軟體使用自由。Richard 也在 1989 年寫出了第一個 GPL (GNU General Public License)[3] 條款,並在 1991 年 6 月份時釋出 GPLv2(GPL version 2)。

GPL 是現今最重要的 Free and Open Source Software(FOSS)授權條款,至今有超過 60% 的自由軟體都是採取 GPL 授權規範。因應時勢需要,GPLv3 在經過長時間的討論後,也於 2007 年 6 月正式釋出。由於過去的 FOSS(Free and Open Source Software)是採用 GPLv2 授權,因此在 GPLv3 釋出後,大家最關心的便是 GPLv2 與 GPLv3 的差異。由於 GPLv2 與 GPLv3 是不相容的,而且目前資訊工業也大量採用 FOSS 解決方案,再加上嵌入式系統(Embedded System)的應用所帶出的「firmware 與 hardware 不可分割」議題,因此不管是軟體開發商或是嵌入式系統廠商,無不積極針對相關的法律議題進行了解,以釐清 GPL 在商業運用方面議題。

中研院「自由軟體鑄造場」在今年三月份舉辦「自由軟體法律研討會:嵌入式應用專題」[4],當天有許多台灣的科技大廠以及政府單位參與,可見大家對自由軟體法律問題的重視。對商業運作而言,特別是嵌入式系統廠商來說,GPLv2 與 GPLv3 的議題會是最重要的部份。了解 GPL 授權規範,以及釐清 v2 與 v3 的差異,將是當前最重要的功課。

Richard Stallman 也親自寫了一份「Why Upgrade to GPL Version 3」文件 [5],向大家說明 GPLv2 與 GPLv3 的主要差異。大致整理 GPLv2 與 GPLv3 的主要差異如下:

* GPLv2 與 GPLv3 是不相容的,沒有法律上的方式將 GPLv2 的程式碼與 GPLv3 的程式碼組合成單一程式。

* GPLv2 與 GPLv3 都是「copyleft」的授權,在自已的程式裡引用使用此授權的程式碼,則自已的程式同樣要引用相同的授權。

* 只在我們需要連結(link)、合併(merge)或組合(combine)二個不同授權的桯式成為一個單一程式時,才會引發授權不相容的議題。但是,GPLv3 的程式與 GPLv2 的程式在一個作業系統裡各自執行時,就不會有什麼問題。例如,TeX 與 Apache 授權都是與 GPLv2 不相容的授權,但我們仍可以在同一個系統裡執行這些程式。因為這些程式都是獨立的程式。又如,如果 Bash 與 GCC 都改採 GPLv3 授權,但 Linux 仍然採用 GPLv2 授權時,這也是沒有衝突的。

* 解決「tivoization」問題。有些裝置以硬體的方式限制使用者,讓使用者無法在該裝置上執行經過修改的軟體。像是 DRM(數位內容管理 - Digital Restrictions Management),如 DVD 撥放器,就會限制 DVD 的撥放。但 GPLv3 並不是想禁止 DRM 的使用,而是確保使用者能有修改軟體的自由,例如:加入一個功能到軟體裡。

* 試圖解決軟體專利問題。但目前仍然無法有效地單獨以 GPLv3 解決此問題。

* GPLv3 與 Apache 授權相容。

原文法律條文有點艱澀難懂,這裡有一份社群協作的「GPLv3 中文翻譯」: http://wiki.debian.org.hk/w/GPLv3, 或許可以提供一些幫助。Richard Stallman 去年接受 Linux Link Tech Show 的訪談,也親自說明 GPLv3 的觀念,值得一聽。

許多嵌入式裝置,如:smartphone、router、media player 等,都廣泛使用 FOSS 做為解決方案。因此,當我們不斷討論自由軟體與開源軟體在商業化的應用時,GPL 授權這個最重要的「許可證」以及相關法律問題,也不能忽略。

延伸閱讀

2006.11.12: Linux Link TEch Show 的訪談:理查史都曼談 GPLv3

[1] Richard Stallman, http://en.wikipedia.org/wiki/Richard_Stallman
[2] Free Software Foundation, http://www.fsf.org/
[3] GPL, http://en.wikipedia.org/wiki/GNU_General_Public_License
[4] 自由軟體鑄造場『自由軟體法律研討會:嵌入式應用專題』, http://www.openfoundry.org/component/option,com_docman/Itemid,112/gid,230/task,cat_view/
[5] Richard Stallman, Why Upgrade to GPL Version 3, http://gplv3.fsf.org/rms-why.html

讀者留言 (0)

留言功能維護中。將於近日重新開放。

連絡作者

Jollen Chen,Moko365(仕橙3G教室)講師,熱愛研究 Linux 與 Android 技術。曾為 Motorola、HTC、Foxconn、LG、OPPO、騰迅、廣達電腦、緯創、仁寶等超過 50 家企業講授課程。目前在 MokoVersity 擔任軟體工程師,撰寫 Node.js 程式,也在幾家科技廠兼任 Android Framework 研發顧問。您可透過電子郵件 <jollen (at) jollen (dot) org> 或這裡與我連絡。