開放原始碼與封閉式原始檔軟體的比較

開放原始碼之道是指在開放原始碼社群中的思考和分工合作方式。這個哲學建基於知識自由和核心原則:透明、協同作業、交付、包容及社群。社群的構想交流和開發軟體推動了以下產業的創造性、科學性和技術進步:教育、政府、法律、衛生及製造業。此行動為全球社群創造了一種方式,其中透過原始碼分工合作、共用與協助達成個人和群組目標。

開放原始碼軟體是協同的,它依靠社群生產和對等審核來使用、變更與彼此共享原始碼。開發人員分享洞察、構想和程式碼,透過集體和個別方式打造更創新的軟體解決方案。這種可調整的彈性軟體可確保取得原始碼的任何人都能夠修改、加強與重新發行該軟體,藉此提供更好的重複使用性和可存取性。開放原始碼軟體運作的基礎原則是對等生產和大規模協作,藉此為一般使用者創造更加永續的軟體開發。 

封閉原始碼軟體 (CSS) 是指未發行給大眾的專有軟體。這類軟體經過加密,因此只有建立程式碼的原始作者才有權合法複製、修改、更新與編輯原始碼。封閉軟體會限制一般使用者可以對應用程式做的事情,以防止使用者修改、共用、複製或重新發佈原始碼。

除了開放和封閉原始碼,FOSS(自由/開放原始碼軟體)讓使用者可以從更哲學的角度存取軟體。在 FOSS 中,設有免費軟體基金會 (FSF) 以保護使用者自由,也設有開放原始碼倡議 (OSI) 以確保可靠軟體的技術價值。有各式各樣的免費軟體授權可供使用、修改與營利銷售,包括:GPL、LGPL 及 BSD 授權。

部分最熱門的開放原始碼軟體授權包括:

  • MIT License©:MIT License 是免費的軟體授權,可讓使用者修改原始程式碼,而且限制要求非常少。 
  • GNU General Public© (GPL):GNU 是一系列的免費軟體授權,其中保證一般使用者能夠執行、學習、分享與修改軟體。 
  • Apache®:Apache License 2.0 是一種免費的軟體授權,它容許使用者為了特定目的而使用、修改與發行軟體。 
  • BSD:此授權對開發人員的限制比較少,它讓使用者可在不必共享修改的情況下使用與修改程式碼。
  • MySQL™:MySQL 是一種開放原始碼資料庫管理系統,它提供兩種不同授權 - mySQL Standard Edition 和 MySQL Enterprise Edition。
  • SUSE:SUSE Linux 建基於開放原始碼 Linux 核心,隨系統和應用程式軟體一起發行。
  • Ubuntu®:Ubuntu 是由透過桌面、雲端和 IoT 發行之免費開放原始碼軟體所組成的 Linux 發行套件。

Unix® 和 Linux 的歷史

Unix 從 1969 年開始在 AT&T ® 貝爾實驗室進行開發,它是一種專有但可授權的產品。在接下來的 10 年裡,Unix 開發出多個版本,包括 V6,這是貝爾實驗室以外提供的第一個版本。

因為此新語言的性質,此程式碼很快就引起學界的關注。美國加州大學伯克萊分校開始開發自己的 Unix,而且很快就開發出名為 Berkeley Software Distribution(BSD 授權)的學術版本。在此同時,AT&T 將它們的 Unix 版本演化成 System V。這兩個版本最終合併成了統一的 Unix,然後再進化成以下程式:Sun Solaris、FreeBSD、NetBSD 及 OpenBSD。

在 1984 年,Richard Stallman 建立了名為 GNU (GNU’s Not Unix) 的免費 Unix 複製。此版本開放免費使用、修改,以及視需要重新發行。在 1991年,Linus Torvalds 建立了名為 "Linux" 或 Linux 核心的作業系統核心。結合 FSF 與 BSD 元件後,Linux 成為一個完整的作業系統;現在它可在多種架構上執行,而且已獲得歷史悠久的 Unix 供應商採用或支援。


企業中的開放原始碼

企業開放原始碼不僅僅是開放原始碼,它整合了在開放原始碼上執行的單一許可授權開放原始碼庫。若要成為企業開放原始碼,產品必須由能夠回應安全問題的安全團隊進行測試、調整與安全瑕疵檢查。企業開放原始碼也有方便的功能,例如單一登入 (SSO)、SSO 平台整合及目錄管理。

企業 IT 環境需要大量的投資和規劃,以致於在安裝應用程式時軟體早已過時。這些應用程式還經常需要額外的訓練和認證,這些都會在服務合約中陳述。不過,企業開放原始碼具有可預測的生命週期,其中包含以不同速度移動的資訊和元件。重要的應用程式其軟體壽命很長;例如 Red Hat® Enterprise Linux 的生命週期為 10 年。  

許多公司和個人因為多樣性、安全性、演化、社群、訓練及穩定性的關係而偏好使用開放原始碼,而不是專有或商業軟體。使用開放原始碼的部分優勢是:成本與節約、可彈性自訂程式碼,以及自由利用社群而不是單一供應商。但開放原始碼也有一些缺點,包括:支援欠佳、說明文件不佳、複雜性不當、侵入性廣告和漏洞。

對於仍需要專有軟體的人來說,則面臨軟體過時、大宗產品、較高或非預期的成本、混亂的授權安排,以及依賴單一供應商等缺點。然而,有些公司受到單一供應商吸引的原因包括一站式採購、可擴充企業級產品、專業介面、例行性更新、不需要程式設計,以及應用程式與產品相整合。 


歷史與演變

致力於發展開放原始碼

許多像 IBM 這樣的企業公司一直致力於發展開放原始碼,從支持新興社群、推動授權發展到倡導控管和標準。

彈性的區塊鏈架構

進一步探索 Hyperledger Fabric,此區塊鏈架構正在協助創新者進行全球商業轉型。

資源

企業開放原始碼的專業知識

瞭解您的企業可以如何建立、採用與擴充開放原始碼,藉此促進開放的企業環境。

新興的開放專案

我們的開發人員正在針對區塊鏈、儲存器及 AI 建立新興的開放原始碼。

Forrester 市場研究

瞭解企業如何運用開放原始碼技術來實現大型軟體採用。

解決方案

Linux 伺服器解決方案

將 Linux 整合到您的 IT 基礎架構內部部署和雲端中,以獲得更好的彈性和控制。

Linux on IBM Z

在 IBM Z 大型主機平台上執行的 Linux 作業系統,可為混合式多雲端提供資料隱私權和網路安全。

IBM LinuxONE

探索安全的開放原始碼軟體伺服器,它可為重要的應用程式提供最佳安全性和可擴充性。

Enterprise Linux on Power Systems™

使用這些作業伺服器和開放基礎架構,來管理現代工作負載的大量資料。

IBM AIX® 作業系統

從擁有可靠安全設定、無比執行時間和投資保障保證的可擴充標準型作業系統獲益。

IBM Cloud 上的 Red Hat 應用程式

您可以使用 Red Hat 來建置與開發應用程式,然後部署在 IBM 公有雲或私有雲上。