** 第一課:計(jì)算機(jī)基礎(chǔ)知識(shí)**
第一章計(jì)算機(jī)的組成
計(jì)算機(jī)是由硬件(Hardwaer)和軟件(Software)來(lái)組成兩大類,他是一臺(tái)可以自由傳輸數(shù)據(jù),儲(chǔ)存數(shù)據(jù),娛樂(lè),工作等等的智能設(shè)備。
第一節(jié)計(jì)算機(jī)硬件
內(nèi)存====用來(lái)存儲(chǔ)臨時(shí)數(shù)據(jù),弱點(diǎn)喜歡松動(dòng)一般電腦黑屏都是他松動(dòng)了,導(dǎo)致電腦不能機(jī) 基本上%80以上的電腦不能開機(jī)都是他出了問(wèn)題,服務(wù)器同樣如此,所以他是罪魁禍?zhǔn)住?br>
聲卡====是用來(lái)傳輸是實(shí)現(xiàn)聲波、數(shù)字信號(hào)相互轉(zhuǎn)換的一種硬件,弱點(diǎn)容易燒,里面的彈片容易變形,最好是不要經(jīng)常拔插。
網(wǎng)卡====用來(lái)接受和發(fā)送網(wǎng)絡(luò)信號(hào),用的是TCP/IP協(xié)議 ,弱點(diǎn)容易被雷擊童鞋們要小心自己的網(wǎng)卡哦。
顯卡====是用來(lái)顯示視頻信號(hào),可用來(lái)娛樂(lè),看電影用,弱點(diǎn)玩游戲的時(shí)候或看4K視頻的候,GPU溫度過(guò)高導(dǎo)致風(fēng)扇轉(zhuǎn)速過(guò)快很吵,所以風(fēng)扇容易壞,壞了GPU就容易燒,就算不燒GPU自己也會(huì)降頻,降頻的時(shí)候就出線卡屏的現(xiàn)象,有些童鞋顯卡很好的,要注意下自己的顯卡哦。
主板====是用來(lái)協(xié)調(diào)各個(gè)硬件設(shè)備傳輸數(shù)據(jù),他上面的南橋,和北橋,是他的核心,弱點(diǎn)容易被雷擊,靜電脈沖,所以請(qǐng)童鞋們買防靜電主板比較好哦。
中央處理器====計(jì)算機(jī)的核心,計(jì)算機(jī)心臟,整臺(tái)機(jī)器的速度快慢都由他來(lái)決定,弱點(diǎn)運(yùn)行的時(shí)候溫度過(guò)高,如果沒(méi)有個(gè)好的風(fēng)扇來(lái)散熱,容易燒點(diǎn),童鞋們要好好注意哦。
電源====用來(lái)給所有設(shè)備來(lái)供電, 弱點(diǎn)容易被雷擊,時(shí)間永久以后聲音大。
輸入設(shè)備====鍵盤,鼠標(biāo),掃描儀,光筆,手寫板,話筒,等等。
輸出設(shè)備====顯示器,打印機(jī),繪圖儀,投影儀,等等。
存儲(chǔ)設(shè)備====硬盤,U盤,光盤,磁帶,軟盤,固態(tài)硬盤,等等
第二節(jié)計(jì)算機(jī)軟件
系統(tǒng)軟件====系統(tǒng)軟件分很多類如:Windows,linux,Uinx,Novell Netware,MAC OSX,Dos,GUN.
服務(wù)程序====服務(wù)程序是指隨著計(jì)算機(jī)一起啟動(dòng)的后臺(tái)程序如,shell,系統(tǒng)調(diào)用,內(nèi)核,等等。
語(yǔ)言系統(tǒng)====機(jī)器語(yǔ)言,匯編語(yǔ)言,C語(yǔ)言,C++,C#,Java,VB,Python,Go語(yǔ)言等等。
數(shù)據(jù)庫(kù)====Oracle,mysql,DB2,等等大型數(shù)據(jù)庫(kù)。
系統(tǒng)軟件====就是系統(tǒng)自帶的軟件如:記事本等等,就不羅嗦了。
應(yīng)用軟件====就是我們常用的QQ,辦公軟件等等。。。。。。。
第二章計(jì)算機(jī)歷史 計(jì)算機(jī)之父
馮·諾依曼 (John von Neumann,1903~1957),20世紀(jì)最重要的數(shù)學(xué)家之一,在現(xiàn)代計(jì)算機(jī)、博弈論、核武器和生化武器等諸多領(lǐng)域內(nèi)有杰出建樹的最偉大的科學(xué)全才之一,被后人稱為“計(jì)算機(jī)之父”和“博弈論之父(涯杰)”。[2] 原籍匈牙利。布達(dá)佩斯大學(xué)數(shù)學(xué)博士。先后執(zhí)教于柏林大學(xué)和漢堡大學(xué)。1930年前往美國(guó),后入美國(guó)籍。歷任普林斯頓大學(xué)、普林斯頓高級(jí)研究所教授,美國(guó)原子能委員會(huì)會(huì)員。美國(guó)全國(guó)科學(xué)院院士。早期以算子理論、共振論、量子理論、集合論等方面的研究聞名,開創(chuàng)了馮·諾依曼代數(shù)。第二次世界大戰(zhàn)期間為第一顆原子彈的研制作出了貢獻(xiàn)。為研制電子數(shù)字計(jì)算機(jī)提供了基礎(chǔ)性的方案。1944年與摩根斯特恩(Oskar Morgenstern)合著《博弈論與經(jīng)濟(jì)行為》,是博弈論學(xué)科的奠基性著作。晚年,研究自動(dòng)機(jī)理論,著有對(duì)人腦和計(jì)算機(jī)系統(tǒng)進(jìn)行精確分析的著作《計(jì)算機(jī)與人腦》
美籍匈牙利數(shù)學(xué)家馮·諾依曼于1946年提出存儲(chǔ)程序原理,把程序本身當(dāng)作數(shù)據(jù)來(lái)對(duì)待,程序和該程序處理的數(shù)據(jù)用同樣的方式儲(chǔ)存。 馮·諾依曼體系結(jié)構(gòu)馮·諾依曼理論的要點(diǎn)是:數(shù)字計(jì)算機(jī)的數(shù)制采用二進(jìn)制;計(jì)算機(jī)應(yīng)該按照程序順序執(zhí)行。人們把馮·諾依曼的這個(gè)理論稱為馮·諾依曼體系結(jié)構(gòu)。
發(fā)展歷史
第一代計(jì)算機(jī)(1946-1957) 電子管時(shí)代 第二代計(jì)算機(jī)(1958-1964) 晶體管時(shí)代 第三代計(jì)算機(jī)(1965-1970) 集成電路時(shí)代 第四代計(jì)算機(jī)(1971年以后) 大規(guī)模集成電路時(shí)代 第五代計(jì)算機(jī)(智能計(jì)算機(jī) ) 人腦神經(jīng)元、突觸功能以及其他腦功能的微芯片
第一代計(jì)算機(jī)是50年代計(jì)算機(jī)研制的第一個(gè)高潮時(shí)期,那時(shí)的計(jì)算機(jī)中的主要元器件都是用電子管制成的,后人將用電子管制作的計(jì)算機(jī)稱為第一代計(jì)算機(jī)。這個(gè)時(shí)期的計(jì)算機(jī)發(fā)展有三個(gè)特點(diǎn):即由軍用擴(kuò)展至民用,由實(shí)驗(yàn)室開發(fā)轉(zhuǎn)入工業(yè)化生產(chǎn),同時(shí)由科學(xué)計(jì)算擴(kuò)展到數(shù)據(jù)和事務(wù)處理。 以“埃尼亞克”為代表,一批計(jì)算機(jī)迅速推向市場(chǎng),形成了第一代計(jì)算機(jī)族。在這一時(shí)期,美籍匈牙利科學(xué)家馮·諾伊曼提出了“程序存儲(chǔ)”的概念,其基本思想是把一些常用的基本操作都制成電路,每一個(gè)這樣的操作都用一個(gè)數(shù)代表,于是這個(gè)數(shù)就可以指令計(jì)算機(jī)執(zhí)行某項(xiàng)操作。程序員根據(jù)解題的要求,用這些數(shù)來(lái)編制程序,并把程序同數(shù)據(jù)一起放在計(jì)算機(jī)的內(nèi)存儲(chǔ)器里。當(dāng)計(jì)算機(jī)運(yùn)行時(shí),它可以依次以很高的速度從存儲(chǔ)器中取出程序里的一條條指令,逐一予以執(zhí)行,以完成全部計(jì)算的各項(xiàng)操作,它自動(dòng)從一個(gè)程序指令進(jìn)到下一個(gè)程序指令,作業(yè)順序通過(guò)“條件轉(zhuǎn)移”指令自動(dòng)完成?!俺绦虼鎯?chǔ)”使全部計(jì)算成為真正的自動(dòng)過(guò)程,它的出現(xiàn)被譽(yù)為電子計(jì)算機(jī)史上的里程碑,而這種類型的計(jì)算機(jī)被人們稱為“馮·諾伊曼機(jī)”
第二代計(jì)算機(jī)晶體管計(jì)算機(jī)(1957-1964)20世紀(jì)50年代中期,晶體管的出現(xiàn)使計(jì)算機(jī)生產(chǎn)技術(shù)得到了根本性的發(fā)展,由晶體管代替電子管作為計(jì)算機(jī)的基礎(chǔ)器件,用磁芯或磁鼓作存儲(chǔ)器,在整體性能上,比第一代計(jì)算機(jī)有了很大的提高。同時(shí)程序語(yǔ)言也相應(yīng)的出現(xiàn)了,如Fortran,Cobol,Algo160等計(jì)算機(jī)高級(jí)語(yǔ)言。晶體管計(jì)算機(jī)被用于科學(xué)計(jì)算的同時(shí),也開始在數(shù)據(jù)處理、過(guò)程控制方面得到應(yīng)用
第三代計(jì)算機(jī)中小規(guī)模集成電路計(jì)算機(jī)(1964-1971)20世紀(jì)60年代中期, 中小規(guī)模集成電路計(jì)算機(jī) 中小規(guī)模集成電路計(jì)算機(jī)(2張) 隨著半導(dǎo)體工藝的發(fā)展,成功制造了集成電路。中小規(guī)模集成電路成為計(jì)算機(jī)的主要部件,主存儲(chǔ)器也漸漸過(guò)渡到半導(dǎo)體存儲(chǔ)器,使計(jì)算機(jī)的體積更小,大大降低了計(jì)算機(jī)計(jì)算時(shí)的功耗,由于減少了焊點(diǎn)和接插件,進(jìn)一步提高了計(jì)算機(jī)的可靠性。在軟件方面,有了標(biāo)準(zhǔn)化的程序設(shè)計(jì)語(yǔ)言和人機(jī)會(huì)話式的Basic語(yǔ)言,其應(yīng)用領(lǐng)域也進(jìn)一步擴(kuò)大。
第四代計(jì)算機(jī)大規(guī)模和超大規(guī)模集成電路計(jì)算機(jī)(1971-2016)隨著大規(guī)模集成電路的成功制作并用于計(jì)算機(jī)硬件生產(chǎn)過(guò)程,計(jì)算機(jī)的體積進(jìn)一步縮小,性能進(jìn)一步提高。集成更高的大容量半導(dǎo)體存儲(chǔ)器作為內(nèi)存儲(chǔ)器,發(fā)展了并行技術(shù)和多機(jī)系統(tǒng),出現(xiàn)了精簡(jiǎn)指令集計(jì)算機(jī)(RISC),軟件系統(tǒng)工程化、理論化,程序設(shè)計(jì)自動(dòng)化。微型計(jì)算機(jī)在社會(huì)上的應(yīng)用范圍進(jìn)一步擴(kuò)大,幾乎所有領(lǐng)域都能看到計(jì)算機(jī)的“身影”
第五代計(jì)算機(jī)IBM發(fā)表聲明稱,該公司已經(jīng)研制出一款能夠模擬人腦神經(jīng)元、突觸功能以及其他腦功能的微芯片,從而完成計(jì)算功能,這是模擬人腦芯片領(lǐng)域所取得的又一大進(jìn)展。IBM表示,這款微芯片擅長(zhǎng)完成模式識(shí)別和物體分類等繁瑣任務(wù),而且功耗還遠(yuǎn)低于傳統(tǒng)硬件。
計(jì)算機(jī)類型
計(jì)算機(jī)類型
具有很強(qiáng)的計(jì)算和處理數(shù)據(jù)的能力,主要特點(diǎn)表現(xiàn)為高速度和大容量,配有多種外部和外圍設(shè)備及豐富的、高功能的軟件系統(tǒng),“天河二號(hào)”是由國(guó)防科學(xué)技術(shù)大學(xué)研制的超級(jí)計(jì)算機(jī)系統(tǒng),以峰值計(jì)算速度每秒5.49億億次、持續(xù)計(jì)算速度每秒3.39億億次雙精度浮點(diǎn)運(yùn)算的優(yōu)異性能位居榜首,成為全球最快超級(jí)計(jì)算機(jī)
超級(jí)計(jì)算機(jī)(chao ji ji suan ji):能夠執(zhí)行一般個(gè)人電腦無(wú)法處理的大資料量與高速運(yùn)算的電腦。其基本組成組件與個(gè)人電腦的概念無(wú)太大差異,但規(guī)格與性能則強(qiáng)大許多,是一種超大型電子計(jì)算機(jī)。具有很強(qiáng)的計(jì)算和處理數(shù)據(jù)的能力,主要特點(diǎn)表現(xiàn)為高速度和大容量,配有多種外部和外圍設(shè)備及豐富的、高功能的軟件系統(tǒng)?,F(xiàn)有的超級(jí)計(jì)算機(jī)運(yùn)算速度大都可以達(dá)到每秒一太(Trillion,萬(wàn)億)次以上。
小型計(jì)算機(jī)是相對(duì)于大型計(jì)算機(jī)而言,小型計(jì)算機(jī)的軟件、硬件系統(tǒng)規(guī)模比較小,但價(jià)格低、可靠性高、便于維護(hù)和使用。小型計(jì)算機(jī)是屬于硬件系統(tǒng)比較小,但功能卻不少的微型計(jì)算機(jī) 可以使成功人士方便攜帶和使用。
微型計(jì)算機(jī)的特點(diǎn)是體積小、靈活性大、價(jià)格便宜、使用方便。把微型計(jì)算機(jī)集成在一個(gè)芯片上即構(gòu)成單片微型計(jì)算機(jī)(Single Chip Microcomputer)。由微型計(jì)算機(jī)配以相應(yīng)的外圍設(shè)備(如打印機(jī))及其他專用電路、電源、面板、機(jī)架以及足夠的軟件構(gòu)成的系統(tǒng)叫做微型計(jì)算機(jī)系統(tǒng)(Microcomputer System)(即通常說(shuō)的電腦)。
服務(wù)器類型
塔式服務(wù)器(Tower Server)應(yīng)該是見(jiàn)得最多也最容易理解的一種服務(wù)器結(jié)構(gòu)類型,因?yàn)樗耐庑我约敖Y(jié)構(gòu)都跟立式PC差不多,當(dāng)然,由于服務(wù)器的主板擴(kuò)展性較強(qiáng)、插槽也多出一堆,所以個(gè)頭比普通主板大一些,因此塔式服務(wù)器的主機(jī)機(jī)箱也比標(biāo)準(zhǔn)的ATX機(jī)箱要大,一般都會(huì)預(yù)留足夠的內(nèi)部空間以便日后進(jìn)行硬盤和電源的冗余擴(kuò)展。
機(jī)架式服務(wù)器的外形看來(lái)不像計(jì)算機(jī),而像交換機(jī),有1U(1U=1.75英寸)、2U、4U等規(guī)格。機(jī)架式服務(wù)器安裝在標(biāo)準(zhǔn)的19英寸機(jī)柜里面。這種結(jié)構(gòu)的多為功能型服務(wù)器
刀片服務(wù)器是指在標(biāo)準(zhǔn)高度的機(jī)架式機(jī)箱內(nèi)可插裝多個(gè)卡式的服務(wù)器單元,是一種實(shí)現(xiàn)HAHD(High Availability High Density,高可用高密度)的低成本服務(wù)器平臺(tái),為特殊應(yīng)用行業(yè)和高密度計(jì)算環(huán)境專門設(shè)計(jì)。刀片服務(wù)器就像“刀片”一樣,每一塊“刀片”實(shí)際上就是一塊系統(tǒng)主板。
服務(wù)器功能與應(yīng)用
Web服務(wù)器一般指網(wǎng)站服務(wù)器,是指駐留于因特網(wǎng)上某種類型計(jì)算機(jī)的程序,可以向?yàn)g覽器等Web客戶端提供文檔,[1] 也可以放置網(wǎng)站文件,讓全世界瀏覽;可以放置數(shù)據(jù)文件,讓全世界下載。目前最主流的三個(gè)Web服務(wù)器是Apache Nginx IIS
數(shù)據(jù)庫(kù)服務(wù)器由運(yùn)行在局域網(wǎng)中的一臺(tái)/多臺(tái)計(jì)算機(jī)和數(shù)據(jù)庫(kù)管理系統(tǒng)軟件共同構(gòu)成,數(shù)據(jù)庫(kù)服務(wù)器為客戶應(yīng)用程序提供數(shù)據(jù)服務(wù)。
郵件服務(wù)器是一種用來(lái)負(fù)責(zé)電子郵件收發(fā)管理的設(shè)備。它比網(wǎng)絡(luò)上的免費(fèi)郵箱更安全和高效,因此一直是企業(yè)公司的必備設(shè)備。
文件服務(wù)器是一種器件,它的功能就是向服務(wù)器提供文件。它加強(qiáng)了存儲(chǔ)器的功能,簡(jiǎn)化了網(wǎng)絡(luò)數(shù)據(jù)的管理。它一則改善了系統(tǒng)的性能,提高了數(shù)據(jù)的可用性,二則減少了管理的復(fù)雜程度,降低了運(yùn)營(yíng)費(fèi)用。
中間件是一種獨(dú)立的系統(tǒng)軟件或服務(wù)程序,分布式應(yīng)用軟件借助這種軟件在不同的技術(shù)之間共享資源。中間件位于客戶機(jī)/ 服務(wù)器的操作系統(tǒng)之上,管理計(jì)算機(jī)資源和網(wǎng)絡(luò)通訊。是連接兩個(gè)獨(dú)立應(yīng)用程序或獨(dú)立系統(tǒng)的軟件。相連接的系統(tǒng),即使它們具有不同的接口,但通過(guò)中間件相互之間仍能交換信息。執(zhí)行中間件的一個(gè)關(guān)鍵途徑是信息傳遞。通過(guò)中間件,應(yīng)用程序可以工作于多平臺(tái)或OS環(huán)境
日志服務(wù)器是專門供一些服務(wù)器,設(shè)備在運(yùn)行過(guò)程中產(chǎn)生的使用記錄及硬件狀態(tài)的一個(gè)集中反應(yīng)的數(shù)據(jù)存儲(chǔ)的地方就是日志服務(wù)器,用戶可以根據(jù)需要做數(shù)據(jù)的查詢統(tǒng)計(jì)等工作,及時(shí)了解各部分設(shè)備的運(yùn)行狀態(tài)。可以是通用的,也可以是專用的。
監(jiān)控服務(wù)器監(jiān)控就是指將遠(yuǎn)程服務(wù)器運(yùn)行數(shù)據(jù)通過(guò)各種方式記錄下來(lái),并在需要時(shí)可以隨時(shí)調(diào)用監(jiān)控記錄進(jìn)行查看。
程序版本控制服務(wù)器也就是更新服務(wù)器,用來(lái)遠(yuǎn)程更新服務(wù)和版本軟件控制服務(wù)。
虛擬服務(wù)器也稱為VPS(Virtual Private Service,虛擬專用業(yè)務(wù))主機(jī),簡(jiǎn)稱為虛擬主機(jī)。
打印服務(wù)器提供簡(jiǎn)單而高效的網(wǎng)絡(luò)打印解決方案。一端連接打印機(jī),一端連接網(wǎng)絡(luò)(交換機(jī)),打印服務(wù)器在網(wǎng)絡(luò)中的任何位置,都能夠很容易地為局域網(wǎng)內(nèi)所有用戶提供打印。連接局域網(wǎng)內(nèi)的電腦無(wú)數(shù)量限制,極大地提高了打印機(jī)利用率,可以這樣認(rèn)為,打印服務(wù)器為每一個(gè)連接局域網(wǎng)內(nèi)的電腦提供了一臺(tái)打印機(jī),實(shí)現(xiàn)了打印機(jī)共享功能 。
域控服務(wù)器是用語(yǔ)言軟件集中管理的器件,能安全集中管理域中賬戶密碼、管理策略等構(gòu)成數(shù)據(jù)庫(kù),統(tǒng)一安全策略。
多媒體服務(wù)器:用戶將數(shù)據(jù)轉(zhuǎn)換成信息,并把信息送到需要者手中的裝置。具有捕獲、處理、管理和傳遞多媒體信息:文本、圖像、音頻和視頻的功能。多媒體服務(wù)器在未來(lái)的各個(gè)領(lǐng)域中將會(huì)發(fā)揮越來(lái)越多的作用,而隨著它的廣泛的被應(yīng)用,也會(huì)出現(xiàn)相應(yīng)的信息管理問(wèn)題。
通信服務(wù)器(Communication Server),是一個(gè)專用系統(tǒng),為網(wǎng)絡(luò)上需要通過(guò)遠(yuǎn)程通信鏈路傳送文件或訪問(wèn)遠(yuǎn)地系統(tǒng)或網(wǎng)絡(luò)上信息的用戶提供通信服務(wù)。通信服務(wù)器根據(jù)軟件和硬件能力為一個(gè)或同時(shí)為多個(gè)用戶提供通信信道。
ERP服務(wù)器,用來(lái)統(tǒng)一管理金融,人事,財(cái)務(wù)等等一些服務(wù)。
計(jì)算機(jī)網(wǎng)絡(luò)存儲(chǔ)
DAS存儲(chǔ)
直連式存儲(chǔ)(Direct-Attached Storage,直連式存儲(chǔ)與服務(wù)器主機(jī)之間的連接通道通常采用SCSI連接,隨著服務(wù)器CPU的處理能力越來(lái)越強(qiáng),存儲(chǔ)硬盤空間越來(lái)越大,陣列的硬盤數(shù)量越來(lái)越多,SCSI通道將會(huì)成為IO瓶頸;服務(wù)器主機(jī)SCSI ID資源有限,能夠建立的SCSI通道連接有限。
NAS存儲(chǔ) NAS(Network Attached Storage)網(wǎng)絡(luò)存儲(chǔ)基于標(biāo)準(zhǔn)網(wǎng)絡(luò)協(xié)議實(shí)現(xiàn)數(shù)據(jù)傳輸,為網(wǎng)絡(luò)中的Windows / Linux / Mac OS 等各種不同操作系統(tǒng)的計(jì)算機(jī)提供文件共享和數(shù)據(jù)備份。
SAN存儲(chǔ)
存儲(chǔ)區(qū)域網(wǎng)絡(luò)(Storage Area Network,簡(jiǎn)稱SAN)采用網(wǎng)狀通道(Fibre Channel ,簡(jiǎn)稱FC,區(qū)別與Fiber Channel光纖通道)技術(shù),通過(guò)FC交換機(jī)連接存儲(chǔ)陣列和服務(wù)器主機(jī),建立專用于數(shù)據(jù)存儲(chǔ)的區(qū)域網(wǎng)絡(luò)。SAN經(jīng)過(guò)十多年歷史的發(fā)展,已經(jīng)相當(dāng)成熟,成為業(yè)界的事實(shí)標(biāo)準(zhǔn)(但各個(gè)廠商的光纖交換技術(shù)不完全相同,其服務(wù)器和SAN存儲(chǔ)有兼容性的要求)。
操作系統(tǒng)
操作系統(tǒng)是用戶和計(jì)算機(jī)的接口,同時(shí)也是計(jì)算機(jī)硬件和其他軟件的接口。操作系統(tǒng)的功能包括管理計(jì)算機(jī)系統(tǒng)的硬件、軟件及數(shù)據(jù)資源,控制程序運(yùn)行,改善人機(jī)界面,為其它應(yīng)用軟件提供支持,讓計(jì)算機(jī)系統(tǒng)所有資源最大限度地發(fā)揮作用,提供各種形式的用戶界面,使用戶有一個(gè)好的工作環(huán)境,為其它軟件的開發(fā)提供必要的服務(wù)和相應(yīng)的接口等。實(shí)際上,用戶是不用接觸操作系統(tǒng)的,操作系統(tǒng)管理著計(jì)算機(jī)硬件資源,同時(shí)按照應(yīng)用程序的資源請(qǐng)求,分配資源,如:劃分CPU時(shí)間,內(nèi)存空間的開辟,調(diào)用打印機(jī)等。
ABI開發(fā)接口標(biāo)準(zhǔn)
ABI不同于API ,API定義了源代碼和庫(kù)之間的接口,因此同樣的代碼可以在支持這個(gè)API的任何系統(tǒng)中編譯 ,然而ABI允許編譯好的目標(biāo)代碼在使用兼容ABI的系統(tǒng)中無(wú)需改動(dòng)就能運(yùn)行。 ABI掩蓋了各種細(xì)節(jié),例如:調(diào)用約定控制著函數(shù)的參數(shù)如何傳送以及如何接受返回值;系統(tǒng)調(diào)用的編碼和一個(gè)應(yīng)用如何向操作系統(tǒng)進(jìn)行系統(tǒng)調(diào)用;以及在一個(gè)完整的操作系統(tǒng)ABI中,對(duì)象文件的二進(jìn)制格式、程序庫(kù)等等。一個(gè)完整的ABI,像 Intel二進(jìn)制兼容標(biāo)準(zhǔn) (iBCS) ,允許支持它的操作系統(tǒng)上的程序不經(jīng)修改在其他支持此ABI的操作系統(tǒng)上運(yùn)行。其他的 ABI 標(biāo)準(zhǔn)化細(xì)節(jié)包括C++ name decoration和同一個(gè)平臺(tái)上的編譯器之間的調(diào)用約定,但是不包括跨平臺(tái)的兼容性。在Unix的操作系統(tǒng)中,存在很多運(yùn)行在同一件平臺(tái)上互相相關(guān)但是不兼容的操作系統(tǒng)(尤其是80386兼容系統(tǒng))。有一些努力嘗試標(biāo)準(zhǔn)化A I,以減少銷售商將程序移植到其他系統(tǒng)時(shí)所需的工作。然而,直到現(xiàn)在還沒(méi)有很成功的例子,雖然LSB正在為L(zhǎng)inux做這方面的努力
編程語(yǔ)言
編程語(yǔ)言(programming language),是用來(lái)定義計(jì)算機(jī)程序的形式語(yǔ)言。它是一種被標(biāo)準(zhǔn)化的交流技巧,用來(lái)向計(jì)算機(jī)發(fā)出指令。一種計(jì)算機(jī)語(yǔ)言讓程序員能夠準(zhǔn)確地定義計(jì)算機(jī)所需要使用的數(shù)據(jù),并精確地定義在不同情況下所應(yīng)當(dāng)采取的行動(dòng)
低級(jí)語(yǔ)言:機(jī)器語(yǔ)言(machine language)是一種指令集的體系。這種指令集,稱機(jī)器碼(machine code),是電腦的CPU可直接解讀的數(shù)據(jù)。
中級(jí)語(yǔ)言:匯編語(yǔ)言,C語(yǔ)言是一門通用計(jì)算機(jī)編程語(yǔ)言,應(yīng)用廣泛。C語(yǔ)言的設(shè)計(jì)目標(biāo)是提供一種能以簡(jiǎn)易的方式編譯、處理低級(jí)存儲(chǔ)器、產(chǎn)生少量的機(jī)器碼以及不需要任何運(yùn)行環(huán)境支持便能運(yùn)行的編程語(yǔ)言。
高級(jí)語(yǔ)言:高級(jí)語(yǔ)言(High-level programming language)相對(duì)于機(jī)器語(yǔ)言(machine language,是一種指令集的體系。這種指令集,稱機(jī)器碼(machine code),是電腦的CPU可直接解讀的數(shù)據(jù))而言。是高度封裝了的編程語(yǔ)言,與低級(jí)語(yǔ)言相對(duì)。它是以人類的日常語(yǔ)言為基礎(chǔ)的一種編程語(yǔ)言,使用一般人易于接受的文字來(lái)表示(例如漢字、不規(guī)則英文或其他外語(yǔ)),從而使程序編寫員編寫更容易,亦有較高的可讀性,以方便對(duì)電腦認(rèn)知較淺的人亦可以大概明白其內(nèi)容。由于早期電腦業(yè)的發(fā)展主要在美國(guó),因此一般的高級(jí)語(yǔ)言都是以英語(yǔ)為藍(lán)本。在1980年代,當(dāng)東亞地區(qū)開始使用電腦時(shí),在日本、臺(tái)灣及中國(guó)大陸都曾嘗試開發(fā)用各自地方語(yǔ)言編寫的高級(jí)語(yǔ)言,當(dāng)中主要都是改編BASIC或?qū)S糜跀?shù)據(jù)庫(kù)數(shù)據(jù)訪問(wèn)的語(yǔ)言,但是隨著編程者的外語(yǔ)能力提升,現(xiàn)時(shí)的有關(guān)開發(fā)很少。
UNIX
UNIX 是一個(gè)強(qiáng)大的多用戶、多任務(wù)操作系統(tǒng),支持多種處理器架構(gòu),按照操作系統(tǒng)的分類,屬于分時(shí)操作系統(tǒng)。UNIX 最早由Ken Thompson和Dennis Ritchie于1969年在美國(guó)AT&T的貝爾實(shí)驗(yàn)室開發(fā)。類Unix(Unix-like)操作系統(tǒng)指各種傳統(tǒng)的Unix以及各種與傳統(tǒng)Unix類似的系統(tǒng)。它們雖然有的是自由軟件,有的是商業(yè)軟件,但都相當(dāng)程度地繼承了原始UNIX的特性,有許多相似處,并且都在一定程度上遵守POSIX規(guī)范。類Unix系統(tǒng)可在非常多的處理器架構(gòu)下運(yùn)行,在服務(wù)器系統(tǒng)上有很高的使用率,例如大專院?;蚬こ虘?yīng)用的工作站
linux
基于Linux的操作系統(tǒng)是20世紀(jì)1991年推出的一個(gè)多用戶、多任務(wù)的操作系統(tǒng)。它與UNIX完全兼容。Linux最初是由芬蘭赫爾辛基大學(xué)計(jì)算機(jī)系學(xué)生Linus Torvalds在基于UNIX的基礎(chǔ)上開發(fā)的一個(gè)操作系統(tǒng)的內(nèi)核程序,Linux的設(shè)計(jì)是為了在Intel微處理器上更有效的運(yùn)用。其后在理查德·斯托曼的建議下以GNU通用公共許可證發(fā)布,成為自由軟件Unix變種。它的最大的特點(diǎn)在于他是一個(gè)源代碼公開的自由及開放源碼的操作系統(tǒng),其內(nèi)核源代碼可以自由傳播。
Mac OS X
Mac OS是一套運(yùn)行于蘋果Macintosh系列電腦上的操作系統(tǒng)。Mac OS是首個(gè)在商用領(lǐng)域成功的圖形用戶界面。Macintosh組包括比爾·阿特金森(Bill Atkinson)、杰夫·拉斯金(Jef Raskin)和安迪·赫茨菲爾德(Andy Hertzfeld)。Mac OS X 于 2001年 首次在商場(chǎng)上推出。它包含兩個(gè)主要的部分:Darwin,是以 BSD 原始代碼和 Mach 微核心 為基礎(chǔ),類似 Unix 的開放原始碼環(huán)境。
Windows
Windows是由微軟公司成功開發(fā)的操作系統(tǒng).Windows是一個(gè)多任務(wù)的操作系統(tǒng),他采用圖形窗口界面,用戶對(duì)計(jì)算機(jī)的各種復(fù)雜操作只需通過(guò)點(diǎn)擊鼠標(biāo)就可以實(shí)現(xiàn)
iOS
OS操作系統(tǒng)是由蘋果公司開發(fā)的手持設(shè)備操作系統(tǒng)。iOS與蘋果的Mac OS X操作系統(tǒng)一樣,它也是以Darwin為基礎(chǔ)的,因此同樣屬于類Unix的商業(yè)操作系統(tǒng)。原本這個(gè)系統(tǒng)名為iPhone OS,直到2010年6月7日WWDC大會(huì)上宣布改名為iOS。截止至2011年11月,根據(jù)Canalys的數(shù)據(jù)顯示,iOS已經(jīng)占據(jù)了全球智能手機(jī)系統(tǒng)市場(chǎng)份額的30%,在美國(guó)的市場(chǎng)占有率為43%。
Android
Android是一種以Linux為基礎(chǔ)的開放源代碼操作系統(tǒng),主要使用于便攜設(shè)備。[8] Android操作系統(tǒng)最初由Andy Rubin開發(fā),最初主要支持手機(jī)。2005年由Google收購(gòu)注資,并組建開放手機(jī)聯(lián)盟開發(fā)改良,逐漸擴(kuò)展到平板電腦及其他領(lǐng)域上。2011年第一季度,Android在全球的市場(chǎng)份額首次超過(guò)塞班系統(tǒng),躍居全球第一。 2012年11月數(shù)據(jù)顯示,Android占據(jù)全球智能手機(jī)操作系統(tǒng)市場(chǎng)76%的份額,中國(guó)市場(chǎng)占有率為90%。
WP
Windows Phone(簡(jiǎn)稱:WP)是微軟發(fā)布的一款手機(jī)操作系統(tǒng),它將微軟旗下的Xbox Live游戲、Xbox Music音樂(lè)與獨(dú)特的視頻體驗(yàn)集成至手機(jī)中。微軟公司于2010年10月11日晚上9點(diǎn)30分正式發(fā)布了智能手機(jī)操作,系統(tǒng)Windows Phone,并將其使用接口稱為“Modern”接口。2011年2月,“諾基亞”與微軟達(dá)成全球戰(zhàn)略同盟并深度合作共同研發(fā)。2011年9月27日,微軟發(fā)布Windows Phone 7.5。2012年6月21日,微軟正式發(fā)布Windows Phone 8,采用和Windows 8相同的Windows NT內(nèi)核,同時(shí)也針對(duì)市場(chǎng)的Windows Phone 7.5發(fā)布Windows Phone 7.8。2014年4月2日,微軟在舊金山召開Build2014開發(fā)者大會(huì)。大會(huì)上微軟推出Windows Phone 8.1更新,2014年8月4日晚,微軟正式向WP開發(fā)者推送了WP8.1 GDR1預(yù)覽版,即WP8.1 Update。
Chrome OS
Chrome OS是由谷歌開發(fā)的一款基于Linux的操作系統(tǒng),發(fā)展出與互聯(lián)網(wǎng)緊密結(jié)合的云操作系統(tǒng),工作時(shí)運(yùn)行Web應(yīng)用程序。谷歌在2009年7月7日發(fā)布該操作系統(tǒng),并在2009年11月19日以Chromium OS之名推出相應(yīng)的開源項(xiàng)目,并將Chromium OS代碼開源。[10] Chrome OS同時(shí)支持Intel x86以及ARM處理器,軟件結(jié)構(gòu)極其簡(jiǎn)單,可以理解為在Linux的內(nèi)核上運(yùn)行一個(gè)使用新的窗口系統(tǒng)的Chrome瀏覽器。對(duì)于開發(fā)人員來(lái)說(shuō),web就是平臺(tái),所有現(xiàn)有的web應(yīng)用可以完美的在Chrome OS中運(yùn)行,開發(fā)者也可以用不同的開發(fā)語(yǔ)言為其開發(fā)新的web應(yīng)用。
開源協(xié)議
BSD
BSD許可證原先是用在加州大學(xué)柏克利分校發(fā)表的各個(gè)4.4BSD/4.4BSD-Lite版本上面(BSD是Berkly Software Distribution的簡(jiǎn)寫)的,后來(lái)也就逐漸沿用下來(lái)。1979年加州大學(xué)伯克利分校發(fā)布了BSD Unix,被稱為開放源代碼的先驅(qū),BSD許可證就是隨著BSD Unix發(fā)展起來(lái)的。BSD許可證被Apache和BSD操作系統(tǒng)等開源軟件所采納,相較于GPL許可證和MPL許可證的嚴(yán)格性,BSD許可證就寬松許多了,一樣是只需要附上許可證的原文,不過(guò)比較有趣的是,它還要求所有進(jìn)一步開發(fā)者將自己的版權(quán)資料放上去,所以拿到以BSD許可證發(fā)行的軟件可能會(huì)遇到一個(gè)小狀況,就是這些版權(quán)資料許可證占的空間比程序還大。
QPL
QPL是The Qt Public License的簡(jiǎn)稱,是挪威一家機(jī)構(gòu)創(chuàng)設(shè)的。QPL許可證的基本要求是獲得源代碼、修改源代碼,并可將修改從原始代碼中分離出來(lái);修改可以按照作者的意愿被組合到新版本中;二進(jìn)制代碼可以和原始代碼同名,這一點(diǎn)對(duì)于動(dòng)態(tài)連接庫(kù)來(lái)說(shuō)尤其重要;任何人都可以修正錯(cuò)誤,這對(duì)于系統(tǒng)的發(fā)布者來(lái)說(shuō)很關(guān)鍵;修改過(guò)的軟件可以按照滿足QPL許可證基本要求的任何開源軟件許可證進(jìn)行發(fā)布。
QNCL
QNCL許可證是Qt Non Commercial License的簡(jiǎn)稱,是QPL許可證的“兄弟版”,就像GPL許可證與LGPL許可證的關(guān)系一樣,QNCL許可證比QPL許可證更嚴(yán)格一些。
Jab
Jabber許可證的全稱是Jabber Open Source License,由美國(guó)Jabber.Com, Inc.公司提供。Jabber許可證在源代碼的復(fù)制、發(fā)行規(guī)定方面基本上和其他許可證沒(méi)有什么特別,但有一些細(xì)節(jié)規(guī)定值得借鑒:
◆ 可以將通過(guò)該許可證獲得的源代碼及修改過(guò)的源代碼與其他類型的不受該許可證約束的代碼結(jié)合,以新產(chǎn)品的形式發(fā)布,只要其中經(jīng)該許可證獲得的源代碼及修改過(guò)的源代碼能以與該許可證的要求類似的、符合OSI認(rèn)證的其他開源軟件許可證的方式發(fā)布。
◆ 明確了需將源代碼置于公眾可以得到的狀態(tài)的時(shí)間至少應(yīng)為12個(gè)月。
◆ 第三方對(duì)法定權(quán)利的聲明。假如使用者發(fā)現(xiàn)通過(guò)本許可證獲得的源代碼及應(yīng)用程序接口中有一方擁有的知識(shí)產(chǎn)權(quán),應(yīng)單獨(dú)在源碼的發(fā)布時(shí)冠以“LEGAL”為抬頭的聲明,寫明知識(shí)產(chǎn)權(quán)權(quán)利要求的細(xì)節(jié),提請(qǐng)?jiān)创a的接受者知道自己獲得了哪些知識(shí)產(chǎn)權(quán)的授權(quán),讓源碼的接受者知道如何與知識(shí)產(chǎn)權(quán)權(quán)利人聯(lián)系。
◆ 細(xì)化了該許可證終止的情形,包括不按該許可證的要求發(fā)布和使用源代碼、發(fā)生專利侵權(quán)訴訟。
Com
◆ 規(guī)定可以將源代碼及修改過(guò)的源代碼與其他類型的不受本許可證約束的代碼結(jié)合,以新產(chǎn)品的形式發(fā)布,只要其中經(jīng)該許可證獲得的源代碼及修改過(guò)的源代碼能按該許可證的要求發(fā)布即可。
◆ 細(xì)化了該許可證終止的情形,包括發(fā)生專利侵權(quán)訴訟。
◆ 明確了一個(gè)獨(dú)立承擔(dān)責(zé)任的原則,就是假如按該許可證使用源代碼的使用者將獲得的源代碼應(yīng)用于商業(yè)使用,那么他就要對(duì)在商業(yè)應(yīng)用中出現(xiàn)的由于使用該源代碼程序而產(chǎn)生的侵權(quán)訴訟承擔(dān)完全責(zé)任。這一條規(guī)定是比較特殊的,絕大多數(shù)開源軟件許可證都不這么要求。
IBM
IBM許可證的全稱是IBM Public License。在滿足OSIA開源軟件許可證認(rèn)證標(biāo)準(zhǔn)的前提下,IBM許可證還有如下一些細(xì)節(jié)性規(guī)定:
◆ 明確了專利授權(quán)。一般的開源軟件都明確源代碼的版權(quán)人將自己的修改權(quán)、復(fù)制權(quán)等版權(quán)權(quán)利向公眾許可,但保留署名權(quán),而IBM許可證在此基礎(chǔ)上還明確假如源代碼中含有專利權(quán),源代碼專利權(quán)人將復(fù)制、使用的專有權(quán)利向公眾許可。
◆ 細(xì)化了該許可證終止的情形,包括不按該許可證的要求發(fā)布和使用源代碼、發(fā)生專利侵權(quán)訴訟等。
◆ 像Common許可證一樣,IBM許可證也明確了獨(dú)立承擔(dān)責(zé)任原則,即假如按該許可證使用源代碼的使用者將獲得的源代碼應(yīng)用于商業(yè)使用,那么他就要對(duì)在商業(yè)應(yīng)用中出現(xiàn)的、由于使用該源代碼程序而產(chǎn)生的侵權(quán)訴訟承擔(dān)完全責(zé)任。