web服務器
WEB服務器也稱爲WWW(WORLD WIDE WEB)服務器,主要功能是提供網上信息瀏覽服務。WWW 是 Internet 的多媒體信息查詢工具,是 Internet 上近年才發展起來的服務,也是發展最快和目前用的最普遍的服務。正是由於有了WWW工具,才使得近年來 Internet 迅速發展,且用戶數量飛速增加。
開源的web服務器軟件包括apache、kangle、nginx等。
Blog
Blog 全名Web log,中文意思是「網絡日誌」,後來縮寫爲Blog。它是繼Email、BBS、IM以後出現的第四種網絡交流方式,是網絡時代的我的「讀者文摘」,是以超級連接爲武器的網絡日記,是表明着新的生活方式和新的工做方式,更表明着新的學習方式。簡言之,Blog 就是以網絡做爲載體,簡易迅速便捷地發佈本身的心得,及時有效輕鬆地與他人進行交流,再集豐富多彩的個性化展現於一體的綜合性平臺。
開源的Blog軟件有b2evolution(PHP+MySQL)、BLOG:CMS (PHP、基於Nucleus CMS)、BLOG:CMS (PHP、基於Nucleus CMS)等。
論壇
論壇又名網絡論壇BBS,全稱爲Bulletin Board System(電子公告板)或者Bulletin Board Service(公告板服務)。是Internet上的一種電子信息服務系統。它提供一塊公共電子白板,每一個用戶均可以在上面書寫,可發佈信息或提出見解。它是一種交互性強,內容豐富而即便的Internet電子信息服務系統。用戶在BBS站點上能夠得到各類信息服務,發佈信息,進行討論,聊天等等。
開源的論壇應用軟件包括phpbb、BMForum、phpwind[等。
應用服務器
應用服務器定是指經過各類協議把商業邏輯曝露給客戶端的程序。它提供了訪問商業邏輯的途徑以供客戶端應用程序使用。應用服務器使用此商業邏輯就像調用對象的一個方法同樣。簡單的說能實現動態網頁技術的服務器叫作應用服務器。
開源的應用服務器軟件包括Enhydra (Java)、JBoss (Java)、Open3 (XML)等。
消息服務器
消息服務器做爲網絡的節點,專門用來存儲、轉發網絡上的數據、信息(例如:聊天信息)。作一個形象的比喻:消息服務器就像是郵局的交換機,而微機、筆記本、PDA、手機等固定或移動的網絡終端,就如散落在家庭、各類辦公場所、公共場所等處的電話機。咱們與外界平常的生活、工做中的電話交流、溝通,必須通過交換機,才能到達目標電話;一樣如此,咱們利用我的電腦,PDA,手機等,發送消息,也必須通過消息服務器,所以也能夠說是消息服務器在「組織」和「領導」這些接收消息設備。
開源的消息服務器軟件包括ArsDigita (Tcl & Java)、Exolab Group (J2EE,整合OpenEJB,OpenJMS,OpenORA,Tyrex)、Zend (PHP)等。
企業程序
企業應用程序是一個泛指的概念,細分下來可分爲企業資源計劃(ERP)、客戶關聯管理、項目管理、內容管理、人力資源管理、自動化採購軟件、信息倉庫(CIW)、生產計劃、庫存管理、羣組軟體、B2B和圖書館資源整合系統(ILS)。
開源的企業應用程序包括Compiere (ERP+CRM)、Compiere、Gnome Planner 、ArsDigita、phpgroupware、J2EE、Akopia、Compiere (ERP+CRM)、openapplications、OpenBiblio等。
無線網絡
所謂無線網絡,既包括容許用戶創建遠距離無線鏈接的全球語音和數據網絡,也包括爲近距離無線鏈接進行優化的紅外線技術及射頻技術,與有線網絡的用途十分相似,最大的不一樣在於傳輸媒介的不一樣,利用無線電技術取代網線,能夠和有線網絡互爲備份。
開源的無線應用程序有kannel、Jwap、Ophelia等。
數據庫
數據庫(Database)是按照數據結構來組織、存儲和管理數據的倉庫,它產生於距今五十年前,隨着信息技術和市場的發展,特別是二十世紀九十年代之後,數據管理再也不僅僅是存儲和管理數據,而轉變成用戶所須要的各類數據管理的方式。數據庫有不少種類型,從最簡單的存儲有各類數據的表格到可以進行海量數據存儲的大型數據庫系統都在各個方面獲得了普遍的應用。
開源的數據庫軟件有BerkelayDB、MySQL、SQLite等。
桌面環境
「桌面環境」可能僅僅是一個簡單的窗口管理器,也多是一個像 KDE 或者 GNOME這樣的完整桌面應用程序套件。
開源的桌面環境類軟件包括GNOME、GNUstep、KDE等。
窗口管理類
窗口管理,又名用戶界面,電子計算機系統中實現用戶與計算機信息交換的軟件、硬件部分。軟件部分包括用戶與計算機信息交換的約定、操做命令等處理軟件,硬件部分包括輸入裝置和輸出裝置。目前經常使用的是圖形用戶界面,它採用多窗口系統,顯示直接形象,操做簡便。
開源的窗口管理類軟件有Afterstep、Twm、fvwm、Window Maker等。
CD刻錄類
CD刻錄機的功能是:能夠刻錄CD,讀取CD,可是卻沒法讀取/寫入DVD,功能上次於COMBO,又次於DVD刻錄機。如今多數人使用的是DVDROM,COMBO,DVD刻錄機。性能方面:讀取——CDROM=CD刻錄機<DVDROM=COMBO=DVD刻錄機;寫入——CD刻錄機<COMBO<DVD刻錄機。
開源的CD刻錄軟件有CD Record、Freeburn、Xfburn等。
文件編輯類
文件編輯類軟件是一個泛指的概念,細分下來包括辦公軟件套件、記事本、PDF相關軟件、科技文本編輯器、文本編輯器、WYSIWYG和文件處理。
開源的文件編輯類軟件包括Gnome Office、KeyNote、FPDF、GNU TeXmacs、FreeDOS edlin、HTMLarea、AbiWord等。
教育類軟件
教育類軟件是一個泛指的概念,細分下來包括學習支持軟件、語言相關軟件、數學相關軟件、科學研究軟件、打字軟件和其餘教育軟件。
開源的教育類軟件包括ILIAS、FlashKard、KBruch、BioJava、GNU Typist、KEduca等。
金融相關軟件
從廣義上說,政府、我的、組織等市場主體經過募集、配置和使用資金而產生的全部資本流動均可稱之爲金融。所以,不只是金融業者,有關政府的財政,行業企業的行爲、以及我的的理財都是金融的一部分。
開源的金融相關軟件有GnuCash、JCash、JMoney等。
遊戲類軟件
遊戲有不少種,在不一樣的媒體會以不一樣型式出現,使用的道具或參與的人數不同也會衍生出不一樣類型的遊戲。其中包括:人手遊戲、桌上游戲、版圖遊戲、紙上游戲、紙牌遊戲、羣體遊戲、電子遊戲、角色扮演遊戲、益智類遊戲和其餘。
開源的遊戲類軟件有Abuse、Falcon's Eye、Java Risk、UFO2000、XulMine等。
網絡軟件
網絡及因特網類軟件是一個泛指的概念,細分下來包括電子郵件、即時通信軟件、通信相關軟件、文件傳輸軟件、P2P文件共享軟件、遠程登陸、網頁瀏覽器、Webcam、Webgrabber、網絡相關軟件和其餘網絡軟件。
絡及因特網類軟件有Magic Mail Monitor 三、AMSN、Slrn、Samba、eMule、RealVNC、Galeon、Dorgem、HTTrack、Apache Tomcat、OpenLDAP等。
數學軟件類
是專門用來進行數學運算、數學規劃、統計運算、工程運算、繪製數學圖形或製做數學動畫的軟件。
開源的數學類軟件包括GAP、MAⅪMA、SINGULAR等。
媒體類
體類軟件是一個泛指的概念,細分下來包括音頻編輯軟件/音頻管理軟件、圖形類/圖片瀏覽類、媒體播放器類、視頻剪輯類。
源的媒體類軟件包括CD-DA X-Tractor、GOCR/JOCR、JCDSee、CoolPlayer、GNU VCDImager等。
操做系統類
操做系統(英語:Operating System,簡稱OS)是一管理電腦硬件與電腦軟件資源的程序,同時也是計算機系統的核心與基石。操做系統身負諸如管理與配置內存、決定系統資源供需的優先次序、控制輸入與輸出設備、操做網上與管理文件系統等基本事務。操做系統也提供一個讓用戶與系統交互的操做接口。
開源的操做系統類軟件有開源Unix(System V/BSD)、FreeDOS、Linux、Menuet等。
密碼管理類
圍繞用戶帳號密碼安全和管理的軟件或者硬件的集合。
開源的密碼管理類軟件包括Password Safe、PINs等。
我的信息管理類
我的信息管理系統是一種提供我的信息組織管理功能的應用軟件。其目的是爲了便於記錄、跟蹤和管理各類我的信息。
開源的我的信息管理類軟件有Elephant Memory、KAddressbook、KOrganizer等。
編程語言類
計算機語言的種類很是的多,總的來講能夠分紅機器語言,彙編語言,高級語言三大類。若是按語種分,能夠分爲英文符號語言和漢語符號語言兩類。(典型的如:易語言、易語言.飛揚) 電腦每作的一次動做,一個步驟,都是按照已經用計算機語言編好的程序來執行的,程序是計算機要執行的指令的集合,而程序所有都是用咱們所掌握的語言來編寫的。因此人們要控制計算機必定要經過計算機語言向計算機發出命令。目前通用的編程語言有兩種形式:彙編語言和高級語言。
開源的編程語言類軟件包括DJGPP、GCC、Open6四、Objective CAML、PHP等。
屏幕保護軟件
屏幕保護程序是電腦程序,原意是經過將畫面空白,或在畫面上填滿移動的圖像,避免電腦顯示器在靜止的狀況下產生磷質烙印,從而減低其壽命。如今,屏幕保護程序被用做娛樂或保安用途。
開源的屏幕保護軟件有Flurry、KISS Image Screen Saver、Really Slick Screensavers、xmatrix等。
安全軟件
安全軟件是一個泛指的概念,細分下來包括殺毒軟件、加密軟件、防火牆、SSH、其餘安全軟件。
開源的安全軟件包括Open Antivirus、GnuPG、Coyote Linux、OpenSSH、Stunnel等。
其餘軟件
下面列舉一些難於分類的開源軟件:
Active2
AstroGrep — 有GUI圖形界面的Grep
Autopackage — Linux上的軟件包管理系統
BibleTime — 聖經學習軟件
Bochs — PC積累器
Cygwin — Win32的開源Unix模擬環境
Link Checker — 檢查HTML文檔的壞鏈接
Memtest86 — 內存檢查軟件
Open Scene Graph
Sun Grid Engine —計算機集羣軟件
TeX — 排版系統
Vitrite — Windows 2000/XP 上使窗口透明的軟件
WINE — 在Linux/BSD上運行Windows軟件
XFree86 — 視窗系統
gEDA自動化電器設計工具
GPAI 通用公共人工智能平臺
發展趨勢
互聯網的普及,將原來分散開發人員聚合在一塊兒,只要有一個合適的基礎和好的框架,他們就能夠開發出產品級的工具軟件(以Eclipse,JBoss,MySQL,Subversion,GLASSFISH爲例),從而開源成爲了一種趨勢。開源軟件大量出現,軟件外包將更加普及,主要特色以下:
1計算能力的加強,集成開發環境更加智能,獲取現成的類庫更加方便,應用軟件開發變得更加容易。
2加上軟件自己一次性投資的特色,不少的場合甚至用軟件替代硬件,是的軟件開發需求增長。
3.消費類電子與人們的生活更加息息相關,小的免費軟件,小型桌面遊戲的出現。等各方面須要的軟件開發人員數量急劇增加(組織形態是大量的小規模開發團隊);在這一因素以及下降成本的壓力下,開發外包變得很是普及;[2]
4.項目構建工具,資源依賴更加自動化,系統開發也不須要從0開始,而是利用業內的免費框架進行二次開發。
一個著名的計算機工業雜誌報道Netscape是「受大量免費和共享軟件許可的啓發」。事實上,Netscape正在與許多著名的UNIX自由軟件開發者互通訊息,如今看起來已經很是接近BSD和GPL許可證了。Nescape Public License和GPL有所不一樣,它使得Nescape對源碼的開發和商標上有更多的控制。
Netscape的棄子戰術是很聰明的。首先,瀏覽器的銷售在Netscape的業務中已經只佔不多一部分了。瀏覽器的開放源碼狀態不會對它有太大的衝擊,另外有些想要正式技術支持的買家仍然願意付錢。第二,它真正按照某個開放源碼的許可證發放,從而徹底改變了Microsoft免費派送Explorer形成的被動局面。這將有助於提升Nescape瀏覽器的市場份額。最後,Netscape的立場從開放源碼社羣中得到了友誼,信任度和潛在的巨大革新。Netscape的將來還不能讓人放心,尤爲是在NT的Web服務器上;但它爲Communicator採用的勇敢的、戲劇性的許可證政策不會帶來任何損失。
常見協議
LGPL許可證
LGPL許可證是LESSER GENERAL PUBLIC LICENSE的簡寫,也叫LIBRARY GENERAL PUBLIC LICENSE,中文譯爲「較寬鬆公共許可證」或者「函數庫公共許可證」。該許可證適用於一些由自由軟件基金會與其它決定使用此許可證的軟件做者所特殊設計的軟件軟件包─好比函數庫(即Library)。
LGPL許可證,也是自由軟件聯盟GNU開源軟件許可證的一種,大部分的 GNU軟件,包括一些函數庫,是受到原來的 GPL許可證保護的。而LGPL許可證,適用於特殊設計的函數庫,且與原來的通用公共許可證有很大的不一樣,給予了被許可人較爲寬鬆的權利,因此叫「較寬鬆公共許可證」。在特定的函數庫中使用它,以准許非自由的程序能夠與這些函數庫連結。
當一個程序與一個函數庫連結,不管是靜態連結或使用共享函數庫,兩者的結合能夠合理地說是結合的做品,一個原來的函數庫的衍生品。所以,原來的通用公共許可證只有在整個結合品知足其自由的標準時,才容許連結。較寬鬆通用公共許可則以更寬鬆的標準容許其它程序代碼與本函數庫連結。例如,在少數狀況下,可能會有特殊的須要而鼓勵你們儘量普遍地使用特定的函數庫,於是使它成爲實際上的標準。爲了達到此目標,必須容許非自由的程序使用此函數庫。一個較常發生的狀況是,一個自由的函數庫與一個被普遍使用的非自由函數庫作相同的工做,在此狀況下,限制只有自由軟件可使用此自由函數庫不會有多少好處,故咱們使用了LGPL許可證。
在其餘狀況下,容許非自由程序使用特定的函數庫,可讓更多的人們使用自由軟件的大部分。例如,容許非自由程序使用GNU C函數庫,可讓更多的人們使用整個GNU做業系統,以及它的變形,GNU/Linux操做系統。
儘管LGPL許可證對使用者的自由保護是較少的,但它卻能確保與此函數庫連結的程序的使用者擁有自由,並且具備使用修改過的函數庫版原本執行該程序的必要方法。
MPL許可證
MPL是The Mozilla Public License的簡寫,是1998年初Netscape的 Mozilla小組爲其開源軟件項目設計的軟件許可證。MPL許可證出現的最重要緣由就是,Netscape公司認爲GPL許可證沒有很好地平衡開發者對源代碼的需求和他們利用源代碼得到的利益。同著名的GPL許可證和BSD許可證相比,MPL在許多權利與義務的約定方面與它們相同(由於都是符合OSIA認定的開源軟件許可證)。可是,相比而言MPL還有如下幾個顯著的不一樣之處:
MPL雖然要求對於經MPL許可證發佈的源代碼的修改也要以MPL許可證的方式再許可出來,以保證其餘人能夠在MPL的條款下共享源代碼。可是,在MPL許可證中對「發佈」的定義是「以源代碼方式發佈的文件」,這就意味着MPL容許一個企業在本身已有的源代碼庫上加一個接口,除了接口程序的源代碼以MPL許可證的形式對外許可外,源代碼庫中的源代碼就能夠不用MPL許可證的方式強制對外許可。這些,就爲借鑑別人的源代碼用作本身商業軟件開發的行爲留了一個豁口。
MPL許可證第三條第7款中容許被許可人將通過MPL許可證得到的源代碼同本身其餘類型的代碼混合獲得本身的軟件程序。
對軟件專利的態度,MPL許可證不像GPL許可證那樣明確表示反對軟件專利,可是卻明確要求源代碼的提供者不能提供已經受專利保護的源代碼(除非他本人是專利權人,並書面向公衆免費許可這些源代碼),也不能在將這些源代碼以開放源代碼許可證形式許可後再去申請與這些源代碼有關的專利。
對源代碼的定義
而在MPL(1.1版本)許可證中,對源代碼的定義是:「源代碼指的是對做品進行修改最優先擇取的形式,它包括:全部模塊的全部源程序,加上有關的接口的定義,加上控制可執行做品的安裝和編譯的‘本來’(原文爲‘Script’),或者不是與初始源代碼顯著不一樣的源代碼就是被源代碼貢獻者選擇的從公共領域能夠獲得的程序代碼。」
MPL許可證第3條有專門的一款是關於對源代碼修改進行描述的規定,就是要求全部再發布者都得有一個專門的文件就對源代碼程序修改的時間和修改的方式有描述。
BSD許可證
BSD許可證原先是用在加州大學柏克利分校發表的各個4.4BSD/4.4BSD-Lite版本上面(BSD是Berkly Software Distribution的簡寫)的,後來也就逐漸沿用下來。1979年加州大學伯克利分校發佈了BSD Unix,被稱爲開放源代碼的先驅,BSD許可證就是隨着BSD Unix發展起來的。BSD許可證如今被Apache和BSD操做系統等開源軟件所採納。
相較於GPL許可證和MPL許可證的嚴格性,BSD許可證就寬鬆許多了,同樣是只須要附上許可證的原文,不過比較有趣的是,它還要求全部進一步開發者將本身的版權資料放上去,因此拿到以BSD許可證發行的軟件可能會遇到一個小情況,就是這些版權資料許可證佔的空間比程序還大。
QPL許可證
QPL是The Qt Public License的簡稱,是挪威一家機構創設的。QPL許可證的基本要求是得到源代碼、修改源代碼,並可將修改從原始代碼中分離出來;修改能夠按照做者的意願被組合到新版本中;二進制代碼能夠和原始代碼同名,這一點對於動態鏈接庫來講尤爲重要;任何人均可以修正錯誤,這對於系統的發佈者來講很關鍵;修改過的軟件能夠按照知足QPL許可證基本要求的任何開源軟件許可證進行發佈。
QNCL許可證
QNCL許可證是Qt Non Commercial License的簡稱,是QPL許可證的「兄弟版」,就像GPL許可證與LGPL許可證的關係同樣,QNCL許可證比QPL許可證更嚴格一些。
在修改和發佈方面的規定,QNCL許可證與QPL許可證是同樣的,差別就在於軟件的範圍方面,或者說在鏈接方面。QNCL許可證規定「假如一個應用程序給你提供了一個入口,使你有權使用QNCL許可證下的軟件的功能開發程序、重複使用程序的某一部分或其餘軟件的某一部分,那麼對該應用程序的使用視爲是使用QNCL許可證下的軟件的行爲,該應用程序應受到QNCL許可證的約束」。QNCL許可證比QPL許可證更嚴格之處在於,QNCL許可證像GPL許可證那樣,徹底禁止根據本許可證獲得的開放源碼軟件與其餘非系統庫函數鏈接的軟件以其餘許可方式一塊兒發佈。
Common許可證
Common許可證的全稱是Common Public License。在知足OSIA開源軟件許可證認證標準的前提了後,Common許可證還有一些細節性的規定值得參考:
明確了專利受權。通常的開源軟件都有明確源代碼的版權人將本身的修改權、複製權等版權權利向公衆許可,但保留署名權,而Common許可證在此基礎上還明確假如源代碼中含有專利權,源代碼專利權人將複製、使用的專有權利向公衆許可。
規定能夠將源代碼及修改過的源代碼與其餘類型的不受本許可證約束的代碼結合,以新產品的形式發佈,只要其中經該許可證得到的源代碼及修改過的源代碼能按該許可證的要求發佈便可。
細化了該許可證終止的情形,包括髮生專利侵權訴訟。
明確了一個獨立承擔責任的原則,就是假如按該許可證使用源代碼的使用者將得到的源代碼應用於商業使用,那麼他就要對在商業應用中出現的因爲使用該源代碼程序而產生的侵權訴訟承擔徹底責任。這一條規定是比較特殊的,絕大多數開源軟件許可證都不這麼要求。
IBM許可證
IBM許可證的全稱是IBM Public License。在知足OSIA開源軟件許可證認證標準的前提下,IBM許可證還有以下一些細節性規定:
明確了專利受權。通常的開源軟件都明確源代碼的版權人將本身的修改權、複製權等版權權利向公衆許可,但保留署名權,而IBM許可證在此基礎上還明確假如源代碼中含有專利權,源代碼專利權人將複製、使用的專有權利向公衆許可。
細化了該許可證終止的情形,包括不按該許可證的要求發佈和使用源代碼、發生專利侵權訴訟等。
像Common許可證同樣,IBM許可證也明確了獨立承擔責任原則,即假如按該許可證使用源代碼的使用者將得到的源代碼應用於商業使用,那麼他就要對在商業應用中出現的、因爲使用該源代碼程序而產生的侵權訴訟承擔徹底責任。
Jabber許可證
Jabber許可證的全稱是Jabber Open Source License,由美國Jabber, Inc.公司提供。Jabber許可證在源代碼的複製、發行規定方面基本上和其餘許可證沒有什麼特別,但有一些細節規定值得借鑑:
能夠將經過該許可證得到的源代碼及修改過的源代碼與其餘類型的不受該許可證約束的代碼結合,以新產品的形式發佈,只要其中經該許可證得到的源代碼及修改過的源代碼能以與該許可證的要求相似的、符合OSI認證的其餘開源軟件許可證的方式發佈。
明確了需將源代碼置於公衆能夠獲得的狀態的時間至少應爲12個月。
第三方對法定權利的聲明。假如使用者發現經過本許可證得到的源代碼及應用程序接口中有一方擁有的知識產權,應單獨在源碼的發佈時冠以「LEGAL」爲擡頭的聲明,寫明知識產權權利要求的細節,提請源代碼的接受者知道本身得到了哪些知識產權的受權,讓源碼的接受者知道如何與知識產權權利人聯繫。
細化了該許可證終止的情形,包括不按該許可證的要求發佈和使用源代碼、發生專利侵權訴訟。
協議對比
BSD開源協議
BSD開源協議是一個給於使用者很大自由的協議。基本上使用者能夠」隨心所欲」,能夠自由的使用,修改源代碼,也能夠將修改後的代碼做爲開源或者專有軟件再發布。
但」隨心所欲」的前提當你發佈使用了BSD協議的代碼,或則以BSD協議代碼爲基礎作二次開發本身的產品時,須要知足三個條件:
若是再發布的產品中包含源代碼,則在源代碼中必須帶有原來代碼中的BSD協議。
若是再發布的只是二進制類庫/軟件,則須要在類庫/軟件的文檔和版權聲明中包含原來代碼中的BSD協議。
不能夠用開源代碼的做者/機構名字和原來產品的名字作市場推廣。
BSD 代碼鼓勵代碼共享,但須要尊重代碼做者的著做權。BSD因爲容許使用者修改和從新發布代碼,也容許使用或在BSD代碼上開發商業軟件發佈和銷售,所以是對 商業集成很友好的協議。而不少的公司企業在選用開源產品的時候都首選BSD協議,由於能夠徹底控制這些第三方的代碼,在必要的時候能夠修改或者二次開發。
MIT
MIT是和BSD同樣寬範的許可協議,做者只想保留版權,而無任何其餘了限制。也就是說,你必須在你的發行版裏包含原許可協議的聲明,不管你是以二進制發佈的仍是以源代碼發佈的。MIT協議又稱麻省理工學院許可證,最初由麻省理工學院開發。被受權人權利:一、被受權人有權利使用、複製、修改、合併、出版發行、散佈、再受權及販售軟件及軟件的副本。二、被受權人可根據程式的須要修改受權條款爲適當的內容。被受權人義務:在軟件和軟件的全部副本中都必須包含版權聲明和許可聲明。
GNU GPL
咱們很熟悉的Linux就是採用了GPL。GPL協議和BSD, Apache Licence等鼓勵代碼重用的許可很不同。GPL的出發點是代碼的開源/無償使用和引用/修改/衍生代碼的開源/無償使用,但不容許修改後和衍生的代 碼作爲閉源的商業軟件發佈和銷售。這也就是爲何咱們能用免費的各類linux,包括商業公司的linux和linux上各類各樣的由我的,組織,以及商 業軟件公司開發的免費軟件了。
GPL協議的主要內容是隻要在一個軟件中使用(」使用」指類庫引用,修改後的代碼或者衍生代碼)GPL 協議的產品,則該軟件產品必須也採用GPL協議,既必須也是開源和免費。這就是所謂的」傳染性」。GPL協議的產品做爲一個單獨的產品使用沒有任何問題, 還能夠享受免費的優點。
因爲GPL嚴格要求使用了GPL類庫的軟件產品必須使用GPL協議,對於使用GPL協議的開源代碼,商業軟件或者對代碼有保密要求的部門就不適合集成/採用做爲類庫和二次開發的基礎。
其它細節如再發布的時候須要伴隨GPL協議等和BSD/Apache等相似。
GUN LGPL
LGPL 是GPL的一個爲主要爲類庫使用設計的開源協議。和GPL要求任何使用/修改/衍生之GPL類庫的的軟件必須採用GPL協議不一樣。LGPL 容許商業軟件經過類庫引用(link)方式使用LGPL類庫而不須要開源商業軟件的代碼。這使得采用LGPL協議的開源代碼能夠被商業軟件做爲類庫引用並 發佈和銷售。
可是若是修改LGPL協議的代碼或者衍生,則全部修改的代碼,涉及修改部分的額外代碼和衍生的代碼都必須採用LGPL協議。因 此LGPL協議的開源 代碼很適合做爲第三方類庫被商業軟件引用,但不適合但願以LGPL協議代碼爲基礎,經過修改和衍生的方式作二次開發的商業軟件採用。
GPL/LGPL都保障原做者的知識產權,避免有人利用開源代碼複製並開發相似的產品。
Apache Licence 2.0
Apache Licence是著名的非盈利開源組織Apache採用的協議。該協議和BSD相似,一樣鼓勵代碼共享和尊重原做者的著做權,一樣容許代碼修改,再發布(做爲開源或商業軟件)。須要知足的條件也和BSD相似:
須要給代碼的用戶一份Apache Licence
若是你修改了代碼,須要再被修改的文件中說明。
在延伸的代碼中(修改和有源代碼衍生的代碼中)須要帶有原來代碼中的協議,商標,專利聲明和其餘原來做者規定須要包含的說明。
若是再發布的產品中包含一個Notice文件,則在Notice文件中須要帶有Apache Licence。你能夠在Notice中增長本身的許可,但不能夠表現爲對Apache Licence構成更改。
Apache Licence也是對商業應用友好的許可。使用者也能夠在須要的時候修改代碼來知足須要並做爲開源或商業產品發佈/銷售。