標籤: 暫無標籤

開源(Open Source,開放源碼)被非贏利軟體組織(美國的Open Source Initiative協會)註冊為認證標記,並對其進行了正式的定義,用於描述那些源碼可以被公眾使用的軟體,並且此軟體的使用、修改和發行也不受許可證的限制。

1 開源程序 -概念

  開放源碼軟體通常是有版權 (copyright ) 的,它的許可證可能包含這樣一些限制:著意地保護它的開放源碼狀態,著者身份的公告,或者開發的控制。實際上,開源軟體同時涉及源碼本身和開發過程,涵蓋了三個方面的意義:免費分發的源代碼、模塊化的體系和集市式的開發--在這種開發方式中,任何地方的任何人都可以參與最終產品的製造,三個方面互相之間有密切的聯繫,集市式的開發過程給開源軟體以強大的改錯能力,因為它將程序中的錯誤公開給了數量巨大的觀眾,他們都是潛在的改錯者。另一方面,任何人都可以復用和發行開源軟體的代碼這一事實又支持了公眾利益,因為創新的觀念被整個集市所共享。另外,"open source"這一術語還被延伸到其他智力團體中,指那些可通過公開手段獲得的智力資源,比如報紙、教學課件等。

GPL

  大多數軟體許可證決意剝奪你的共享和修改軟體的自由。對比之下,GNU通用公共許可證力圖保證你的共享和修改自由軟體的自由。——保證自由軟體對所有用戶是自由的。GPL適用於大多數自由軟體基金會的軟體,以及由使用這些軟體而承擔義務的作者所開發的軟體。(自由軟體基金會的其他一些軟體受GNU庫通用許可證的保護)。你也可以將它用到你的程序中。當我們談到自由軟體(free software)時,我們指的是自由而不是價格。

  GNU通用公共許可證決意保證你有發布自由軟體的自由(如果你願意,你可以對此項服務收取一定的費用);保證你能收到源程序或者在你需要時能得到它;保證你能修改軟體或將它的一部分用於新的自由軟體;而且還保證你知道你能做這些事情。

  為了保護你的權利,我們需要作出規定:禁止任何人不承認你的權利,或者要求你放棄這些權利。如果你修改了自由軟體或者發布了軟體的副本,這些規定就轉化為你的責任。

  例如,如果你發布這樣一個程序的副本,不管是收費的還是免費的,你必須將你具有的一切權利給予你的接受者;你必須保證他們能收到或得到源程序;並且將這些條款給他們看,使他們知道他們有這樣的權利。

  我們採取兩項措施來保護你的權利。

  (1)給軟體以版權保護。

  (2)給你提供許可證。它給你複製,發布和修改這些軟體的法律許可。

  同樣,為了保護每個作者和我們自己,我們需要清楚地讓每個人明白,自由軟體沒有擔保(no warranty)。如果由於其他某個人修改了軟體,並繼續加以傳播。我們需要它的接受者明白:他們所得到的並不是原來的自由軟體。由其他人引入的任何問題,不應損害原作者的聲譽。

  最後,任何自由軟體不斷受到軟體專利的威脅。我們希望避免這樣的風險,自由軟體的再發布者以個人名義獲得專利許可證。事實上,將軟體變為私有。為防止這一點,我們必須明確:任何專利必須以允許每個人自由使用為前提,否則就不准許有專利。

2 開源程序 -意義

  美國一些進步的評論家指出,在象網路這樣的虛擬環境中,驅動系統的底層代碼,尤其是廣為人知的那些應用程序之間的通信協議,它們在某種意義上很象現實社會中的法規。換句話說,這些代碼對網上的行為給出了一些規範,它鼓勵某些行為,而限制其他行為,就像現實社會的法律一樣。因此,開放源碼帶來了一個更民主的開發方式,在這種方式下,好的主意將被集體分享,而不是作為智力資本被個人秘藏著。在這種意義上,開放源碼實質上成為一種政治哲學。

  開放源碼的精神在於使用者可以使用、複製、散布、研究、改進軟體。最早可以 回朔到1960年代。當時,售賣大型計算機的廠商如IBM,把一些軟體及原始碼一併送給客戶,讓客戶能夠因不同需求而自行更改軟體。在 1991-1992 年期間,住在芬蘭的 Linus Torvald製造了第一版的 Linux 操作系統。在一群熱心的程序人員努力下,把 Linux 操作系統以及外圍的應用程序逐一打造。

3 開源程序 -應用

  出名的作品除了趨於成熟的Linux 操作系統外,還有 Apache網頁伺服器、Perl 程序語言、MySQL 資料庫、Mozilla 瀏覽器、OpenOffice、開源軟體無線電 Gnuradio 等等。近來,在政府的推動及各軟體大廠(如 IBM、Redhat、Apple 等)的推動下,預料這股旋風將會掀起新的軟體革命。

上一篇[生生世世情]    下一篇 [棉漿]

相關評論

同義詞:暫無同義詞