計算機概論
?
第零章、計(jì)算機(jī)概論? 切換解析度為 800x600 最近更新日期:2009/08/03
| 這幾年鳥(niǎo)哥開(kāi)始在大學(xué)任教了,在教學(xué)的經(jīng)驗(yàn)中發(fā)現(xiàn)到,由於對(duì) Linux 有興趣的朋友很多可能並非資訊相關(guān)科系出身, 因此對(duì)於電腦硬體及計(jì)算機(jī)方面的概念不熟。然而作業(yè)系統(tǒng)這種咚咚跟硬體有相當(dāng)程度的關(guān)連性, 所以,如果不瞭解一下計(jì)算機(jī)概論,要很快的瞭解 Linux 的概念是有點(diǎn)難度的。因此,鳥(niǎo)哥就自作聰明的新增一個(gè)小章節(jié)來(lái)談?wù)動(dòng)?jì)概囉! 因?yàn)轼B(niǎo)哥也不是資訊相關(guān)學(xué)門(mén)出身,所以,寫(xiě)的不好的地方請(qǐng)大家多多指教啊!^_^ |
1. 電腦:輔助人腦的好工具
1.1 電腦硬體的五大單元
1.2 CPU的種類(lèi)
1.3 周邊設(shè)備
1.4 運(yùn)作流程
1.5 電腦分類(lèi)
1.6 電腦上面常用的計(jì)算單位 (容量、速度等)
2. 個(gè)人電腦架構(gòu)與周邊設(shè)備
2.1 CPU: CPU的外頻與倍頻, 32位元與64位元, CPU等級(jí)
2.2 記憶體
2.3 顯示卡
2.4 硬碟與儲(chǔ)存設(shè)備
2.5 PCI介面卡
2.6 主機(jī)板
2.7 電源供應(yīng)器
2.8 選購(gòu)須知
3. 資料表示方式
3.1 數(shù)字系統(tǒng)
3.2 文字編碼系統(tǒng)
4. 軟體程式運(yùn)作
4.1 機(jī)器程式與編譯程式
4.2 作業(yè)系統(tǒng)
4.3 應(yīng)用程式
5. 重點(diǎn)回顧
6. 本章習(xí)題
7. 參考資料與延伸閱讀
8. 針對(duì)本文的建議:http://phorum.vbird.org/viewtopic.php?t=31574
?
電腦:輔助人腦的好工具
進(jìn)入二十一世紀(jì)的現(xiàn)在,沒(méi)有用過(guò)電腦的朋友應(yīng)該算很少了吧?但是,你瞭解電腦是什麼嗎? 電腦的機(jī)殼裡面含有什麼元件?不同的電腦可以作什麼事情?你生活周遭有哪些電器用品內(nèi)部是含有電腦相關(guān)元件的? 底下我們就來(lái)談一談這些東西呢!
所謂的電腦就是一種計(jì)算機(jī),而計(jì)算機(jī)其實(shí)是:『接受使用者輸入指令與資料, 經(jīng)由中央處理器的數(shù)學(xué)與邏輯單元運(yùn)算處理後,以產(chǎn)生或儲(chǔ)存成有用的資訊』。 因此,只要有輸入設(shè)備 (不管是鍵盤(pán)還是觸控式螢?zāi)?及輸出設(shè)備(螢?zāi)换蛑苯恿杏〕鰜?lái)),讓你可以輸入資料使該機(jī)器產(chǎn)生資訊的, 那就是一部計(jì)算機(jī)了。
圖1.1.1、計(jì)算機(jī)的功能
根據(jù)這個(gè)定義你知道哪些東西是計(jì)算機(jī)了嗎?包括一般商店用的簡(jiǎn)易型加減乘除計(jì)算機(jī)、打電話用的手機(jī)、開(kāi)車(chē)用的衛(wèi)星定位系統(tǒng) (GPS)、提款用的提款機(jī) (ATM)、你常使用的桌上型個(gè)人電腦、可攜帶的筆記型電腦還有這兩年 (2008, 2009) 很火紅的 Eee PC (或稱(chēng)為 netbook) 等等,這些都是計(jì)算機(jī)!
那麼計(jì)算機(jī)主要的組成元件是什麼呢?底下我們以常見(jiàn)的個(gè)人電腦來(lái)作為說(shuō)明。
?
電腦硬體的五大單元
關(guān)於電腦的組成部分,其實(shí)你可以觀察你的桌上型電腦分析一下,依外觀來(lái)說(shuō)這傢伙主要分為三部分:
- 輸入單元:包括鍵盤(pán)、滑鼠、讀卡機(jī)、掃描器、手寫(xiě)板、觸控螢?zāi)坏鹊纫欢?#xff1b;
- 主機(jī)部分:這個(gè)就是系統(tǒng)單元,被主機(jī)機(jī)殼保護(hù)住了,裡面含有 CPU 與主記憶體等;
- 輸出單元:例如螢?zāi)?、印表機(jī)等等
我們主要透過(guò)輸入設(shè)備如滑鼠與鍵盤(pán)來(lái)將一些資料輸入到主機(jī)裡面,然後再由主機(jī)的功能處理成為圖表或文章等資訊後, 將結(jié)果傳輸?shù)捷敵鲈O(shè)備,如螢?zāi)换蛴”頇C(jī)上面。重點(diǎn)在於主機(jī)裡面含有什麼元件呢?如果你曾經(jīng)拆開(kāi)過(guò)電腦主機(jī)機(jī)殼, 會(huì)發(fā)現(xiàn)其實(shí)主機(jī)裡面最重要的就是一片主機(jī)板,上面安插了中央處理器 (CPU) 以及主記憶體還有一些介面卡裝置而已。
整部主機(jī)的重點(diǎn)在於中央處理器 (Central Processing Unit, CPU),CPU 為一個(gè)具有特定功能的晶片, 裡頭含有微指令集,如果你想要讓主機(jī)進(jìn)行什麼特異的功能,就得要參考這顆 CPU 是否有相關(guān)內(nèi)建的微指令集才可以。 由於 CPU 的工作主要在於管理與運(yùn)算,因此在 CPU 內(nèi)又可分為兩個(gè)主要的單元,分別是: 算數(shù)邏輯單元與控制單元。(註1) 其中算數(shù)邏輯單元主要負(fù)責(zé)程式運(yùn)算與邏輯判斷,控制單元?jiǎng)t主要在協(xié)調(diào)各周邊元件與各單元間的工作。
既然 CPU 的重點(diǎn)是在進(jìn)行運(yùn)算與判斷,那麼要被運(yùn)算與判斷的資料是從哪裡來(lái)的? CPU 讀取的資料都是從主記憶體來(lái)的! 主記憶體內(nèi)的資料則是從輸入單元所傳輸進(jìn)來(lái)!而 CPU 處理完畢的資料也必須要先寫(xiě)回主記憶體中, 最後資料才從主記憶體傳輸?shù)捷敵鰡卧?/p>
綜合上面所說(shuō)的,我們會(huì)知道其實(shí)電腦是由幾個(gè)單元所組成的,包括輸入單元、 輸出單元、CPU內(nèi)部的控制單元、算數(shù)邏輯單元與主記憶體五大部分。 相關(guān)性如下所示:
圖1.1.2、電腦的五大單元(註2)
上面圖示中的『系統(tǒng)單元』其實(shí)指的就是電腦機(jī)殼內(nèi)的主要元件,而重點(diǎn)在於CPU與主記憶體。 特別要看的是實(shí)線部分的傳輸方向,基本上資料都是流經(jīng)過(guò)主記憶體再轉(zhuǎn)出去的! 至於資料會(huì)流進(jìn)/流出記憶體則是CPU所發(fā)佈的控制命令!而CPU實(shí)際要處理的資料則完全來(lái)自於主記憶體! 這是個(gè)很重要的概念喔!
而由上面的圖示我們也能知道,所有的單元都是由CPU內(nèi)部的控制單元來(lái)負(fù)責(zé)協(xié)調(diào)的,因此CPU是整個(gè)電腦系統(tǒng)的最重要部分! 那麼目前世界上有哪些主流的CPU呢?是否剛剛我們談到的硬體內(nèi)全部都是相同的CPU種類(lèi)呢?底下我們就來(lái)談一談。
CPU的種類(lèi)
如前面說(shuō)過(guò)的,CPU其實(shí)內(nèi)部已經(jīng)含有一些小指令集,我們所使用的軟體都要經(jīng)過(guò)CPU內(nèi)部的微指令集來(lái)達(dá)成才行。 那這些指令集的設(shè)計(jì)主要又被分為兩種設(shè)計(jì)理念,這就是目前世界上常見(jiàn)到的兩種主要CPU種類(lèi): 分別是精簡(jiǎn)指令集(RISC)與複雜指令集(CISC)系統(tǒng)。底下我們就來(lái)談?wù)勥@兩種不同CPU種類(lèi)的差異囉!
?
- 精簡(jiǎn)指令集(Reduced Instruction Set Computer, RISC):(註3)
這種CPU的設(shè)計(jì)中,微指令集較為精簡(jiǎn),每個(gè)指令的執(zhí)行時(shí)間都很短,完成的動(dòng)作也很單純,指令的執(zhí)行效能較佳; 但是若要做複雜的事情,就要由多個(gè)指令來(lái)完成。常見(jiàn)的RISC微指令集CPU主要例如昇陽(yáng)(Sun)公司的SPARC系列、 IBM公司的Power Architecture(包括PowerPC)系列、與ARM系列等。
在應(yīng)用方面,SPARC架構(gòu)的電腦常用於學(xué)術(shù)領(lǐng)域的大型工作站中,包括銀行金融體系的主要伺服器也都有這類(lèi)的電腦架構(gòu); 至於PowerPC架構(gòu)的應(yīng)用上,例如新力(Sony)公司出產(chǎn)的Play Station 3(PS3)就是使用PowerPC架構(gòu)的Cell處理器; 那ARM呢?你常使用的各廠牌手機(jī)、PDA、導(dǎo)航系統(tǒng)、網(wǎng)路設(shè)備(交換器、路由器等)等,幾乎都是使用ARM架構(gòu)的CPU喔! 老實(shí)說(shuō),目前世界上使用範(fàn)圍最廣的CPU可能就是ARM呢! (註4)
?
- 複雜指令集(Complex Instruction Set Computer, CISC):(註5)
與RISC不同的,CISC在微指令集的每個(gè)小指令可以執(zhí)行一些較低階的硬體操作,指令數(shù)目多而且複雜, 每條指令的長(zhǎng)度並不相同。因?yàn)橹噶顖?zhí)行較為複雜所以每條指令花費(fèi)的時(shí)間較長(zhǎng), 但每條個(gè)別指令可以處理的工作較為豐富。常見(jiàn)的CISC微指令集CPU主要有AMD、Intel、VIA等的x86架構(gòu)的CPU。
由於AMD、Intel、VIA所開(kāi)發(fā)出來(lái)的x86架構(gòu)CPU被大量使用於個(gè)人電腦(Personal computer)用途上面, 因此,個(gè)人電腦常被稱(chēng)為x86架構(gòu)的電腦!那為何稱(chēng)為x86架構(gòu)(註6)呢? 這是因?yàn)樽钤绲哪穷wIntel發(fā)展出來(lái)的CPU代號(hào)稱(chēng)為8086,後來(lái)依此架構(gòu)又開(kāi)發(fā)出80286, 80386..., 因此這種架構(gòu)的CPU就被稱(chēng)為x86架構(gòu)了。
在2003年以前由Intel所開(kāi)發(fā)的x86架構(gòu)CPU由8位元升級(jí)到16、32位元,後來(lái)AMD依此架構(gòu)修改新一代的CPU為64位元, 為了區(qū)別兩者的差異,因此64位元的個(gè)人電腦CPU又被統(tǒng)稱(chēng)為x86_64的架構(gòu)喔!
那麼不同的x86架構(gòu)的CPU有什麼差異呢?除了CPU的整體結(jié)構(gòu)(如第二層快取、每次運(yùn)作可執(zhí)行的指令數(shù)等)之外, 主要是在於微指令集的不同。新的x86的CPU大多含有很先進(jìn)的微指令集, 這些微指令集可以加速多媒體程式的運(yùn)作,也能夠加強(qiáng)虛擬化的效能,而且某些微指令集更能夠增加能源效率, 讓CPU耗電量降低呢!由於電費(fèi)越來(lái)越高,購(gòu)買(mǎi)電腦時(shí),除了整體的效能之外, 節(jié)能省電的CPU特色也可以考慮喔!
例題: 最新的Intel/AMD的x86架構(gòu)中,請(qǐng)查詢出多媒體、虛擬化、省電功能各有哪些重要的微指令集?(僅供參考) 答:
|
?
周邊設(shè)備
單有CPU也無(wú)法運(yùn)作電腦的,所以電腦還需要其他的周邊設(shè)備才能夠?qū)嶋H運(yùn)作。 除了前面稍微提到的輸入/輸出設(shè)備,以及CPU與主記憶體之外,還有什麼周邊設(shè)備呢? 其實(shí)最重要的周邊設(shè)備是主機(jī)板!因?yàn)橹鳈C(jī)板負(fù)責(zé)將所有的設(shè)備通通連接在一起,讓所有的設(shè)備能夠進(jìn)行協(xié)調(diào)與溝通。 而主機(jī)板上面最重要的元件就是主機(jī)板晶片組!這個(gè)晶片組可以將所有的設(shè)備匯集在一起!
其他重要的設(shè)備還有:
- 儲(chǔ)存裝置:儲(chǔ)存裝置包括硬碟、軟碟、光碟、磁帶等等;
- 顯示裝置:顯示卡對(duì)於玩3D遊戲來(lái)說(shuō)是非常重要的一環(huán),他與顯示的精緻度、色彩與解析度都有關(guān)係;
- 網(wǎng)路裝置:沒(méi)有網(wǎng)路活不下去啊!所以網(wǎng)路卡對(duì)於電腦來(lái)說(shuō)也是相當(dāng)重要的!
更詳細(xì)的各項(xiàng)周邊裝置我們將在下個(gè)小節(jié)進(jìn)行介紹!在這裡我們先來(lái)瞭解一下各元件的關(guān)係囉! 那就是,電腦是如何運(yùn)作的呢?
運(yùn)作流程
如果不是很瞭解電腦的運(yùn)作流程,鳥(niǎo)哥拿個(gè)簡(jiǎn)單的想法來(lái)思考好了~ 假設(shè)電腦是一個(gè)人體,那麼每個(gè)元件對(duì)應(yīng)到那個(gè)地方呢?可以這樣思考:
圖1.4.1、各元件運(yùn)作
- CPU=腦袋瓜子:每個(gè)人會(huì)作的事情都不一樣(微指令集的差異), 但主要都是透過(guò)腦袋瓜子來(lái)進(jìn)行判斷與控制身體各部分的活動(dòng);
? - 主記憶體=腦袋中的記錄區(qū)塊:在實(shí)際活動(dòng)過(guò)程中,我們的腦袋瓜子能夠?qū)⑼饨绲幕?dòng)暫時(shí)記錄起來(lái), 提供CPU來(lái)進(jìn)行判斷;
? - 硬碟=腦袋中的記憶區(qū)塊:將重要的資料記錄起來(lái),以便未來(lái)將這些重要的經(jīng)驗(yàn)再次的使用;
? - 主機(jī)板=神經(jīng)系統(tǒng):好像人類(lèi)的神經(jīng)一樣,將所有重要的元件連接起來(lái),包括手腳的活動(dòng)都是腦袋瓜子發(fā)佈命令後, 透過(guò)神經(jīng)(主機(jī)板)傳導(dǎo)給手腳來(lái)進(jìn)行活動(dòng)啊!
? - 各項(xiàng)周邊設(shè)備=人體與外界溝通的手、腳、皮膚、眼睛等:就好像手腳一般,是人體與外界互動(dòng)的重要關(guān)鍵!
? - 顯示卡=腦袋中的影像:將來(lái)自眼睛的刺激轉(zhuǎn)成影響後在腦袋中呈現(xiàn),所以顯示卡所產(chǎn)生的資料來(lái)源也是CPU控制的。
? - 電源供應(yīng)器 (Power)=心臟:所有的元件要能運(yùn)作得要有足夠的電力供給才行!這電力供給就好像心臟一樣,如果心臟不夠力, 那麼全身也就無(wú)法動(dòng)彈的!心臟不穩(wěn)定呢?那你的身體當(dāng)然可能斷斷續(xù)續(xù)的~不穩(wěn)定!
由這樣的關(guān)係圖當(dāng)中,我們知道整個(gè)活動(dòng)中最重要的就是腦袋瓜子! 而腦袋瓜子當(dāng)中與現(xiàn)在正在進(jìn)行的工作有關(guān)的就是CPU與主記憶體!任何外界的接觸都必須要由腦袋瓜子中的主記憶體記錄下來(lái), 然後給腦袋中的CPU依據(jù)這些資料進(jìn)行判斷後,再發(fā)佈命令給各個(gè)周邊設(shè)備!如果需要用到過(guò)去的經(jīng)驗(yàn), 就得由過(guò)去的經(jīng)驗(yàn)(硬碟)當(dāng)中讀取囉!
也就是說(shuō),整個(gè)人體最重要的地方就是腦袋瓜子,同樣的,整部主機(jī)當(dāng)中最重要的就是CPU與主記憶體, 而CPU的資料來(lái)源通通來(lái)自於主記憶體,如果要由過(guò)去的經(jīng)驗(yàn)來(lái)判斷事情時(shí), 也要將經(jīng)驗(yàn)(硬碟)挪到目前的記憶(主記憶體)當(dāng)中,再交由CPU來(lái)判斷喔!這點(diǎn)得要再次的強(qiáng)調(diào)啊! 下個(gè)章節(jié)當(dāng)中,我們就對(duì)目前常見(jiàn)的個(gè)人電腦各個(gè)元件來(lái)進(jìn)行說(shuō)明囉!
電腦分類(lèi)
知道了電腦的基本組成與周邊裝置,也知道其實(shí)電腦的CPU種類(lèi)非常的多,再來(lái)我們想要瞭解的是,電腦如何分類(lèi)? 電腦的分類(lèi)非常多種,如果以電腦的複雜度與運(yùn)算能力進(jìn)行分類(lèi)的話,主要可以分為這幾類(lèi):
- 超級(jí)電腦(Supercomputer)
超級(jí)電腦是運(yùn)作速度最快的電腦,但是他的維護(hù)、操作費(fèi)用也最高!主要是用於需要有高速計(jì)算的計(jì)畫(huà)中。 例如:國(guó)防軍事、氣象預(yù)測(cè)、太空科技,用在模擬的領(lǐng)域較多。詳情也可以參考: 國(guó)家高速網(wǎng)路與計(jì)算中心http://www.nchc.org.tw的介紹! 至於全世界最快速的前500大超級(jí)電腦,則請(qǐng)參考:http://www.top500.org。
? - 大型電腦(Mainframe Computer)
大型電腦通常也具有數(shù)個(gè)高速的CPU,功能上雖不及超級(jí)電腦,但也可用來(lái)處理大量資料與複雜的運(yùn)算。 例如大型企業(yè)的主機(jī)、全國(guó)性的證券交易所等每天需要處理數(shù)百萬(wàn)筆資料的企業(yè)機(jī)構(gòu), 或者是大型企業(yè)的資料庫(kù)伺服器等等。
? - 迷你電腦(Minicomputer)
迷你電腦仍保有大型電腦同時(shí)支援多使用者的特性,但是主機(jī)可以放在一般作業(yè)場(chǎng)所, 不必像前兩個(gè)大型電腦需要特殊的空調(diào)場(chǎng)所。通常用來(lái)作為科學(xué)研究、工程分析與工廠的流程管理等。
? - 工作站(Workstation)
工作站的價(jià)格又比迷你電腦便宜許多,是針對(duì)特殊用途而設(shè)計(jì)的電腦。在個(gè)人電腦的效能還沒(méi)有提升到目前的狀況之前, 工作站電腦的性能/價(jià)格比是所有電腦當(dāng)中較佳的,因此在學(xué)術(shù)研究與工程分析方面相當(dāng)常見(jiàn)。
? - 微電腦(Microcomputer)
又可以稱(chēng)為個(gè)人電腦,也是我們這裡主要探討的目標(biāo)!體積最小,價(jià)格最低,但功能還是五臟俱全的! 大致又可分為桌上型、筆記型等等。
若光以效能來(lái)說(shuō),目前的個(gè)人電腦效能已經(jīng)夠快了,甚至已經(jīng)比工作站等級(jí)以上的電腦運(yùn)算速度還要快! 但是工作站電腦強(qiáng)調(diào)的是穩(wěn)定不當(dāng)機(jī),並且運(yùn)算過(guò)程要完全正確,因此工作站以上等級(jí)的電腦在設(shè)計(jì)時(shí)的考量與個(gè)人電腦並不相同啦! 這也是為啥工作站等級(jí)以上的個(gè)人電腦售價(jià)較貴的原因。
電腦上面常用的計(jì)算單位 (容量、速度等)
電腦的運(yùn)算能力是由速度來(lái)決定的,而存放在電腦儲(chǔ)存設(shè)備當(dāng)中的資料容量也是有單位的。
- 容量單位
電腦依有沒(méi)有通電來(lái)記錄資訊,所以理論上它只認(rèn)識(shí) 0 與 1 而已。0/1 的單位我們稱(chēng)為 bit。但 bit 實(shí)在太小了, 並且在儲(chǔ)存資料時(shí)每份簡(jiǎn)單的資料都會(huì)使用到 8 個(gè) bits 的大小來(lái)記錄,因此定義出 byte 這個(gè)單位,他們的關(guān)係為:
1 Byte = 8 bits不過(guò)同樣的,Byte 還是太小了,在較大的容量情況下,使用 byte 相當(dāng)不容易判斷資料的大小,舉例來(lái)說(shuō),1000000 bytes 這樣的顯示方式你能夠看得出有幾個(gè)零嗎?所以後來(lái)就有一些常見(jiàn)的簡(jiǎn)化單位表示法,例如 K 代表 1024,M 代表 1024K 等。 而這些單位在不同的進(jìn)位制下有不同的數(shù)值表示,底下就列出常見(jiàn)的單位與進(jìn)位制對(duì)應(yīng):
| 進(jìn)位制 | K | M | G | T | P |
| 二進(jìn)位 | 1024 | 1024K | 1024M | 1024G | 1024T |
| 十進(jìn)位 | 1000 | 1000K | 1000M | 1000G | 1000T |
一般來(lái)說(shuō),檔案容量使用的是二進(jìn)位的方式,所以 1 GBytes 的檔案大小實(shí)際上為:1024x1024x1024 Bytes 這麼大! 速度單位則常使用十進(jìn)位,例如 1GHz 就是 1000x1000x1000 Hz 的意思。
?
- 速度單位
CPU的運(yùn)算速度常使用 MHz 或者是 GHz 之類(lèi)的單位,這個(gè) Hz 其實(shí)就是秒分之一。而在網(wǎng)路傳輸方面,由於網(wǎng)路使用的是 bit 為單位,因此網(wǎng)路常使用的單位為 Mbps 是 Mbits per second,亦即是每秒多少 Mbit。舉例來(lái)說(shuō),大家常聽(tīng)到的 8M/1M ADSL 傳輸速度,如果轉(zhuǎn)成檔案容量的 byte 時(shí),其實(shí)理論最大傳輸值為:每秒 1Mbyte/ 每秒125Kbyte的上傳/下載容量喔!
| 例題: 假設(shè)你今天購(gòu)買(mǎi)了500GB的硬碟一顆,但是格式化完畢後卻只剩下460GB左右的容量,這是什麼原因? 答: 因?yàn)橐话阌驳u造商會(huì)使用十進(jìn)位的單位,所以500GByte代表為500*1000*1000*1000Byte之意。轉(zhuǎn)成檔案的容量單位時(shí)使用二進(jìn)位(1024為底),所以就成為466GB左右的容量了。 硬碟廠商並非要騙人,只是因?yàn)橛驳淖钚∥锢砹繛?12Bytes,最小的組成單位為磁區(qū)(sector),通常硬碟容量的計(jì)算採(cǎi)用『多少個(gè)sector』,所以才會(huì)使用十進(jìn)位來(lái)處理的。相關(guān)的硬碟資訊在這一章後面會(huì)提到的! |
?
個(gè)人電腦架構(gòu)與周邊設(shè)備
一般消費(fèi)者常說(shuō)的電腦通常指的就是x86的個(gè)人電腦架構(gòu),因此我們有必要來(lái)瞭解一下這個(gè)架構(gòu)的各個(gè)元件。 事實(shí)上,Linux最早在發(fā)展的時(shí)候,就是依據(jù)個(gè)人電腦的架構(gòu)來(lái)發(fā)展的,所以,真的得要瞭解一下呢! 另外,因?yàn)閮纱笾髁鱴86開(kāi)發(fā)商(Intel, AMD)的CPU架構(gòu)並不相容,而且設(shè)計(jì)理念也有所差異, 所以兩大主流CPU所需要的主機(jī)板晶片組設(shè)計(jì)也就不太相同。目前(2009)最新的主機(jī)板架構(gòu)主要是這樣的:
圖2.1.1、Intel晶片架構(gòu)
就如同前一小節(jié)提到的,整個(gè)主機(jī)板上面最重要的就是晶片組了!而晶片組通常又分為兩個(gè)橋接器來(lái)控制各元件的溝通, 分別是:(1)北橋:負(fù)責(zé)連結(jié)速度較快的CPU、主記憶體與顯示卡等元件;(2)南橋:負(fù)責(zé)連接速度較慢的周邊介面, 包括硬碟、USB、網(wǎng)路卡等等。(晶片組的南北橋與三國(guó)的大小喬沒(méi)有關(guān)係 @_@)至於AMD的晶片組架構(gòu)如下所示:
圖2.1.2、AMD晶片架構(gòu)
與Intel不同的地方在於主記憶體是直接與CPU溝通而不透過(guò)北橋!從前面的說(shuō)明我們可以知道CPU的資料主要都是來(lái)自於主記憶體提供, 因此AMD為了加速這兩者的溝通,所以將記憶體控制元件整合到CPU當(dāng)中, 理論上這樣可以加速CPU與主記憶體的傳輸速度!這是兩種CPU在架構(gòu)上面主要的差異點(diǎn)。
畢竟目前世界上x(chóng)86的CPU主要供應(yīng)商為Intel,所以底下鳥(niǎo)哥將以Intel的主機(jī)板架構(gòu)說(shuō)明各元件囉! 我們以技嘉公司出的主機(jī)板,型號(hào):Gigabyte GA-X48-DQ6作為一個(gè)說(shuō)明的範(fàn)例,主機(jī)板各元件如下所示:
圖2.1.3、技嘉主機(jī)板各元件(圖片為各公司所有)
主要的元件為:CPU、主記憶體、磁碟裝置(IDE/SATA)、匯流排晶片組(南橋/北橋)、顯示卡介面(PCI-Express)與其他介面卡(PCI)。 底下的各項(xiàng)元件在講解時(shí),請(qǐng)參考Intel晶片組架構(gòu)與技嘉主機(jī)板各元件來(lái)印證喔!
?
CPU
如同技嘉主機(jī)板示意圖上最上方的中央部分,那就是CPU插槽。 由於CPU負(fù)責(zé)大量運(yùn)算,因此CPU通常是具有相當(dāng)高發(fā)熱量的元件。所以如果你曾經(jīng)拆開(kāi)過(guò)主機(jī)板, 應(yīng)該就會(huì)看到CPU上頭通常會(huì)安插一顆風(fēng)扇來(lái)主動(dòng)散熱的。
x86個(gè)人電腦的CPU主要供應(yīng)商為Intel與AMD,目前(2009)主流的CPU都是雙核以上的架構(gòu)了! 原本的單核心CPU僅有一個(gè)運(yùn)算單元,所謂的多核心則是在一顆CPU封裝當(dāng)中嵌入了兩個(gè)以上的運(yùn)算核心, 簡(jiǎn)單的說(shuō),就是一個(gè)實(shí)體的CPU外殼中,含有兩個(gè)以上的CPU單元就是了。
不同的CPU型號(hào)大多具有不同的腳位(CPU上面的插腳),能夠搭配的主機(jī)板晶片組也不同, 所以當(dāng)你想要將你的主機(jī)升級(jí)時(shí),不能只考慮CPU,你還得要留意你的主機(jī)板上面所支援的CPU型號(hào)喔! 不然買(mǎi)了最新的CPU也不能夠安插在你的舊主機(jī)板上頭的!目前主流的CPU有Intel的Core 2 Duo與AMD的Athlon64 X2雙核CPU, 高階產(chǎn)品則有Intel的Core i7 與AMD的Phenom II 四核心CPU喔!
圖2.1.4、不同的CPU腳位
我們前面談到CPU內(nèi)部含有微指令集,不同的微指令集會(huì)導(dǎo)致CPU工作效率的優(yōu)劣。除了這點(diǎn)之外, CPU效能的比較還有什麼呢?那就是CPU的時(shí)脈了!什麼是時(shí)脈呢?簡(jiǎn)單的說(shuō), 時(shí)脈就是CPU每秒鐘可以進(jìn)行的工作次數(shù)。 所以時(shí)脈越高表示這顆CPU單位時(shí)間內(nèi)可以作更多的事情。舉例來(lái)說(shuō),Intel的Core 2 Duo型號(hào)E8400的CPU時(shí)脈為3.0GHz, 表示這顆CPU在一秒內(nèi)可以進(jìn)行3.0x109次工作,每次工作都可以進(jìn)行少數(shù)的指令運(yùn)作之意。
| Tips: 注意,不同的CPU之間不能單純的以時(shí)脈來(lái)判斷運(yùn)算效能喔!這是因?yàn)槊款wCPU的微指令集不相同,架構(gòu)也不見(jiàn)得一樣, 每次時(shí)脈能夠進(jìn)行的工作指令數(shù)也不同之故!所以,時(shí)脈目前僅能用來(lái)比較同款CPU的速度! |
- CPU的『外頻』與『倍頻』
我們可以看到圖2.1.1的晶片架構(gòu)圖當(dāng)中各個(gè)元件都是透過(guò)北橋與南橋所連接在一起。 但就像一群人共同在處理一個(gè)連續(xù)作業(yè)一般,如果這一群人裡面有個(gè)人的動(dòng)作特別快或特別慢, 將導(dǎo)致前面或者是後面的人事情一堆處理不完!也就是說(shuō),這一群人最好能夠速度一致較佳! 所以,CPU與外部各元件的速度理論上應(yīng)該要一致才好。但是因?yàn)镃PU需要較強(qiáng)大的運(yùn)算能力, 因?yàn)楹芏嗯袛嗯c數(shù)學(xué)都是在CPU內(nèi)處理的,因此CPU開(kāi)發(fā)商就在CPU內(nèi)再加上一個(gè)加速功能, 所以CPU有所謂的外頻與倍頻!
所謂的外頻指的是CPU與外部元件進(jìn)行資料傳輸時(shí)的速度,倍頻則是 CPU 內(nèi)部用來(lái)加速工作效能的一個(gè)倍數(shù), 兩者相乘才是CPU的時(shí)脈速度。我們以剛剛Intel Core 2 Duo E8400 CPU來(lái)說(shuō),他的時(shí)脈是3.0GHz, 而外頻是333MHz,因此倍頻就是9倍囉!(3.0G=333Mx9, 其中1G=1000M)
| Tips: 很多電腦硬體玩家很喜歡玩『超頻』,所謂的超頻指的是: 將CPU的倍頻或者是外頻透過(guò)主機(jī)板的設(shè)定功能更改成較高頻率的一種方式。但因?yàn)镃PU的倍頻通常在出廠時(shí)已經(jīng)被鎖定而無(wú)法修改, 因此較常被超頻的為外頻。 舉例來(lái)說(shuō),像上述3.0GHz的CPU如果想要超頻, 可以將他的外頻333MHz調(diào)整成為400MHz,但如此一來(lái)整個(gè)主機(jī)板的各個(gè)元件的運(yùn)作頻率可能都會(huì)被增加成原本的1.333倍(4/3), 雖然CPU可能可以到達(dá)3.6GHz,但卻因?yàn)轭l率並非正常速度,故可能會(huì)造成當(dāng)機(jī)等問(wèn)題。 |
- 32位元與64位元
前面談到CPU運(yùn)算的資料都是由主記憶體提供的,主記憶體與CPU的溝通速度靠的是外部頻率, 那麼每次工作可以傳送的資料量有多大呢?那就是匯流排的功能了。一般主機(jī)板晶片組有分北橋與南橋, 北橋的匯流排稱(chēng)為系統(tǒng)匯流排,因?yàn)槭怯洃涹w傳輸?shù)闹饕ǖ?#xff0c;所以速度較快。 南橋就是所謂的輸入輸出(I/O)匯流排,主要在聯(lián)繫硬碟、USB、網(wǎng)路卡等周邊設(shè)備。
目前北橋所支援的頻率可高達(dá)333/400/533/800/1066/1333/1600MHz等不同頻率,支援情況依晶片組功能而有不同。 北橋所支援的頻率我們稱(chēng)為前端匯流排速度(Front Side Bus, FSB), 而每次傳送的位元數(shù)則是匯流排寬度。 那所謂的匯流排頻寬則是:『FSBx匯流排寬度』亦即每秒鐘可傳送的最大資料量。 目前常見(jiàn)的匯流排寬度有32/64位元(bits)。
而如圖 2.1.1中的圖示,在該架構(gòu)中前端匯流排最高速度可達(dá)1600MHz。 我們看到記憶體與北橋的頻寬為12.8GBytes/s,亦即是1600MHz*64bits = 1600MHz*8Bytes = 12800MByes/s = 12.8GBytes/s
與匯流排寬度相似的,CPU每次能夠處理的資料量稱(chēng)為字組大小(word size), 字組大小依據(jù)CPU的設(shè)計(jì)而有32位元與64位元。我們現(xiàn)在所稱(chēng)的電腦是32或64位元主要是依據(jù)這個(gè) CPU解析的字組大小而來(lái)的!早期的32位元CPU中,因?yàn)镃PU每次能夠解析的資料量有限, 因此由主記憶體傳來(lái)的資料量就有所限制了。這也導(dǎo)致32位元的CPU最多只能支援最大到4GBytes的記憶體。
| Tips: 字組大小與匯流排寬度是可以不同的!舉例來(lái)說(shuō),在Pentium Pro時(shí)代,該CPU是32位元的處理器, 但當(dāng)時(shí)的晶片組可以設(shè)計(jì)出64位元的匯流排寬度。在這樣的架構(gòu)下我們通常還是以CPU的字組大小來(lái)稱(chēng)呼該架構(gòu)。 個(gè)人電腦的64位元CPU是到2003年由AMD Athlon64後才出現(xiàn)的。 |
- CPU等級(jí)
由於x86架構(gòu)的CPU在Intel的Pentium系列(1993年)後就有不統(tǒng)一的腳位與設(shè)計(jì),為了將不同種類(lèi)的CPU規(guī)範(fàn)等級(jí), 所以就有i386,i586,i686等名詞出現(xiàn)了?;旧?#xff0c;在Intel Pentium MMX與AMD K6年代的CPU稱(chēng)為i586等級(jí), 而Intel Celeron與AMD Athlon(K7)年代之後的32位元CPU就稱(chēng)為i686等級(jí)。 至於目前的64位元CPU則統(tǒng)稱(chēng)為x86_64等級(jí)。
目前很多的程式都有對(duì)CPU做最佳化的設(shè)計(jì),萬(wàn)一哪天你發(fā)現(xiàn)一些程式是註明給686的CPU使用時(shí), 就不要將他安裝在586以下等級(jí)的電腦中,否則可是會(huì)無(wú)法執(zhí)行該軟體的! 不過(guò),在686倒是可以安裝386的軟體喔!也就是說(shuō),這些東西具有向下相容的能力啦!
記憶體
如同圖2.1.3、技嘉主機(jī)板示意圖中的右上方部分的那四根插槽,那就是主記憶體的插槽了。 主記憶體插槽中間通常有個(gè)突起物將整個(gè)插槽稍微切分成為兩個(gè)不等長(zhǎng)的距離, 這樣的設(shè)計(jì)可以讓使用者在安裝主記憶體時(shí),不至於前後腳位安插錯(cuò)誤,是一種防呆的設(shè)計(jì)喔。
前面提到CPU所使用的資料都是來(lái)自於主記憶體(main memory),不論是軟體程式還是資料,都必須要讀入主記憶體後CPU才能利用。 個(gè)人電腦的主記憶體主要元件為動(dòng)態(tài)隨機(jī)存取記憶體(Dynamic Random Access Memory, DRAM), 隨機(jī)存取記憶體只有在通電時(shí)才能記錄與使用,斷電後資料就消失了。因此我們也稱(chēng)這種RAM為揮發(fā)性記憶體。
DRAM根據(jù)技術(shù)的更新又分好幾代,而使用上較廣泛的有所謂的SDRAM與DDR SDRAM兩種。 這兩種記憶體的差別除了在於腳位與工作電壓上的不同之外,DDR是所謂的雙倍資料傳送速度(Double Data Rate), 他可以在一次工作週期中進(jìn)行兩次資料的傳送,感覺(jué)上就好像是CPU的倍頻啦! 所以傳輸頻率方面比SDRAM還要好。新一代的PC大多使用DDR記憶體了。 下表列出SDRAM與DDR SDRAM的型號(hào)與頻率及頻寬之間的關(guān)係。
| SDRAM/DDR | 型號(hào) | 資料寬度(bit) | 外頻(MHz) | 頻率速度 | 頻寬(頻率x寬度) |
| SDRAM | PC100 | 64 | 100 | 100 | 800MBytes/sec |
| SDRAM | PC133 | 64 | 133 | 133 | 1064MBytes/sec |
| DDR | DDR266 | 64 | 133 | 266 | 2.1GBytes/sec |
| DDR | DDR400 | 64 | 200 | 400 | 3.2GBytes/sec |
| DDR | DDRII800 | 64 | 400 | 800 | 6.4GBytes/sec |
DDR SDRAM又依據(jù)技術(shù)的發(fā)展,有DDR, DDRII, DDRIII等等。
| Tips: 主記憶體型號(hào)的挑選與CPU及晶片組有關(guān),所以主機(jī)板、CPU與記憶體在購(gòu)買(mǎi)的時(shí)候必須要考慮其相關(guān)性喔。 並不是任何主機(jī)板都可以安插DDR III的記憶體呢! |
主記憶體除了頻率/頻寬與型號(hào)需要考慮之外,記憶體的容量也是很重要的喔! 因?yàn)樗械馁Y料都得要載入記憶體當(dāng)中才能夠被CPU判讀,如果記憶體容量不夠大的話將會(huì)導(dǎo)致某些大容量資料無(wú)法被完整的載入, 此時(shí)已存在記憶體當(dāng)中但暫時(shí)沒(méi)有被使用到的資料必須要先被釋放,使得可用記憶體容量大於該資料,那份新資料才能夠被載入呢! 所以,通常越大的記憶體代表越快速的系統(tǒng),這是因?yàn)橄到y(tǒng)不用常常釋放一些記憶體內(nèi)部的資料。 以伺服器來(lái)說(shuō),主記憶體的容量有時(shí)比CPU的速度還要來(lái)的重要的!
?
- 雙通道設(shè)計(jì)
由於所有的資料都必須要存放在主記憶體,所以主記憶體的資料寬度當(dāng)然是越大越好。 但傳統(tǒng)的匯流排寬度一般大約僅達(dá)64位元,為了要加大這個(gè)寬度,因此晶片組廠商就將兩個(gè)主記憶體彙整在一起, 如果一支記憶體可達(dá)64位元,兩支記憶體就可以達(dá)到128位元了,這就是雙通道的設(shè)計(jì)理念。
如上所述,要啟用雙通道的功能你必須要安插兩支(或四支)主記憶體,這兩支記憶體最好連型號(hào)都一模一樣比較好, 這是因?yàn)閱?dòng)雙通道記憶體功能時(shí),資料是同步寫(xiě)入/讀出這一對(duì)主記憶體中,如此才能夠提升整體的頻寬啊! 所以當(dāng)然除了容量大小要一致之外,型號(hào)也最好相同啦!
你有沒(méi)有發(fā)現(xiàn)圖 2.1.3、技嘉主機(jī)板示意圖上那四根記憶體插槽的顏色呢?是否分為兩種顏色,且兩兩成對(duì)? 為什麼要這樣設(shè)計(jì)?答出來(lái)了嗎?是啦!這種顏色的設(shè)計(jì)就是為了雙通道來(lái)的!要啟動(dòng)雙通道的功能時(shí), 你必須要將兩根容量相同的主記憶體插在相同顏色的插槽當(dāng)中喔!
?
- CPU時(shí)脈與主記憶體的關(guān)係
理論上,CPU與主記憶體的外頻應(yīng)該要相同才好。不過(guò),因?yàn)榧夹g(shù)方面的提升,因此這兩者的頻率速度不會(huì)相同, 但外頻則應(yīng)該是一致的較佳。舉例來(lái)說(shuō),上面提到的Intel E8400 CPU外頻為333MHz,則應(yīng)該選用DDR II 667這個(gè)型號(hào), 因?yàn)樵撚洃涹w型號(hào)的外頻為333MHz之故喔!
?
- DRAM與SRAM
除了主記憶體之外,事實(shí)上整部個(gè)人電腦當(dāng)中還有許許多多的記憶體存在喔!最為我們所知的就是CPU內(nèi)的第二層快取記憶體。 我們現(xiàn)在知道CPU的資料都是由主記憶體提供,但主記憶體的資料畢竟得經(jīng)由北橋送到CPU內(nèi)。 如果某些很常用的程式或資料可以放置到CPU內(nèi)部的話,那麼CPU資料的讀取就不需要透過(guò)北橋了! 對(duì)於效能來(lái)說(shuō)不就可以大大的提升了?這就是第二層快取的設(shè)計(jì)概念。第二層快取與主記憶體及CPU的關(guān)係如下圖所示:
圖2.2.1、記憶體相關(guān)性
?
因?yàn)榈诙涌烊?L2 cache)整合到CPU內(nèi)部,因此這個(gè)L2記憶體的速度必須要CPU時(shí)脈相同。 使用DRAM是無(wú)法達(dá)到這個(gè)時(shí)脈速度的,此時(shí)就需要靜態(tài)隨機(jī)存取記憶體(Static Random Access Memory, SRAM)的幫忙了。 SRAM在設(shè)計(jì)上使用的電晶體數(shù)量較多,價(jià)格較高,且不易做成大容量,不過(guò)由於其速度快, 因此整合到CPU內(nèi)成為快取記憶體以加快資料的存取是個(gè)不錯(cuò)的方式喔!新一代的CPU都有內(nèi)建容量不等的L2快取在CPU內(nèi)部, 以加快CPU的運(yùn)作效能。
?
- 唯讀記憶體(ROM)
主機(jī)板上面的元件是非常多的,而每個(gè)元件的參數(shù)又具有可調(diào)整性。舉例來(lái)說(shuō),CPU與記憶體的時(shí)脈是可調(diào)整的; 而主機(jī)板上面如果有內(nèi)建的網(wǎng)路卡或者是顯示卡時(shí),該功能是否要啟動(dòng)與該功能的各項(xiàng)參數(shù), 是被記錄到主機(jī)板上頭的一個(gè)稱(chēng)為CMOS的晶片上,這個(gè)晶片需要藉著額外的電源來(lái)發(fā)揮記錄功能, 這也是為什麼你的主機(jī)板上面會(huì)有一顆電池的緣故。
那CMOS內(nèi)的資料如何讀取與更新呢?還記得你的電腦在開(kāi)機(jī)的時(shí)候可以按下[Del]按鍵來(lái)進(jìn)入一個(gè)名為BIOS的畫(huà)面吧? BIOS(Basic Input Output System)是一套程式,這套程式是寫(xiě)死到主機(jī)板上面的一個(gè)記憶體晶片中, 這個(gè)記憶體晶片在沒(méi)有通電時(shí)也能夠?qū)①Y料記錄下來(lái),那就是唯讀記憶體(Read Only Memory, ROM)。 ROM是一種非揮發(fā)性的記憶體。另外,BIOS對(duì)於個(gè)人電腦來(lái)說(shuō)是非常重要的, 因?yàn)樗窍到y(tǒng)在開(kāi)機(jī)的時(shí)候首先會(huì)去讀取的一個(gè)小程式喔!
另外,韌體(firmware)(註7)很多也是使用ROM來(lái)進(jìn)行軟體的寫(xiě)入的。 韌體像軟體一樣也是一個(gè)被電腦所執(zhí)行的程式,然而他是對(duì)於硬體內(nèi)部而言更加重要的部分。例如BIOS就是一個(gè)韌體, BIOS雖然對(duì)於我們?nèi)粘2僮麟娔X系統(tǒng)沒(méi)有什麼太大的關(guān)係,但是他卻控制著開(kāi)機(jī)時(shí)各項(xiàng)硬體參數(shù)的取得! 所以我們會(huì)知道很多的硬體上頭都會(huì)有ROM來(lái)寫(xiě)入韌體這個(gè)軟體。
BIOS 對(duì)電腦系統(tǒng)來(lái)講是非常重要的,因?yàn)樗莆樟讼到y(tǒng)硬體的詳細(xì)資訊與開(kāi)機(jī)設(shè)備的選擇等等。但是電腦發(fā)展的速度太快了, 因此 BIOS 程式碼也可能需要作適度的修改才行,所以你才會(huì)在很多主機(jī)板官網(wǎng)找到 BIOS 的更新程式啊!但是 BIOS 原本使用的是無(wú)法改寫(xiě)的 ROM ,因此根本無(wú)法修正 BIOS 程式碼!為此,現(xiàn)在的 BIOS 通常是寫(xiě)入類(lèi)似快閃記憶體 (flash) 或 EEPROM (註8) 中。(註9)
顯示卡
顯示卡插槽如同圖 2.1.3、技嘉主機(jī)板示意圖所示,是在中央較長(zhǎng)的插槽! 這張主機(jī)板中提供了兩個(gè)顯示卡插槽喔!
顯示卡又稱(chēng)為VGA(Video Graphics Array),他對(duì)於圖形影像的顯示扮演相當(dāng)關(guān)鍵的角色。 一般對(duì)於圖形影像的顯示重點(diǎn)在於解析度與色彩深度,因?yàn)槊總€(gè)圖像顯示的顏色會(huì)佔(zhàn)用掉記憶體, 因此顯示卡上面會(huì)有一個(gè)記憶體的容量,這個(gè)顯示卡記憶體容量將會(huì)影響到最終你的螢?zāi)唤馕龆扰c色彩深度的喔!
除了顯示卡記憶體之外,現(xiàn)在由於三度空間遊戲(3D game)與一些3D動(dòng)畫(huà)的流行,因此顯示卡的『運(yùn)算能力』越來(lái)越重要。 一些3D的運(yùn)算早期是交給CPU去運(yùn)作的,但是CPU並非完全針對(duì)這些3D來(lái)進(jìn)行設(shè)計(jì)的,而且CPU平時(shí)已經(jīng)非常忙碌了呢! 所以後來(lái)顯示卡廠商直接在顯示卡上面嵌入一個(gè)3D加速的晶片,這就是所謂的GPU稱(chēng)謂的由來(lái)。
顯示卡主要也是透過(guò)北橋晶片與CPU、主記憶體等溝通。如前面提到的,對(duì)於圖形影像(尤其是3D遊戲)來(lái)說(shuō), 顯示卡也是需要高速運(yùn)算的一個(gè)元件,所以資料的傳輸也是越快越好!因此顯示卡的規(guī)格由早期的PCI導(dǎo)向AGP, 近期AGP又被PCI-Express規(guī)格所取代了。如前面技嘉主機(jī)板圖示當(dāng)中看到的就是PCI-Express的插槽。 這些插槽最大的差異就是在資料傳輸?shù)念l寬了!如下所示:
| 規(guī)格 | 寬度 | 速度 | 頻寬 |
| PCI | 32 bits | 33 MHz | 133 MBytes/s |
| PCI 2.2 | 64 bits | 66 MHz | 533 MBytes/s |
| PCI-X | 64 bits | 133 MHz | 1064 MBytes/s |
| AGP 4x | 32 bits | 66x4 MHz | 1066 MBytes/s |
| AGP 8x | 32 bits | 66x8 MHz | 2133 MBytes/s |
| PCIe x1 | 無(wú) | 無(wú) | 250 MBytes/s |
| PCIe x8 | 無(wú) | 無(wú) | 2 GBytes/s |
| PCIe x16 | 無(wú) | 無(wú) | 4 GBytes/s |
比較特殊的是,PCIe(PCI-Express)使用的是類(lèi)似管線的概念來(lái)處理,每條管線可以具有250MBytes/s的頻寬效能, 管線越大(最大可達(dá)x32)則總頻寬越高!目前顯示卡大多使用x16的PCIe規(guī)格,這個(gè)規(guī)格至少可以達(dá)到4GBytes/s的頻寬! 比起AGP是快很多的!此外,新的PCIe 2.0規(guī)格也已經(jīng)推出了,這個(gè)規(guī)格又可將每個(gè)管線的效能提升一倍呢! 好可怕的傳輸量....
如果你的主機(jī)是用來(lái)打3D遊戲的,那麼顯示卡的選購(gòu)是非常重要喔!如果你的主機(jī)是用來(lái)做為網(wǎng)路伺服器的, 那麼簡(jiǎn)單的入門(mén)級(jí)顯示卡對(duì)你的主機(jī)來(lái)說(shuō)就非常夠用了!因?yàn)榫W(wǎng)路伺服器很少用到3D與圖形影像功能。
| 例題: 假設(shè)你的桌面使用1024x768解析度,且使用全彩(每個(gè)像素佔(zhàn)用3bytes的容量),請(qǐng)問(wèn)你的顯示卡至少需要多少記憶體才能使用這樣的彩度? 答: 因?yàn)?024x768解析度中會(huì)有786432個(gè)像素,每個(gè)像素佔(zhàn)用3bytes,所以總共需要2.25MBytes以上才行!但如果考慮螢?zāi)坏母侣?每秒鐘螢?zāi)坏母麓螖?shù)),顯示卡的記憶體還是越大越好! |
?
硬碟與儲(chǔ)存設(shè)備
電腦總是需要記錄與讀取資料的,而這些資料當(dāng)然不可能每次都由使用者經(jīng)過(guò)鍵盤(pán)來(lái)打字!所以就需要有儲(chǔ)存設(shè)備咯。 電腦系統(tǒng)上面的儲(chǔ)存設(shè)備包括有:硬碟、軟碟、MO、CD、DVD、磁帶機(jī)、隨身碟(快閃記憶體)、還有新一代的藍(lán)光光碟機(jī)等, 乃至於大型機(jī)器的區(qū)域網(wǎng)路儲(chǔ)存設(shè)備(SAN, NAS)等等,都是可以用來(lái)儲(chǔ)存資料的。而其中最常見(jiàn)的應(yīng)該就是硬碟了吧!
?
- 硬碟的物理組成
大家應(yīng)該都看過(guò)硬碟吧!硬碟依據(jù)桌上型與筆記型電腦而有分為3.5吋及2.5吋的大小。我們以3.5吋的桌上型電腦使用硬碟來(lái)說(shuō)明。 在硬碟盒裡面其實(shí)是由許許多多的圓形磁碟盤(pán)、機(jī)械手臂、 磁碟讀取頭與主軸馬達(dá)所組成的,整個(gè)內(nèi)部如同下圖所示:
圖2.4.1、硬碟物理構(gòu)造(圖片取自維基百科)
?
實(shí)際的資料都是寫(xiě)在具有磁性物質(zhì)的磁碟盤(pán)上頭,而讀寫(xiě)主要是透過(guò)在機(jī)械手臂上的讀取頭(head)來(lái)達(dá)成。 實(shí)際運(yùn)作時(shí), 主軸馬達(dá)讓磁碟盤(pán)轉(zhuǎn)動(dòng),然後機(jī)械手臂可伸展讓讀取頭在磁碟盤(pán)上頭進(jìn)行讀寫(xiě)的動(dòng)作。 另外,由於單一磁碟盤(pán)的容量有限,因此有的硬碟內(nèi)部會(huì)有兩個(gè)以上的磁碟盤(pán)喔!
- 磁碟盤(pán)上的資料
既然資料都是寫(xiě)入磁碟盤(pán)上頭,那麼磁碟盤(pán)上頭的資料又是如何寫(xiě)入的呢? 其實(shí)磁碟盤(pán)上頭的資料有點(diǎn)像下面的圖示所示:
圖2.4.2、磁碟盤(pán)上的資料格式
?
整個(gè)磁碟盤(pán)上頭好像有多個(gè)同心圓繪製出的圓形圖,而由圓心以放射狀的方式分割出磁碟的最小儲(chǔ)存單位,那就是磁區(qū)(Sector), 在物理組成分面,每個(gè)磁區(qū)大小為512Bytes,這個(gè)值是不會(huì)改變的。而磁區(qū)組成一個(gè)圓就成為磁軌(track), 如果是在多碟的硬碟上面,在所有磁碟盤(pán)上面的同一個(gè)磁軌可以組成一個(gè)磁柱(Cylinder), 磁柱也是一般我們分割硬碟時(shí)的最小單位了!
在計(jì)算整個(gè)硬碟的儲(chǔ)存量時(shí),簡(jiǎn)單的計(jì)算公式就是:『header數(shù)量 * 每個(gè)header負(fù)責(zé)的磁柱數(shù)量 * 每個(gè)磁柱所含有的磁區(qū)數(shù)量 * 磁區(qū)的容量』,單位換算為『header * cylinder/header * secter/cylinder * 512bytes/secter』,簡(jiǎn)單的寫(xiě)法如下: Head x Cylinder x Sector x 512 Bytes。 不過(guò)要注意的是,一般硬碟製造商在顯示硬碟的容量時(shí),大多是以十進(jìn)位來(lái)編號(hào),因此市售的500GB硬碟, 理論上僅會(huì)有460GBytes左右的容量喔!
?
- 傳輸介面
由於傳輸速度的需求提升,目前硬碟與主機(jī)系統(tǒng)的聯(lián)繫主要有幾種傳輸介面規(guī)格:
圖2.4.3、兩款硬碟介面(左邊為IDE介面,右邊為SATA介面)
- IDE介面:
如同圖 2.1.3、技嘉主機(jī)板圖示右側(cè)的較寬的插槽所示,那就是IDE的介面插槽。 IDE介面插槽所使用的排線較寬,每條排線上面可以接兩個(gè)IDE裝置,由於可以接兩個(gè)裝置,那為了判別兩個(gè)裝置的主/從架構(gòu), 因此這種磁碟機(jī)上面需要調(diào)整跳針(Jump)成為Master或slave才行喔!這種介面的最高傳輸速度為Ultra 133規(guī)格, 亦即每秒理論傳輸速度可達(dá)133MBytes。
圖2.4.4、IDE 介面的排線 (圖示取自 Seagate 網(wǎng)站)
? SATA介面:
如同技嘉主機(jī)板圖示右下方所示為SATA硬碟的連接介面插槽。 我們可以看到該插槽要比IDE介面的小很多,每條SATA連接線僅能接一個(gè)SATA裝置。SATA介面除了速度較快之外, 由於其排線較細(xì)小所以有利於主機(jī)機(jī)殼內(nèi)部的散熱與安裝!目前SATA已經(jīng)發(fā)展到了第二代, 其速度由SATA-1的每秒150MBytes提升到SATA-2每秒300MBytes的傳輸速度喔, 也因此目前主流的個(gè)人電腦硬碟已經(jīng)被SATA取代了。SATA的插槽示意圖如下所示:
圖2.4.5、SATA 介面的排線 (圖示取自 Seagate 網(wǎng)站)
由於SATA一條排線僅接一顆硬碟,所以?shī)叢恍枰{(diào)整跳針。不過(guò)一張主機(jī)板上面SATA插槽的數(shù)量並不是固定的, 且每個(gè)插槽都有編號(hào),在連接SATA硬碟與主機(jī)板的時(shí)候,還是需要留意一下。
? SCSI介面:
另一種常見(jiàn)於工作站等級(jí)以上的硬碟傳輸介面為SCSI介面,這種介面的硬碟在控制器上含有一顆處理器, 所以除了運(yùn)轉(zhuǎn)速度快之外,也比較不會(huì)耗費(fèi)CPU資源喔!在個(gè)人電腦上面這種介面的硬碟不常見(jiàn)啦!
- 選購(gòu)與運(yùn)轉(zhuǎn)須知
如果你想要增加一顆硬碟在你的主機(jī)裡頭時(shí),除了需要考慮你的主機(jī)板可接受的插槽介面(IDE/SATA)之外, 還有什麼要注意的呢?
- 容量
通常首先要考量的就是容量的問(wèn)題!目前(2009)主流市場(chǎng)硬碟容量已經(jīng)到達(dá)320GB以上,甚至有的廠商已經(jīng)生產(chǎn)高達(dá) 2TB 的產(chǎn)品呢!硬碟可能可以算是一種消耗品,要注意重要資料還是得常常備份出來(lái)喔!
? - 緩衝記憶體
硬碟上頭含有一個(gè)緩衝記憶體,這個(gè)記憶體主要可以將硬碟內(nèi)常使用的資料快取起來(lái),以加速系統(tǒng)的讀取效能。 通常這個(gè)緩衝記憶體越大越好,因?yàn)榫徯n記憶體的速度要比資料從硬碟盤(pán)中被找出來(lái)要快的多了! 目前主流的產(chǎn)品可達(dá)16MB左右的記憶體大小喔。
? - 轉(zhuǎn)速
因?yàn)橛驳饕抢弥鬏S馬達(dá)轉(zhuǎn)動(dòng)磁碟盤(pán)來(lái)存取,因此轉(zhuǎn)速的快慢會(huì)影響到效能。 主流的桌上型電腦硬碟為每分鐘7200轉(zhuǎn),筆記型電腦則是5400轉(zhuǎn)。有的廠商也有推出高達(dá)10000轉(zhuǎn)的硬碟, 若有高效能的資料存取需求,可以考慮購(gòu)買(mǎi)高轉(zhuǎn)速硬碟。
? - 運(yùn)轉(zhuǎn)須知
由於硬碟內(nèi)部機(jī)械手臂上的磁頭與硬碟盤(pán)的接觸是很細(xì)微的空間, 如果有抖動(dòng)或者是髒污在磁頭與硬碟盤(pán)之間就會(huì)造成資料的損毀或者是實(shí)體硬碟整個(gè)損毀~ 因此,正確的使用電腦的方式,應(yīng)該是在電腦通電之後,就絕對(duì)不要移動(dòng)主機(jī),並免抖動(dòng)到硬碟, 而導(dǎo)致整個(gè)硬碟資料發(fā)生問(wèn)題啊!另外,也不要隨便將插頭拔掉就以為是順利關(guān)機(jī)!因?yàn)闄C(jī)械手臂必須要?dú)w回原位, 所以使用作業(yè)系統(tǒng)的正常關(guān)機(jī)方式,才能夠有比較好的硬碟保養(yǎng)啊!因?yàn)樗麜?huì)讓硬碟的機(jī)械手臂歸回原位啊!
| Tips: 可能因?yàn)榄h(huán)境的關(guān)係,電腦內(nèi)部的風(fēng)扇常常會(huì)卡灰塵而造成一些聲響。很多朋友只要聽(tīng)到這種聲響都是二話不說(shuō)的 『用力拍幾下機(jī)殼』就沒(méi)有聲音了~現(xiàn)在你知道了,這麼做的後果常常就是你的硬碟容易壞掉! 下次千萬(wàn)不要再這樣做囉! |
PCI介面卡
PCI介面卡的插槽就如同圖2.1.3、技嘉主機(jī)板示意圖所示的左下方那個(gè)白色的插槽, 這種PCI插槽通常會(huì)提供多個(gè)給使用者,如果使用者有額外需要的功能卡, 就能夠安插在這種PCI介面插槽上。
我們?cè)谇懊骘@示卡的部分稍微談過(guò)PCI介面,事實(shí)上有相當(dāng)多的元件是使用PCI介面作為傳輸?shù)?#xff0c; 例如網(wǎng)路卡、音效卡、特殊功能卡等等。但由於PCI Express規(guī)格的發(fā)展,很多製造商都往PCIe介面開(kāi)發(fā)硬體了。 不過(guò)還是有很多硬體使用PCI介面啦,例如大賣(mài)場(chǎng)上面常見(jiàn)的網(wǎng)路卡就是一個(gè)。
目前在個(gè)人電腦上面常見(jiàn)到的網(wǎng)路卡是一種稱(chēng)為乙太網(wǎng)路(Ethernet)的規(guī)格,目前乙太網(wǎng)路卡速度輕輕鬆鬆的就能到達(dá)10/100/1000 Mbits/second的速度,但同樣速度的乙太網(wǎng)路卡所支援的標(biāo)準(zhǔn)可能不太一樣,因此造成的價(jià)差是非常大的。 如果想要在伺服器主機(jī)上面安裝新的網(wǎng)路卡時(shí),得要特別注意標(biāo)準(zhǔn)的差異呢!
由於各元件的價(jià)格直直落,現(xiàn)在主機(jī)板上面通常已經(jīng)整合了相當(dāng)多的設(shè)備元件了! 常見(jiàn)整合到主機(jī)板的元件包括音效卡、網(wǎng)路卡、USB控制卡、顯示卡、磁碟陣列卡等等。 你可以在主機(jī)板上面發(fā)現(xiàn)很多方形的晶片,那通常是一些個(gè)別的設(shè)備晶片喔。 由於主機(jī)板已經(jīng)整合了很多常用的功能晶片,所以現(xiàn)在的主機(jī)板上面所安插的PCI介面卡就少很多了!
主機(jī)板
主機(jī)板可以說(shuō)是整部主機(jī)相當(dāng)重要的一個(gè)部分,因?yàn)樯厦嫖覀兯劦降乃性际前膊逶谥鳈C(jī)板上面的呢! 而主機(jī)板上面負(fù)責(zé)溝通各個(gè)元件的就是晶片組,如同圖2.1.1、Intel晶片組圖示所示, 圖中我們也可以發(fā)現(xiàn)晶片組一般分為北橋與南橋喔!北橋負(fù)責(zé)CPU/RAM/VGA等的連接,南橋則負(fù)責(zé)PCI介面與速度較慢的I/O裝置。
由於晶片組負(fù)責(zé)所有設(shè)備的溝通,所以事實(shí)上晶片組(尤其是北橋)也是一個(gè)可能會(huì)散發(fā)出高熱量的元件。 因此在主機(jī)板上面常會(huì)發(fā)現(xiàn)一些外接的小風(fēng)扇或者是散熱片在這組晶片上面。在本章所附的主機(jī)板圖示中, 技嘉使用較高散熱能力的熱導(dǎo)管技術(shù),因此你可以發(fā)現(xiàn)圖中的南橋與北橋上面覆蓋著黃銅色的散熱片, 且連接著數(shù)根圓形導(dǎo)管,主要就是為了要散熱的。
?
- 晶片組功能
所有的晶片組幾乎都是參考CPU的能力去規(guī)劃的,而CPU能夠接受的主記憶體規(guī)格也不相同,因此在新購(gòu)買(mǎi)或升級(jí)主機(jī)時(shí),CPU、主機(jī)板、主記憶體與相關(guān)的周邊設(shè)備都需要同時(shí)考慮才行 !此外,每一種晶片組的功能可能都不太相同, 有的晶片組強(qiáng)調(diào)的是全功能,因此連顯示卡、音效、網(wǎng)路等都整合了,在這樣的整合型晶片中, 你幾乎只要購(gòu)買(mǎi)CPU、主機(jī)板、主記憶體再加上硬碟,就能夠組裝成一部主機(jī)了。不過(guò)整合型晶片的效能通常比較弱, 對(duì)於愛(ài)玩3D遊戲的玩家以及強(qiáng)調(diào)高效能運(yùn)算的主機(jī)來(lái)說(shuō),就不是這麼適合了。
至於獨(dú)立型晶片組雖然可能具有較高的效能,不過(guò)你可能必須要額外負(fù)擔(dān)周邊設(shè)備的CoCo呢! 例如顯示卡、網(wǎng)路卡、音效卡等等。但獨(dú)立型晶片組也有一定程度的好處,那就是你可以隨時(shí)抽換周邊設(shè)備。
?
- 設(shè)備I/O位址與IRQ中斷通道
主機(jī)板是負(fù)責(zé)各個(gè)電腦元件之間的溝通,但是電腦元件實(shí)在太多了,有輸出/輸入/不同的儲(chǔ)存裝置等等, 主機(jī)板晶片組怎麼知道如何負(fù)責(zé)溝通吶?這個(gè)時(shí)候就需要用到所謂的I/O位址與IRQ囉!
I/O位址有點(diǎn)類(lèi)似每個(gè)裝置的門(mén)牌號(hào)碼,每個(gè)裝置都有他自己的位址,一般來(lái)說(shuō),不能有兩個(gè)裝置使用同一個(gè)I/O位址, 否則系統(tǒng)就會(huì)不曉得該如何運(yùn)作這兩個(gè)裝置了。而除了I/O位址之外,還有個(gè)IRQ中斷(Interrupt)這個(gè)咚咚。
如果I/O位址想成是各裝置的門(mén)牌號(hào)碼的話,那麼IRQ就可以想成是各個(gè)門(mén)牌連接到郵件中心(CPU)的專(zhuān)門(mén)路徑囉! 各裝置可以透過(guò)IRQ中斷通道來(lái)告知CPU該裝置的工作情況,以方便CPU進(jìn)行工作分配的任務(wù)。 老式的主機(jī)板晶片組IRQ只有15個(gè),如果你的周邊介面太多時(shí)可能就會(huì)不夠用, 這個(gè)時(shí)候你可以選擇將一些沒(méi)有用到的周邊介面關(guān)掉,以空出一些IRQ來(lái)給真正需要使用的介面喔! 當(dāng)然,也有所謂的sharing IRQ的技術(shù)就是了!
?
- CMOS與BIOS
前面記憶體的地方我們有提過(guò)CMOS與BIOS的功能,在這裡我們?cè)賮?lái)強(qiáng)調(diào)一下: CMOS主要的功能為記錄主機(jī)板上面的重要參數(shù), 包括系統(tǒng)時(shí)間、CPU電壓與頻率、各項(xiàng)設(shè)備的I/O位址與IRQ等,由於這些資料的記錄要花費(fèi)電力,因此主機(jī)板上面才有電池。 BIOS為寫(xiě)入到主機(jī)板上某一塊 flash 或 EEPROM 的程式,他可以在開(kāi)機(jī)的時(shí)候執(zhí)行,以載入CMOS當(dāng)中的參數(shù), 並嘗試呼叫儲(chǔ)存裝置中的開(kāi)機(jī)程式,進(jìn)一步進(jìn)入作業(yè)系統(tǒng)當(dāng)中。BIOS程式也可以修改CMOS中的資料, 每種主機(jī)板呼叫BIOS設(shè)定程式的按鍵都不同,一般桌上型電腦常見(jiàn)的是使用[del]按鍵進(jìn)入BIOS設(shè)定畫(huà)面。
?
- 連接周邊設(shè)備的介面
主機(jī)板與各項(xiàng)輸出/輸入設(shè)備的連結(jié)主要都是在主機(jī)機(jī)殼的後方,主要有:
- PS/2介面:這是常見(jiàn)的鍵盤(pán)與滑鼠的介面,不過(guò)漸漸有被USB介面取代的趨勢(shì);
- USB介面:目前相當(dāng)流行的一個(gè)介面,支援隨插即用。 主流的USB版本為USB 2.0,這個(gè)規(guī)格的速度可達(dá)480Mbps,相對(duì)之下的USB 1.1僅達(dá)12Mbps差異很大,購(gòu)買(mǎi)周邊設(shè)備要注意啊! 不然copy一些資料到USB硬碟時(shí),會(huì)吐血....
- 聲音輸出、輸入與麥克風(fēng):這個(gè)是一些圓形的插孔, 而必須你的主機(jī)板上面有內(nèi)建音效晶片時(shí),才會(huì)有這三個(gè)東西;
- RJ-45網(wǎng)路頭:如果有內(nèi)建網(wǎng)路晶片的話,那麼就會(huì)有這種接頭出現(xiàn)。 這種接頭有點(diǎn)類(lèi)似電話接頭,不過(guò)內(nèi)部有八蕊線喔!接上網(wǎng)路線後在這個(gè)接頭上會(huì)有燈號(hào)亮起才對(duì)!
- 其他過(guò)時(shí)介面:包括早期的用來(lái)連結(jié)滑鼠的九針序列埠(com1),以及連結(jié)印表機(jī)的25針並列埠(LPT1)等等。
我們以技嘉主機(jī)板的連結(jié)介面來(lái)看的話,主要有這些:
圖2.6.1、連接周邊介面
電源供應(yīng)器
除了上面這些元件之外,其實(shí)還有一個(gè)很重要的元件也要來(lái)談一談,那就是電源供應(yīng)器(Power)。 在你的機(jī)殼內(nèi),有個(gè)大大的鐵盒子,上頭有很多電源線會(huì)跑出來(lái),那就是電源供應(yīng)器了。 我們的CPU/RAM/主機(jī)板/硬碟等等都需要用電,而近來(lái)的電腦元件耗電量越來(lái)越高,以前很古早的230W電源已經(jīng)不夠用了, 有的系統(tǒng)甚至得要有500W以上的電源才能夠運(yùn)作~真可怕~
電源供應(yīng)器的價(jià)差非常大!貴一點(diǎn)的300W可以到4000 NT,便宜一點(diǎn)的300W只要500 NT不到! 怎麼差這麼多?沒(méi)錯(cuò)~因?yàn)镻ower的用料不同,電源供應(yīng)的穩(wěn)定度也會(huì)差很多。如前所述,電源供應(yīng)器相當(dāng)於你的心臟, 心臟差的話,活動(dòng)力就會(huì)不足了!所以, 穩(wěn)定度差的電源供應(yīng)器甚至是造成電腦不穩(wěn)定的元兇呢!所以,盡量不要使用太差的電源供應(yīng)器喔!
?
- 能源轉(zhuǎn)換率
電源供應(yīng)器本身也會(huì)吃掉一部份的電力的!如果你的主機(jī)系統(tǒng)需要 300W 的電力時(shí),因?yàn)殡娫垂?yīng)器本身也會(huì)消耗掉一部份的電力, 因此你最好要挑選400W以上的電源供應(yīng)器。電源供應(yīng)器出廠前會(huì)有一些測(cè)試數(shù)據(jù),最好挑選高轉(zhuǎn)換率的電源供應(yīng)器。 所謂的高轉(zhuǎn)換率指的是『輸出的功率/輸入的功率』。意思是說(shuō),假如你的主機(jī)板用電量為250W, 但是電源供應(yīng)器其實(shí)已經(jīng)使用掉320W的電力,則轉(zhuǎn)換率為:250/320=0.78的意思。 這個(gè)數(shù)值越高表示被電源供應(yīng)器『玩掉』的電力越少,那就符合能源效益了!^_^
?
- 連接介面
目前主機(jī)板與電源供應(yīng)器的連接介面主要有20pin與24pin兩種規(guī)格,購(gòu)買(mǎi)時(shí)也需要考慮你的主機(jī)板所需要的規(guī)格喔!
選購(gòu)須知
在購(gòu)買(mǎi)主機(jī)時(shí)應(yīng)該需要進(jìn)行整體的考量,很難依照某一項(xiàng)標(biāo)準(zhǔn)來(lái)選購(gòu)的。 老實(shí)說(shuō),如果你的公司需要一部伺服器的話,建議不要自行組裝,買(mǎi)品牌電腦的伺服器比較好! 這是因?yàn)樽孕薪M裝的電腦雖然比較便宜,但是每項(xiàng)設(shè)備之間的適合性是否完美則有待自行檢測(cè)。
另外,在效能方面並非僅考量CPU的能力而已,速度的快慢與『整體系統(tǒng)的最慢的那個(gè)設(shè)備有關(guān)!』,如果你是使用最快速的Intel Core 2 Duo,使用最快的DDR II記憶體, 但是配上一個(gè)慢慢的過(guò)時(shí)顯示卡,那麼整體的3D速度效能將會(huì)卡在那個(gè)顯示卡上面喔!所以,在購(gòu)買(mǎi)整套系統(tǒng)時(shí), 請(qǐng)?zhí)貏e留意需要全部的介面都考慮進(jìn)去喔!尤其是當(dāng)您想要升級(jí)時(shí),要特別注意這個(gè)問(wèn)題, 並非所有的舊的設(shè)備都適合繼續(xù)使用的。
?
- 系統(tǒng)不穩(wěn)定的可能原因
除此之外,到底那個(gè)元件特別容易造成系統(tǒng)的不穩(wěn)定呢?有幾個(gè)常見(jiàn)的系統(tǒng)不穩(wěn)定的狀態(tài)是:
- 系統(tǒng)超頻:這個(gè)行為很不好!不要這麼做!
? - 電源供應(yīng)器不穩(wěn): 這也是個(gè)很?chē)?yán)重的問(wèn)題,當(dāng)您測(cè)試完所有的元件都沒(méi)有啥大問(wèn)題時(shí),記得測(cè)試一下電源供應(yīng)器的穩(wěn)定度!
? - 記憶體無(wú)法負(fù)荷:現(xiàn)在的記憶體品質(zhì)差很多,差一點(diǎn)的記憶體,可能會(huì)造成您的主機(jī)在忙碌的工作時(shí), 產(chǎn)生不穩(wěn)定或當(dāng)機(jī)的現(xiàn)象喔!
? - 系統(tǒng)過(guò)熱:『熱』是造成電子零件運(yùn)作不良的主因之一,如果您的主機(jī)在夏天容易當(dāng)機(jī), 冬天卻還好,那麼考慮一下加幾個(gè)風(fēng)扇吧!有助於機(jī)殼內(nèi)的散熱,系統(tǒng)會(huì)比較穩(wěn)定喔! 『 這個(gè)問(wèn)題也是很常見(jiàn)的系統(tǒng)當(dāng)機(jī)的元兇!』(鳥(niǎo)哥之前的一臺(tái)伺服器老是容易當(dāng)機(jī), 後來(lái)拆開(kāi)機(jī)殼研究後才發(fā)現(xiàn)原來(lái)是北橋上面的小風(fēng)扇壞掉了,導(dǎo)致北橋溫度太高。後來(lái)?yè)Q掉風(fēng)扇就穩(wěn)定多了。)
| Tips: 事實(shí)上,要瞭解每個(gè)硬體的詳細(xì)架構(gòu)與構(gòu)造是很難的!這裡鳥(niǎo)哥僅是列出一些比較基本的概念而已。 另外,要知道某個(gè)硬體的製造商是哪間公司時(shí),可以看該硬體上面的資訊。 舉例來(lái)說(shuō),主機(jī)板上面都會(huì)列出這個(gè)主機(jī)板的開(kāi)發(fā)商與主機(jī)板的型號(hào),知道這兩個(gè)資訊就可以找到驅(qū)動(dòng)程式了。 另外,顯示卡上面有個(gè)小小的晶片,上面也會(huì)列出顯示卡廠商與晶片資訊喔。 |
資料表示方式
事實(shí)上我們的電腦只認(rèn)識(shí)0與1,記錄的資料也是只能記錄0與1而已,所以電腦常用的資料是二進(jìn)位的。 但是我們?nèi)祟?lèi)常用的數(shù)值運(yùn)算是十進(jìn)位,文字方面則有非常多的語(yǔ)言,臺(tái)灣常用的語(yǔ)言就有英文、中文(又分正體與簡(jiǎn)體中文)、日文等。 那麼電腦如何記錄與顯示這些數(shù)值/文字呢?就得要透過(guò)一系列的轉(zhuǎn)換才可以啦!底下我們就來(lái)談?wù)剶?shù)值與文字的編碼系統(tǒng)囉!
數(shù)字系統(tǒng)
早期的電腦使用的是利用通電與否的特性的真空管,如果通電就是1,沒(méi)有通電就是0, 後來(lái)沿用至今,我們稱(chēng)這種只有0/1的環(huán)境為二進(jìn)位制,英文稱(chēng)為binary的哩。所謂的十進(jìn)位指的是逢十進(jìn)一位, 因此在個(gè)位數(shù)歸為零而十位數(shù)寫(xiě)成1。所以所謂的二進(jìn)位,就是逢二就前進(jìn)一位的意思。
那二進(jìn)位怎麼用呢?我們先以十進(jìn)位來(lái)解釋好了。如果以十進(jìn)位來(lái)說(shuō),3456的意義為:
3456 = 3x103 + 4x102 + 5x101 + 6x100特別注意:『任何數(shù)值的零次方為1』所以100的結(jié)果就是1囉。 同樣的,將這個(gè)原理帶入二進(jìn)位的環(huán)境中,我們來(lái)解釋一下1101010的數(shù)值轉(zhuǎn)為十進(jìn)位的話,結(jié)果如下:
1101010=1x26 + 1x25 + 0x24 + 1x23 + 0x22 + 1x21 + 0x20= 64 + 32 + 0x16 + 8 + 0x4 + 2 + 0x1 = 106
這樣你瞭解二進(jìn)位的意義了嗎?二進(jìn)位是電腦基礎(chǔ)中的基礎(chǔ)喔!瞭解了二進(jìn)位後,八進(jìn)位、十六進(jìn)位就依此類(lèi)推啦! 那麼知道二進(jìn)位轉(zhuǎn)成十進(jìn)位後,那如果有十進(jìn)位數(shù)值轉(zhuǎn)為二進(jìn)位的環(huán)境時(shí),該如何計(jì)算? 剛剛是乘法,現(xiàn)在則是除法就對(duì)了!我們同樣的使用十進(jìn)位的106轉(zhuǎn)成二進(jìn)位來(lái)測(cè)試一下好了:
圖3.1.1、十進(jìn)位轉(zhuǎn)二進(jìn)位的方法
最後的寫(xiě)法就如同上面的紅色箭頭,由最後的數(shù)字向上寫(xiě),因此可得到1101010的數(shù)字囉! 這些數(shù)字的轉(zhuǎn)換系統(tǒng)是非常重要的,因?yàn)殡娔X的加減乘除都是使用這些機(jī)制來(lái)處理的! 有興趣的朋友可以再參考一下其他計(jì)算計(jì)概論的書(shū)籍中,關(guān)於1的補(bǔ)數(shù)/2的補(bǔ)數(shù)等運(yùn)算方式喔!
文字編碼系統(tǒng)
既然電腦都只有記錄0/1而已,甚至記錄的資料都是使用byte/bit等單位來(lái)記錄的,那麼文字該如何記錄啊? 事實(shí)上文字檔案也是被記錄為0與1而已,而這個(gè)檔案的內(nèi)容要被取出來(lái)查閱時(shí),必須要經(jīng)過(guò)一個(gè)編碼系統(tǒng)的處理才行。 所謂的『編碼系統(tǒng)』可以想成是一個(gè)『字碼對(duì)照表』,他的概念有點(diǎn)像底下的圖示:
圖3.2.1、資料參考編碼表的示意圖
當(dāng)我們要寫(xiě)入檔案的文字資料時(shí),該文字資料會(huì)由編碼對(duì)照表將該文字轉(zhuǎn)成數(shù)字後,再存入檔案當(dāng)中。 同樣的,當(dāng)我們要將檔案內(nèi)容的資料讀出時(shí),也會(huì)經(jīng)過(guò)編碼對(duì)照表將該數(shù)字轉(zhuǎn)成對(duì)應(yīng)的文字後,再顯示到螢?zāi)簧稀?現(xiàn)在你知道為何瀏覽器上面如果編碼寫(xiě)錯(cuò)時(shí),會(huì)出現(xiàn)亂碼了嗎?這是因?yàn)榫幋a對(duì)照表寫(xiě)錯(cuò), 導(dǎo)致對(duì)照的文字產(chǎn)生誤差之故啦!
常用的英文編碼表為ASCII系統(tǒng),這個(gè)編碼系統(tǒng)中, 每個(gè)符號(hào)(英文、數(shù)字或符號(hào)等)都會(huì)佔(zhàn)用1bytes的記錄, 因此總共會(huì)有28=256種變化。至於中文字當(dāng)中的編碼系統(tǒng)目前最常用的就是big5這個(gè)編碼表了。 每個(gè)中文字會(huì)佔(zhàn)用2bytes,理論上最多可以有216=65536,亦即最多可達(dá)6萬(wàn)多個(gè)中文字。 但是因?yàn)閎ig5編碼系統(tǒng)並非將所有的位元都拿來(lái)運(yùn)用成為對(duì)照,所以並非可達(dá)這麼多的中文字碼的。 目前big5僅定義了一萬(wàn)三千多個(gè)中文字,很多中文利用big5是無(wú)法成功顯示的~所以才會(huì)有造字程式說(shuō)。
big5碼的中文字編碼對(duì)於某些資料庫(kù)系統(tǒng)來(lái)說(shuō)是很有問(wèn)題的,某些字碼例如『許、蓋、功』等字, 由於這幾個(gè)字的內(nèi)部編碼會(huì)被誤判為單/雙引號(hào),在寫(xiě)入還不成問(wèn)題,在讀出資料的對(duì)照表時(shí), 常常就會(huì)變成亂碼。不只中文字,其他非英語(yǔ)系國(guó)家也常常會(huì)有這樣的問(wèn)題出現(xiàn)啊!
為了解決這個(gè)問(wèn)題,由國(guó)際組織ISO/IEC跳出來(lái)制訂了所謂的Unicode編碼系統(tǒng), 我們常常稱(chēng)呼的UTF8或萬(wàn)國(guó)碼的編碼就是這個(gè)咚咚。因?yàn)檫@個(gè)編碼系統(tǒng)打破了所有國(guó)家的不同編碼, 因此目前網(wǎng)際網(wǎng)路社會(huì)大多朝向這個(gè)編碼系統(tǒng)在走,所以各位親愛(ài)的朋友啊,記得將你的編碼系統(tǒng)修訂一下喔!
軟體程式運(yùn)作
鳥(niǎo)哥在上課時(shí)常常會(huì)開(kāi)玩笑的問(wèn):『我們知道沒(méi)有插電的電腦是一堆廢鐵,那麼插了電的電腦是什麼?』 答案是:『一堆會(huì)電人的廢鐵』!這是因?yàn)闆](méi)有軟體的運(yùn)作,電腦的功能就無(wú)從發(fā)揮之故。 就好像沒(méi)有了靈魂的軀體也不過(guò)就是行屍走肉,重點(diǎn)在於軟體/靈魂囉!所以底下咱們就得要瞭解一下『軟體』是什麼。
一般來(lái)說(shuō),目前的電腦系統(tǒng)將軟體分為兩大類(lèi),一個(gè)是系統(tǒng)軟體,一個(gè)是應(yīng)用程式。但鳥(niǎo)哥認(rèn)為我們還是得要瞭解一下什麼是程式, 尤其是機(jī)器程式,瞭解了之後再來(lái)探討一下為什麼現(xiàn)今的電腦系統(tǒng)需要『作業(yè)系統(tǒng)』這玩意兒呢!
?
機(jī)器程式與編譯程式
我們前面談到電腦只認(rèn)識(shí)0與1而已,而且電腦最重要的運(yùn)算與邏輯判斷是在CPU內(nèi)部, 而CPU其實(shí)是具有微指令集的。因此,我們需要CPU幫忙工作時(shí),就得要參考微指令集的內(nèi)容, 然後撰寫(xiě)讓CPU讀的懂得指令碼給CPU執(zhí)行,這樣就能夠讓CPU運(yùn)作了。
不過(guò)這樣的流程有幾個(gè)很麻煩的地方,包括:
- 需要瞭解機(jī)器語(yǔ)言:機(jī)器只認(rèn)識(shí)0與1,因此你必須要學(xué)習(xí)直接寫(xiě)給機(jī)器看的語(yǔ)言! 這個(gè)地方相當(dāng)?shù)碾y呢!
? - 需要瞭解所有硬體的相關(guān)功能函數(shù):因?yàn)槟愕某淌奖仨氁獙?xiě)給機(jī)器看, 當(dāng)然你就得要參考機(jī)器本身的功能,然後針對(duì)該功能去撰寫(xiě)程式碼。例如,你要讓DVD影片能夠放映, 那就得要參考DVD光碟機(jī)的硬體資訊才行。萬(wàn)一你的系統(tǒng)有比較冷門(mén)的硬體,光是參考技術(shù)手冊(cè)可能會(huì)昏倒~
? - 程式不具有可攜性:每個(gè)CPU都有獨(dú)特的微指令集,同樣的,每個(gè)硬體都有其功能函數(shù)。 因此,你為A電腦寫(xiě)的程式,理論上是沒(méi)有辦法在B電腦上面運(yùn)作的!而且程式碼的修改非常困難! 因?yàn)槭菣C(jī)器碼,並不是人類(lèi)看的懂得程式語(yǔ)言啊!
? - 程式具有專(zhuān)一性:因?yàn)檫@樣的程式必須要針對(duì)硬體功能函數(shù)來(lái)撰寫(xiě), 如果已經(jīng)開(kāi)發(fā)了一支瀏覽器程式,想要再開(kāi)發(fā)檔案管理程式時(shí),還是得從頭再參考硬體的功能函數(shù)來(lái)繼續(xù)撰寫(xiě), 每天都在和『硬體』挑戰(zhàn)!可能需要天天喝蠻牛了!@_@
那怎麼解決啊?為了解決這個(gè)問(wèn)題,電腦科學(xué)家設(shè)計(jì)出一種讓人類(lèi)看的懂得程式語(yǔ)言, 然後創(chuàng)造一種『編譯器』來(lái)將這些人類(lèi)能夠?qū)懙某淌秸Z(yǔ)言轉(zhuǎn)譯成為機(jī)器能看懂得機(jī)器碼, 如此一來(lái)我們修改與撰寫(xiě)程式就變的容易多了!目前常見(jiàn)的編譯器有C, C++, Java, Fortran等等。 機(jī)器語(yǔ)言與高階程式語(yǔ)言的差別如下所示:
圖4.1.1、編譯器的角色
從上面的圖示我們可以看到高階程式語(yǔ)言的程式碼是很容易察看的!鳥(niǎo)哥已經(jīng)將程式碼(英文)寫(xiě)成中文說(shuō)~ 這樣比較好理解啦!所以這樣已經(jīng)將程式的修改問(wèn)題處理完畢了。 問(wèn)題是,在這樣的環(huán)境底下我們還是得要考量整體的硬體系統(tǒng)來(lái)設(shè)計(jì)程式喔!
舉例來(lái)說(shuō),當(dāng)你需要將運(yùn)作的資料寫(xiě)入記憶體中,你就得要自行分配一個(gè)記憶體區(qū)塊出來(lái)讓自己的資料能夠填上去, 所以你還得要瞭解到記憶體的位址是如何定位的,啊!眼淚還是不知不覺(jué)的流了下來(lái)... 怎麼寫(xiě)程式這麼麻煩啊!
為了要克服硬體方面老是需要重複撰寫(xiě)控制碼的問(wèn)題,所以就有作業(yè)系統(tǒng)(Operating System, OS)的出現(xiàn)了! 什麼是作業(yè)系統(tǒng)呢?底下就來(lái)談一談先!
作業(yè)系統(tǒng)
如同前面提到的,在早期想要讓電腦執(zhí)行程式就得要參考一堆硬體功能函數(shù),並且學(xué)習(xí)機(jī)器語(yǔ)言才能夠撰寫(xiě)程式。 同時(shí)每次寫(xiě)程式時(shí)都必須要重新改寫(xiě),因?yàn)橛搀w與軟體功能不見(jiàn)得都一致之故。那如果我能夠?qū)⑺械挠搀w都驅(qū)動(dòng), 並且提供一個(gè)發(fā)展軟體的參考介面來(lái)給工程師開(kāi)發(fā)軟體的話,那發(fā)展軟體不就變的非常的簡(jiǎn)單了?那就是作業(yè)系統(tǒng)啦!
?
- 作業(yè)系統(tǒng)核心(Kernel)
作業(yè)系統(tǒng)(Operating System, OS)其實(shí)也是一組程式, 這組程式的重點(diǎn)在於管理電腦的所有活動(dòng)以及驅(qū)動(dòng)系統(tǒng)中的所有硬體。 我們剛剛談到電腦沒(méi)有軟體只是一堆廢鐵,那麼作業(yè)系統(tǒng)的功能就是讓CPU可以開(kāi)始判斷邏輯與運(yùn)算數(shù)值、 讓主記憶體可以開(kāi)始載入/讀出資料與程式碼、讓硬碟可以開(kāi)始被存取、讓網(wǎng)路卡可以開(kāi)始傳輸資料、 讓所有周邊可以開(kāi)始運(yùn)轉(zhuǎn)等等??傊?#xff0c;硬體的所有動(dòng)作都必須要透過(guò)這個(gè)作業(yè)系統(tǒng)來(lái)達(dá)成就是了。
上述的功能就是作業(yè)系統(tǒng)的核心(Kernel)了!你的電腦能不能做到某些事情,都與核心有關(guān)! 只有核心有提供的功能,你的電腦系統(tǒng)才能幫你完成!舉例來(lái)說(shuō),你的核心並不支援TCP/IP的網(wǎng)路協(xié)定, 那麼無(wú)論你購(gòu)買(mǎi)了什麼樣的網(wǎng)卡,這個(gè)核心都無(wú)法提供網(wǎng)路能力的!
但是單有核心我們使用者也不知道能作啥事的~因?yàn)楹诵闹饕诠芸赜搀w與提供相關(guān)的能力(例如網(wǎng)路功能), 這些管理的動(dòng)作是非常的重要的,如果使用者能夠直接使用到核心的話,萬(wàn)一使用者不小心將核心程式停止或破壞, 將會(huì)導(dǎo)致整個(gè)系統(tǒng)的崩潰!因此核心程式所放置到記憶體當(dāng)中的區(qū)塊是受保護(hù)的! 並且開(kāi)機(jī)後就一直常駐在記憶體當(dāng)中。
| Tips: 所以整部系統(tǒng)只有核心的話,我們就只能看著已經(jīng)準(zhǔn)備好運(yùn)作(Ready)的電腦系統(tǒng),但無(wú)法操作他! 好像有點(diǎn)望梅止渴的那種感覺(jué)啦!這個(gè)時(shí)候就需要軟體的幫忙了! |
- 系統(tǒng)呼叫(System Call)
既然我的硬體都是由核心管理,那麼如果我想要開(kāi)發(fā)軟體的話,自然就得要去參考這個(gè)核心的相關(guān)功能! 唔!如此一來(lái)不是從原本的參考硬體函數(shù)變成參考核心功能,還是很麻煩啊!有沒(méi)有更簡(jiǎn)單的方法啊!
為了解決這個(gè)問(wèn)題,作業(yè)系統(tǒng)通常會(huì)提供一整組的開(kāi)發(fā)介面給工程師來(lái)開(kāi)發(fā)軟體! 工程師只要遵守該開(kāi)發(fā)介面那就很容易開(kāi)發(fā)軟體了!舉例來(lái)說(shuō),我們學(xué)習(xí)C程式語(yǔ)言只要參考C程式語(yǔ)言的函式即可, 不需要再去考量其他核心的相關(guān)功能,因?yàn)楹诵牡南到y(tǒng)呼叫介面會(huì)主動(dòng)的將C程式語(yǔ)言的相關(guān)語(yǔ)法轉(zhuǎn)成核心可以瞭解的任務(wù)函數(shù), 那核心自然就能夠順利運(yùn)作該程式了!
如果我們將整個(gè)電腦系統(tǒng)的相關(guān)軟/硬體繪製成圖的話,他的關(guān)係有點(diǎn)像這樣:
圖4.2.1、作業(yè)系統(tǒng)的角色
?
電腦系統(tǒng)主要由硬體構(gòu)成,然後核心程式主要在管理硬體,提供合理的電腦系統(tǒng)資源分配(包括CPU資源、記憶體使用資源等等), 因此只要硬體不同(如x86架構(gòu)與RISC架構(gòu)的CPU),核心就得要進(jìn)行修改才行。 而由於核心只會(huì)進(jìn)行電腦系統(tǒng)的資源分配,所以在上頭還需要有應(yīng)用程式的提供,使用者才能夠操作系統(tǒng)的。
為了保護(hù)核心,並且讓程式設(shè)計(jì)師比較容易開(kāi)發(fā)軟體,因此作業(yè)系統(tǒng)除了核心程式之外,通常還會(huì)提供一整組開(kāi)發(fā)介面, 那就是系統(tǒng)呼叫層。軟體開(kāi)發(fā)工程師只要遵循公認(rèn)的系統(tǒng)呼叫參數(shù)來(lái)開(kāi)發(fā)軟體,該軟體就能夠在該核心上頭運(yùn)作。 所以你可以發(fā)現(xiàn),軟體與核心有比較大的關(guān)係,與硬體關(guān)係則不大!硬體也與核心有比較大的關(guān)係! 至於與使用者有關(guān)的,那就是應(yīng)用程式啦!
| Tips: 在定義上,只要能夠讓電腦硬體正確無(wú)誤的運(yùn)作,那就算是作業(yè)系統(tǒng)了。所以說(shuō), 作業(yè)系統(tǒng)其實(shí)就是核心與其提供的介面工具,不過(guò)就如同上面講的,因?yàn)樽铌?yáng)春的核心缺乏了與使用者溝通的親和介面, 所以在目前,一般我們提到的『作業(yè)系統(tǒng)』都會(huì)包含核心與相關(guān)的使用者應(yīng)用軟體呢! |
簡(jiǎn)單的說(shuō),上面的圖示可以帶給我們底下的概念:
- 作業(yè)系統(tǒng)的核心層直接參考硬體規(guī)格寫(xiě)成, 所以同一個(gè)作業(yè)系統(tǒng)程式不能夠在不一樣的硬體架構(gòu)下運(yùn)作。舉例來(lái)說(shuō),個(gè)人電腦版的Windows XP不能直接在RISC架構(gòu)的電腦下運(yùn)作。 所以您知道為何Windows XP又分為32位元及64位元的版本了吧?因?yàn)?2/64位元的CPU指令集不太相同, 所以當(dāng)然要設(shè)計(jì)不同的作業(yè)系統(tǒng)版本了。
? - 作業(yè)系統(tǒng)只是在管理整個(gè)硬體資源,包括CPU、記憶體、輸入輸出裝置及檔案系統(tǒng)檔。 如果沒(méi)有其他的應(yīng)用程式輔助,作業(yè)系統(tǒng)只能讓電腦主機(jī)準(zhǔn)備妥當(dāng)(Ready)而已!並無(wú)法運(yùn)作其他功能。 所以你現(xiàn)在知道為何Windows XP上面要達(dá)成網(wǎng)頁(yè)影像的運(yùn)作還需要類(lèi)似PhotoImpact或Photoshop之類(lèi)的軟體安裝了吧?
? - 應(yīng)用程式的開(kāi)發(fā)都是參考作業(yè)系統(tǒng)提供的開(kāi)發(fā)介面, 所以該應(yīng)用程式只能在該作業(yè)系統(tǒng)上面運(yùn)作而已,不可以在其他作業(yè)系統(tǒng)上面運(yùn)作的。 現(xiàn)在您知道為何去購(gòu)買(mǎi)線上遊戲的光碟時(shí),光碟上面會(huì)明明白白的寫(xiě)著該軟體適合用於哪一種作業(yè)系統(tǒng)上了吧? 也該知道某些遊戲?yàn)楹尾荒軌蛟贚inux上面安裝了吧?
- 核心功能
既然核心主要是在負(fù)責(zé)整個(gè)電腦系統(tǒng)相關(guān)的資源分配與管理,那我們知道其實(shí)整部電腦系統(tǒng)最重要的就是CPU與主記憶體, 因此,核心至少也要有這些功能的:
- 系統(tǒng)呼叫介面(System call interface)
剛剛談過(guò)了,這是為了方便程式開(kāi)發(fā)者可以輕易的透過(guò)與核心的溝通,將硬體的資源進(jìn)一步的利用, 於是需要有這個(gè)簡(jiǎn)易的介面來(lái)方便程式開(kāi)發(fā)者。
? - 程序管理(Process control)
總有聽(tīng)過(guò)所謂的『多工環(huán)境』吧?一部電腦可能同時(shí)間有很多的工作跑到CPU等待運(yùn)算處理, 核心這個(gè)時(shí)候必須要能夠控制這些工作,讓CPU的資源作有效的分配才行!另外, 良好的CPU排程機(jī)制(就是CPU先運(yùn)作那個(gè)工作的排列順序)將會(huì)有效的加快整體系統(tǒng)效能呢!
? - 記憶體管理(Memory management)
控制整個(gè)系統(tǒng)的記憶體管理,這個(gè)記憶體控制是非常重要的,因?yàn)橄到y(tǒng)所有的程式碼與資料都必須要先存放在記憶體當(dāng)中。 通常核心會(huì)提供虛擬記憶體的功能,當(dāng)記憶體不足時(shí)可以提供記憶體置換(swap)的功能哩。
? - 檔案系統(tǒng)管理(Filesystem management)
檔案系統(tǒng)的管理,例如資料的輸入輸出(I/O)等等的工作啦!還有不同檔案格式的支援啦等等, 如果你的核心不認(rèn)識(shí)某個(gè)檔案系統(tǒng),那麼您將無(wú)法使用該檔案格式的檔案囉!例如:Windows 98就不認(rèn)識(shí)NTFS檔案格式的硬碟;
? - 裝置的驅(qū)動(dòng)(Device drivers)
就如同上面提到的,硬體的管理是核心的主要工作之一,當(dāng)然囉,裝置的驅(qū)動(dòng)程式就是核心需要做的事情啦! 好在目前都有所謂的『可載入模組』功能,可以將驅(qū)動(dòng)程式編輯成模組,就不需要重新的編譯核心啦! 這個(gè)也會(huì)在後續(xù)的第二十章當(dāng)中提到的!
| Tips: 事實(shí)上,驅(qū)動(dòng)程式的提供應(yīng)該是硬體廠商的事情!硬體廠商要推出硬體時(shí),應(yīng)該要自行參考作業(yè)系統(tǒng)的驅(qū)動(dòng)程式開(kāi)發(fā)介面, 開(kāi)發(fā)完畢後將該驅(qū)動(dòng)程式連同硬體一同販賣(mài)給使用者才對(duì)!舉例來(lái)說(shuō),當(dāng)你購(gòu)買(mǎi)顯示卡時(shí), 顯示卡包裝盒都會(huì)附上一片光碟,讓你可以在進(jìn)入Windows之後進(jìn)行驅(qū)動(dòng)程式的安裝啊! |
- 作業(yè)系統(tǒng)與驅(qū)動(dòng)程式
老實(shí)說(shuō),驅(qū)動(dòng)程式可以說(shuō)是作業(yè)系統(tǒng)裡面相當(dāng)重要的一環(huán)了!不過(guò),硬體可是持續(xù)在進(jìn)步當(dāng)中的! 包括主機(jī)板、顯示卡、硬碟等等。那麼比較晚推出的較新的硬體,例如顯示卡,我們的作業(yè)系統(tǒng)當(dāng)然就不認(rèn)識(shí)囉! 那作業(yè)系統(tǒng)該如何驅(qū)動(dòng)這塊新的顯示卡?為了克服這個(gè)問(wèn)題,作業(yè)系統(tǒng)通常會(huì)提供一個(gè)開(kāi)發(fā)介面給硬體開(kāi)發(fā)商, 讓他們可以根據(jù)這個(gè)介面設(shè)計(jì)可以驅(qū)動(dòng)他們硬體的『驅(qū)動(dòng)程式』,如此一來(lái),只要使用者安裝驅(qū)動(dòng)程式後, 自然就可以在他們的作業(yè)系統(tǒng)上面驅(qū)動(dòng)這塊顯示卡了。
圖4.2.2、驅(qū)動(dòng)程式與作業(yè)系統(tǒng)的關(guān)係
由上圖我們可以得到幾個(gè)小重點(diǎn):
- 作業(yè)系統(tǒng)必須要能夠驅(qū)動(dòng)硬體,如此應(yīng)用程式才能夠使用該硬體功能;
- 一般來(lái)說(shuō),作業(yè)系統(tǒng)會(huì)提供開(kāi)發(fā)介面,讓開(kāi)發(fā)商製作他們的驅(qū)動(dòng)程式;
- 要使用新硬體功能,必須要安裝廠商提供的驅(qū)動(dòng)程式才行;
- 驅(qū)動(dòng)程式是由廠商提供的,與作業(yè)系統(tǒng)開(kāi)發(fā)者無(wú)關(guān)。
所以,如果妳想要在某個(gè)作業(yè)系統(tǒng)上面安裝一張新的顯示卡,那麼請(qǐng)要求該硬體廠商提供適當(dāng)?shù)尿?qū)動(dòng)程式吧! ^_^! 為什麼要強(qiáng)調(diào)『適當(dāng)?shù)尿?qū)動(dòng)程式』呢? 因?yàn)轵?qū)動(dòng)程式仍然是依據(jù)作業(yè)系統(tǒng)而開(kāi)發(fā)的, 所以,給Windows用的驅(qū)動(dòng)程式當(dāng)然不能使用於Linux的環(huán)境下了。
應(yīng)用程式
應(yīng)用程式是參考作業(yè)系統(tǒng)提供的開(kāi)發(fā)介面所開(kāi)發(fā)出來(lái)軟體,這些軟體可以讓使用者操作,以達(dá)到某些電腦的功能利用。 舉例來(lái)說(shuō),辦公室軟體(Office)主要是用來(lái)讓使用者辦公用的;影像處理軟體主要是讓使用者用來(lái)處理影音資料的; 瀏覽器軟體主要是讓使用者用來(lái)上網(wǎng)瀏覽用的等等。
需要注意的是,應(yīng)用程式是與作業(yè)系統(tǒng)有關(guān)係的,如同上面的圖示當(dāng)中的說(shuō)明喔。因此,如果你想要購(gòu)買(mǎi)新軟體, 請(qǐng)務(wù)必參考軟體上面的說(shuō)明,看看該軟體是否能夠支援你的作業(yè)系統(tǒng)啊!舉例來(lái)說(shuō),如果你想要購(gòu)買(mǎi)線上遊戲光碟, 務(wù)必參考一下該光碟是否支援你的作業(yè)系統(tǒng),例如是否支援Windows XP/Windows Vista/MAC/Linux等等。 不要購(gòu)買(mǎi)了才發(fā)現(xiàn)該軟體無(wú)法安裝在你的作業(yè)系統(tǒng)上喔!
我們拿常見(jiàn)的微軟公司的產(chǎn)品來(lái)說(shuō)明。妳知道Windows XP, Office 2007之間的關(guān)係了嗎?
- Windows XP是一套作業(yè)系統(tǒng),他必須先安裝到個(gè)人電腦上面,否則電腦無(wú)法開(kāi)機(jī)運(yùn)作;
- Windows 98與Windows XP是兩套不同的作業(yè)系統(tǒng),所以能在Win 98上安裝的軟體不見(jiàn)得可在WinXP上安裝;
- Windows XP安裝好後,就只能擁有很少的功能,並沒(méi)有辦公室軟體;
- Office 2007是一套應(yīng)用程式,要安裝前必須要瞭解他能在哪些作業(yè)系統(tǒng)上面運(yùn)作。
重點(diǎn)回顧
- 計(jì)算機(jī)的定義為:『接受使用者輸入指令與資料,經(jīng)由中央處理器的數(shù)學(xué)與邏輯單元運(yùn)算處理後,以產(chǎn)生或儲(chǔ)存成有用的資訊』;
- 電腦的五大單元包括:輸入單元、 輸出單元、CPU內(nèi)部的控制單元、算數(shù)邏輯單元與主記憶體五大部分;
- 資料會(huì)流進(jìn)/流出記憶體是CPU所發(fā)佈的控制命令,而CPU實(shí)際要處理的資料則完全來(lái)自於主記憶體;
- CPU依設(shè)計(jì)理念主要分為:精簡(jiǎn)指令集(RISC)與複雜指令集(CISC)系統(tǒng);
- 關(guān)於CPU的時(shí)脈部分:外頻指的是CPU與外部元件進(jìn)行資料傳輸時(shí)的速度,倍頻則是CPU內(nèi)部用來(lái)加速工作效能的一個(gè)倍數(shù), 兩者相乘才是CPU的時(shí)脈速度;
- 一般主機(jī)板晶片組有分北橋與南橋,北橋的匯流排稱(chēng)為系統(tǒng)匯流排,因?yàn)槭怯洃涹w傳輸?shù)闹饕ǖ?#xff0c;所以速度較快。 南橋就是所謂的輸入輸出(I/O)匯流排,主要在聯(lián)繫硬碟、USB、網(wǎng)路卡等周邊設(shè)備;
- 北橋所支援的頻率我們稱(chēng)為前端匯流排速度(Front Side Bus, FSB),而每次傳送的位元數(shù)則是匯流排寬度。
- CPU每次能夠處理的資料量稱(chēng)為字組大小(word size),字組大小依據(jù)CPU的設(shè)計(jì)而有32位元與64位元。 我們現(xiàn)在所稱(chēng)的電腦是32或64位元主要是依據(jù)這個(gè) CPU解析的字組大小而來(lái)的!
- 個(gè)人電腦的主記憶體主要元件為動(dòng)態(tài)隨機(jī)存取記憶體(Dynamic Random Access Memory, DRAM), 至於CPU內(nèi)部的第二層快取則使用靜態(tài)隨機(jī)存取記憶體(Static Random Access Memory, SRAM);
- BIOS(Basic Input Output System)是一套程式,這套程式是寫(xiě)死到主機(jī)板上面的一個(gè)記憶體晶片中, 這個(gè)記憶體晶片在沒(méi)有通電時(shí)也能夠?qū)①Y料記錄下來(lái),那就是唯讀記憶體(Read Only Memory, ROM);
- 顯示卡的規(guī)格有PCI/AGP/PCIe,目前的主流為PCIe介面;
- 硬碟的組成為:圓形磁碟盤(pán)、機(jī)械手臂、 磁碟讀取頭與主軸馬達(dá)所組成的,其中磁碟盤(pán)的組成為磁區(qū)、磁軌與磁柱;
- 作業(yè)系統(tǒng)(Operating System, OS)其實(shí)也是一組程式, 這組程式的重點(diǎn)在於管理電腦的所有活動(dòng)以及驅(qū)動(dòng)系統(tǒng)中的所有硬體。
- 電腦主要以二進(jìn)位作為單位,常用的磁碟容量單位為bytes,其單位換算為1 Byte = 8bits。
- 最陽(yáng)春的作業(yè)系統(tǒng)僅在驅(qū)動(dòng)與管理硬體,而要使用硬體時(shí),就得需要透過(guò)應(yīng)用軟體或者是殼程式(shell)的功能, 來(lái)呼叫作業(yè)系統(tǒng)操縱硬體工作。目前稱(chēng)為作業(yè)系統(tǒng)的,除了上述功能外,通常已經(jīng)包含了日常工作所需要的應(yīng)用軟體在內(nèi)了。
本章習(xí)題
- 動(dòng)動(dòng)手實(shí)作題:假設(shè)你不知道你的主機(jī)內(nèi)部的各項(xiàng)元件資料,請(qǐng)拆開(kāi)你的主機(jī)機(jī)殼,並將內(nèi)部所有的元件拆開(kāi),並且依序列出:
- CPU的廠牌、型號(hào)、最高時(shí)脈;
- 主記憶體的容量、介面 (DDR/DDR II等);
- 顯示卡的介面 (AGP/PCIe/內(nèi)建) 與容量
- 主機(jī)板的廠牌、南北橋的晶片型號(hào)、BIOS的廠牌、有無(wú)內(nèi)建的網(wǎng)卡或音效卡等
- 硬碟的連接介面 (IDE/SATA等)、硬碟容量、轉(zhuǎn)速、緩衝記憶體容量等。
? - 利用軟體:假設(shè)你不想要拆開(kāi)主機(jī)機(jī)殼,但想瞭解你的主機(jī)內(nèi)部各元件的資訊時(shí),該如何是好? 如果使用的是Windows作業(yè)系統(tǒng),可使用CPU-Z(http://www.cpuid.com/cpuz.php)這套軟體,如果是Linux環(huán)境下,可以使用『cat /proc/cpuinfo』 及使用『lspci』來(lái)查閱各項(xiàng)元件的型號(hào);
? - 依據(jù)文末的延伸閱讀連結(jié),自行搜尋出 BIOS 的主要任務(wù),以及目前在個(gè)人電腦上面常見(jiàn)的 BIOS 製造商有哪幾家?
參考資料與延伸閱讀
- 註1:對(duì)於CPU的原理有興趣的讀者,可以參考維基百科的說(shuō)明:
英文CPU(http://en.wikipedia.org/wiki/CPU)
中文CPU(http://zh.wikipedia.org/wiki/中央處理器)。 - 註2:圖片參考:作者:陳錦輝,『計(jì)算機(jī)概論-探索未來(lái)2008』,金禾資訊,2007出版
- 註3:更詳細(xì)的RISC架構(gòu)可以參考維基百科:
http://zh.wikipedia.org/w/index.php?title=精簡(jiǎn)指令集&variant=zh-tw - 註4:關(guān)於ARM架構(gòu)的說(shuō)明,可以參考維基百科:
http://zh.wikipedia.org/w/index.php?title=ARM架構(gòu)&variant=zh-tw - 註5:更詳細(xì)的CISC架構(gòu)可參考維基百科:
http://zh.wikipedia.org/w/index.php?title=CISC&variant=zh-tw - 註6:更詳細(xì)的x86架構(gòu)發(fā)展史可以參考維基百科:
http://zh.wikipedia.org/w/index.php?title=X86&variant=zh-tw - 註7:相關(guān)的韌體說(shuō)明可參考維基百科:
http://zh.wikipedia.org/w/index.php?title=韌體&variant=zh-hant - 註8:相關(guān) EEPROM 可以參考維基百科:
http://zh.wikipedia.org/w/index.php?title=EEPROM&variant=zh-tw - 註9:相關(guān) BIOS 的說(shuō)明可以參考維基百科:
http://zh.wikipedia.org/w/index.php?title=BIOS&variant=zh-tw - 感謝:本章當(dāng)中出現(xiàn)很多圖示,很多是從Tom's Hardware(http://www.tomshardware.tw/)網(wǎng)站取得的,在此特別感謝!
??????鳥(niǎo)哥的 Linux 私房菜
??????????????? ?http://linux.vbird.org/
轉(zhuǎn)載于:https://blog.51cto.com/firesun/406425
總結(jié)
- 上一篇: Vue调用微信JSSDK上传图片(wx.
- 下一篇: motionbest】 动态野兽AE课程