摘要 : 縱觀 IT 行業(yè)這二十多年的發(fā)展,開源軟件從黑客的理想之國,已經(jīng)形成了一股推進(jìn)計(jì)算機(jī)及相關(guān)行業(yè)不停進(jìn)步的巨大力量。
對于開源軟件,也許很多人從不同渠道看到過,但是很有可能你并不知道他有多重要。縱觀 IT 行業(yè)這二十多年的發(fā)展,開源軟件從黑客的理想之國,已經(jīng)形成了一股推進(jìn)計(jì)算機(jī)及相關(guān)行業(yè)不停進(jìn)步的巨大力量。
互動(dòng)百科給出這樣定義開源軟件:“開源軟件,全稱為開放源代碼軟件,就是源代碼開放的軟件,對普通用戶來說,開源軟件大多都是免費(fèi)下載的;對于商業(yè)用戶來說,開源軟件可以減少開發(fā)周期,因?yàn)樵创a開放了,只需要稍做修改就可以嵌入到產(chǎn)品中去,可以降低成本。開源軟件是信息技術(shù)發(fā)展引發(fā)網(wǎng)絡(luò)革命所帶來的面向未來以開放創(chuàng)新、共同創(chuàng)新為特點(diǎn)的、以人為本的創(chuàng)新2.0(面向知識(shí)社會(huì)的下一代創(chuàng)新)模式在軟件行業(yè)的典型體現(xiàn)。”
也許你并不知道,開源軟件現(xiàn)在成為整個(gè)互聯(lián)網(wǎng)時(shí)代的支撐技術(shù),你可能已經(jīng)無法離開由開源軟件構(gòu)建起來的網(wǎng)絡(luò)世界了。下面我們就來看看一些最重要的開源技術(shù)。
1,為互聯(lián)網(wǎng)而生的操作系統(tǒng)linux
Linux是一款免費(fèi)的操作系統(tǒng),誕生于1991年,用戶可以通過網(wǎng)絡(luò)或其他途徑免費(fèi)獲得,并可以任意修改其源代碼。
它能運(yùn)行主要的UNIX工具軟件、應(yīng)用程序和網(wǎng)絡(luò)協(xié)議。它支持32位和64位硬件。Linux繼承了Unix以網(wǎng)絡(luò)為核心的設(shè)計(jì)思想,是一個(gè)性能穩(wěn)定的多用戶網(wǎng)絡(luò)操作系統(tǒng)。這個(gè)系統(tǒng)是由全世界各地的成千上萬的程序員設(shè)計(jì)和實(shí)現(xiàn)的。其目的是建立不受任何商品化軟件的版權(quán)制約的、全世界都能自由使用的Unix兼容產(chǎn)品。
Linux可以說是已經(jīng)無處不在,像Android手機(jī)就是以Linux為基礎(chǔ)開發(fā)的,世界上大多的超級計(jì)算機(jī)也都采用的Linux系統(tǒng),大多數(shù)的數(shù)據(jù)中心使用Linux作為其支撐操作系統(tǒng)。谷歌、百度、淘寶等都通過Linuxt提供了我們每天用的互聯(lián)網(wǎng)服務(wù)。Linux在航空控制系統(tǒng)中也扮演著重要角色。
2,加密互聯(lián)網(wǎng)的安全協(xié)議open SSL
OpenSSL是套開放源代碼的軟件庫包,實(shí)現(xiàn)了SSL與TLS協(xié)議。OpenSSL可以說是一個(gè)基于密碼學(xué)的安全開發(fā)包,囊括了主要的密碼算法、常用的密鑰和證書封裝管理功能以及SSL協(xié)議,并提供了豐富的應(yīng)用程序供測試或其它目的使用。
也可以說OpenSSL是網(wǎng)絡(luò)通信提供安全及數(shù)據(jù)完整性的一種安全協(xié)議,SSL可以在Internet上提供秘密性傳輸,能使用戶/服務(wù)器應(yīng)用之間的通信不被攻擊者竊聽。OpenSSL被網(wǎng)銀、在線支付、電商網(wǎng)站、門戶網(wǎng)站、電子郵件等重要網(wǎng)站廣泛使用。
去年OpenSSL爆出安全漏洞,因?yàn)槠鋺?yīng)用如此之廣,該漏洞爆出讓整個(gè)互聯(lián)網(wǎng)都為之震顫。
3,互聯(lián)網(wǎng)的記憶——MySQL
MySQL是一個(gè)開源的小型的數(shù)據(jù)庫管理系統(tǒng),原開發(fā)者為瑞典的MySQL AB公司,該公司于2008年被Sun公司收購。2009年,甲骨文公司(Oracle)收購Sun公司,MySQL成為Oracle旗下產(chǎn)品。
很多信息都是存在數(shù)據(jù)庫里面的,很多工程師在開發(fā)一些的小型項(xiàng)目時(shí)都會(huì)采用這個(gè)MySQL數(shù)據(jù)庫。MySQL為C、C++、JAVA、PHP等多重編程語言提供了API接口。而且支持windows、Mac、Linux等多種系統(tǒng)。這種廣泛的支持使其得到更多開發(fā)者的青睞,MySQL是開發(fā)者需要掌握的數(shù)據(jù)庫之一。
Mysql最初為小型應(yīng)用而開發(fā),但現(xiàn)在的Mysql已經(jīng)不是一個(gè)小型數(shù)據(jù)庫了。基本上所有的互聯(lián)網(wǎng)公司都會(huì)使用這個(gè)數(shù)據(jù)庫系統(tǒng),一些金融交易也會(huì)采用Mysql作為數(shù)據(jù)庫引擎。Mysql通過相應(yīng)的調(diào)優(yōu)既可以支撐大規(guī)模的訪問,又可以保證數(shù)據(jù)安全性,已經(jīng)成為威脅傳統(tǒng)商業(yè)數(shù)據(jù)庫系統(tǒng)的重要力量。
4,萬能開發(fā)工具Eclipse
Eclipse 是一個(gè)開放源代碼的、基于Java的可擴(kuò)展開發(fā)平臺(tái)。Eclipse最初由OTI和IBM兩家公司的IDE產(chǎn)品開發(fā)組創(chuàng)建,起始于1999年4月。目前由IBM牽頭,圍繞著Eclipse項(xiàng)目已經(jīng)發(fā)展成為了一個(gè)龐大的Eclipse聯(lián)盟,有150多家軟件公司參與到Eclipse項(xiàng)目中,其中包括Borland、Rational Software、Red Hat及Sybase等。
就其本身而言,它只是一個(gè)框架和一組服務(wù),用于通過插件組件構(gòu)建開發(fā)環(huán)境。很多Java編程軟件都是在Eclipse平臺(tái)開發(fā)的,還有包括Oracle在內(nèi)的許多大公司也紛紛加入了該項(xiàng)目,并宣稱Eclipse將來能成為可進(jìn)行任何語言開發(fā)的IDE集大成者,使用者只需下載各種語言的插件即可。
Eclipse并不是一個(gè)直接服務(wù)于消費(fèi)者的產(chǎn)品,它更像一個(gè)工匠手中萬用工具,用Eclipse開發(fā)者可以打造出各種充滿創(chuàng)造性的服務(wù)來滿足最終用戶的需求。
5,互聯(lián)網(wǎng)的門衛(wèi)Apache
Apache HTTP Server(簡稱Apache)是Apache軟件基金會(huì)的一個(gè)開放源碼的網(wǎng)頁服務(wù)器,可以在大多數(shù)計(jì)算機(jī)操作系統(tǒng)中運(yùn)行,由于其多平臺(tái)和安全性被廣泛使用,也是最流行的Web服務(wù)器端軟件之一,市場占有率達(dá)60%左右。它快速、可靠并且可通過簡單的API擴(kuò)展,它可以和各種解釋器配合使用,包括PHP/Perl/Python等。
Apache就像一個(gè)負(fù)責(zé)的門衛(wèi),管理著服務(wù)器數(shù)據(jù)的進(jìn)出。每當(dāng)你在你的地址欄里輸入http://XXX.com的時(shí)候,在遙遠(yuǎn)的遠(yuǎn)端,很有可能正是一臺(tái)跑著Apache的服務(wù)器,將你需要的信息傳輸給瀏覽器。
6,大數(shù)據(jù)的心臟Hadoop
Hadoop 是一個(gè)能夠?qū)Υ罅繑?shù)據(jù)進(jìn)行分布式處理的軟件框架,由Apache基金會(huì)開發(fā)。用戶可以在不了解分布式底層細(xì)節(jié)的情況下,開發(fā)分布式程序。Hadoop 一直幫助解決各種問題,包括超大型數(shù)據(jù)集的排序和大文件的搜索。它還是各種搜索引擎的核心,比如 Amazon 的 A9 和用于查找酒信息的 Able Grape 垂直搜索引擎。阿里巴巴集團(tuán)在商品推薦、用戶行為分析、信用計(jì)算領(lǐng)域也都有hadoop的應(yīng)用。
在“大數(shù)據(jù)”已經(jīng)成為潮流的當(dāng)下,Hadoop已經(jīng)成為最主要的一項(xiàng)技術(shù)。可以毫不夸張的說,沒有Hadoop,就沒有大多數(shù)的大數(shù)據(jù)應(yīng)用。可以說對一個(gè)不知道Hadoop的程序員而言,你已經(jīng)out了。
7,互聯(lián)網(wǎng)的“排版引擎”WebKit
說是瀏覽器內(nèi)核,其實(shí)“排版引擎”更容易理解一些。通過服務(wù)器傳輸給瀏覽器的信息只是一串亂糟糟的文本。要看到我們平時(shí)看到精美的網(wǎng)友,需要瀏覽器內(nèi)核對這些文本進(jìn)行解析,將枯燥的描述“畫”成美麗的瀏覽界面。
WebKit 是一個(gè)開源的瀏覽器引擎,與之相應(yīng)的引擎有Gecko(Mozilla Firefox 等使用的排版引擎)和Trident(也稱為MSHTML,IE 使用的排版引擎)。根據(jù)StatCounter的瀏覽器市場份額調(diào)查,于2012年11月,Webkit市占超過了40%,它已經(jīng)成為擁有最大市場份額的排版引擎,超越了Internet Explorer所使用的Trident及Firefox所使用的Gecko引擎,并且WebKit份額正在逐年增加。
目前幾乎所有網(wǎng)站和網(wǎng)銀已經(jīng)逐漸支持WebKit。WebKit 內(nèi)核在手機(jī)上的應(yīng)用也十分廣泛,例如蘋果的Safari、谷歌的Chrome瀏覽器都是基于這個(gè)框架來開發(fā)的。
——————
很多人可能尚未意識(shí)到,我們使用的電腦中運(yùn)行有開源軟件,手機(jī)中運(yùn)行有開源軟件,家里的電視也運(yùn)行有開源軟件,甚至小小的數(shù)碼產(chǎn)品中也運(yùn)行有開源軟件,尤其是互聯(lián)網(wǎng)服務(wù)器端軟件,幾乎全部是開源軟件。毫不夸張地說,開源軟件已經(jīng)滲透到了我們?nèi)粘I畹姆椒矫婷妗?/p>