什麼是開放源碼軟體(Open Source Software)?
Created at Thursday, 22 March 2007 19:33 Last Updated on Tuesday, 13 January 2009 01:45
Written by webmaster
隨著Linux的崛起,自由軟體開始受到商業公司與企業的重視,卻因為「Free Software」容易讓人誤以為自由軟體只能免費釋出,或是無法靠它營利。為了降低許多人對於自由軟體的疑慮,《教堂與市集》(The Cathedral and the Bazaar)作者艾瑞克‧雷蒙(Eric Raymond)等人提出「開放源碼」(Open Source)一詞,以強調軟體程式源碼開放的重要性,並成立了開放源碼組織(Open Source Initiative, OSI)以推廣開放源碼軟體授權。
開放源碼軟體的授權基礎是根據OSI的規範,其主要內涵除了標榜源碼的開放之外,亦包括了自由散布的形式、管道與授權方式等權利義務的規範。期望透過開放性所凝聚的社群開發力量,使軟體功能更臻完善,這也是吸引廠商或軟體開發人員投入的主要原因。
開放源碼組織(OSI)列出的開放源碼定義,包含下列十點特性︰
(1) 自由再散布(Free Redistribution):符合此一定義的授權條款不得限制他人自由散布或銷售該軟體,也不得要求授權金或其他費用。
(2) 原始碼(Source Code):程式的同時也必須包含原始碼,不過在散布的時候需以原始碼或任何可編譯的形式散布。若是程式不包含原始碼,散布程式者必須提供任何一種大眾皆熟悉的方式。
(3) 衍生著作(Derived Works):符合此一定義的授權條款必須允許程式被修改以及允許經由該程式所產生的衍生著作。這些修改版本與衍生著作仍必須透過同樣的授權條款再被散布出去。
(4) 原創作者程式源碼的完整性(Integrity of The Author's Source Code):為了保障開放原始碼軟體程式的原作者,在符合某特定的條件下,該授權條款可以限制修正版本的散布。此外,授權條款也可以要求衍生著作必須要標上不同之名稱或是版本編號。
(5) 不得對任何人或團體有差別待遇(No Discrimination Against Persons or Groups):授權條款對任何個人或群體需一視同仁,不得有差別待遇
(6) 程式在任何領域內的利用不得有差別待遇(No Discrimination Against Fields of Endeavor):例如不可以限制程式在商業領域的利用。
(7) 散布授權條款(Distribution of License):所有附隨於該程式的權利,適用於所有再散布的程式,以避免程式被他人附加其他限制而影響程式的開放性。
(8) 授權不得專屬於特定產品(License Must Not Be Specific to a Product):當程式單獨散布時,取得程式的人仍然可以享有一樣權利,這些權利不會因為程式單獨散布而有所減損。
(9) 授權條款不得限制其他軟體(The License Must Not Restrict Other Software):例如開放源碼軟體與許多軟體皆透過同一媒介加以散布,則開放源碼軟體之授權條款不得要求其他的軟體也必須開放程式源碼。
(10) 授權條款必須技術中立(The License must be technology-neutral):為了保障開放源碼程式的自由散布,因此其授權條款不得以偏頗某特定的技術或是介面。