計(jì)算機(jī)硬件基礎(chǔ)知識(shí)簡(jiǎn)介

姓名:朱佳男

學(xué)號(hào):17021210978

專業(yè):信號(hào)與信息處理

轉(zhuǎn)載自:http://www.reibang.com/p/b14a35b9b7ad

【嵌牛導(dǎo)讀】現(xiàn)代人們對(duì)于計(jì)算機(jī)的硬件基礎(chǔ)知識(shí)有所來了解是很有必要的,這篇文章主要介紹了計(jì)算機(jī)硬件的基礎(chǔ)知識(shí)责循,包括CPU歹垫、寄存器、存儲(chǔ)器與磁盤等等。通過對(duì)本文的閱讀,能讓我們對(duì)計(jì)算機(jī)的工作方式有一個(gè)基本的認(rèn)識(shí)扫步。

【嵌牛鼻子】計(jì)算機(jī)硬件游岳、CPU褪尝、寄存器

【嵌牛提問 】CPU的作用是什么灾馒?寄存器包括哪些類?操作系統(tǒng)的啟動(dòng)流程是怎么樣的容达?

【嵌牛正文】

一.編程語言的作用及與操作系統(tǒng)和硬件的關(guān)系

編程語言是程序員用來控制計(jì)算機(jī)的工具花盐,是一種標(biāo)準(zhǔn)化的交流技巧柒昏,使得人與計(jì)算機(jī)之間可以在某種程度上交流职祷,使得計(jì)算機(jī)能夠完成人所下達(dá)的工作意系。

在計(jì)算機(jī)剛出現(xiàn)的時(shí)候昔字,程序員直接控制硬件來使計(jì)算機(jī)工作作郭,但是用機(jī)器語言(二進(jìn)制代碼)編寫的程序無明顯特征蜘醋,難以書寫和閱讀压语,具有很大的局限性。因此隨著計(jì)算機(jī)的發(fā)展厕怜,操作系統(tǒng)出現(xiàn)并成為了人與計(jì)算機(jī)硬件之間的橋梁,人直接控制操作系統(tǒng)递雀,操作系統(tǒng)調(diào)用計(jì)算機(jī)硬件缀程。

應(yīng)用程序即是軟件赎败,是程序員用編程語言寫的程序据忘,應(yīng)用程序在操作系統(tǒng)環(huán)境下運(yùn)行勇吊,并通過操作系統(tǒng)調(diào)動(dòng)計(jì)算機(jī)硬件完成工作礼殊。

二.計(jì)算機(jī)硬件

計(jì)算機(jī)由運(yùn)算器晶伦、控制器、存儲(chǔ)器、輸入設(shè)備和輸出設(shè)備等五個(gè)邏輯部件組成沽一,其中運(yùn)算器和控制器合稱為中央處理器(Central Processing Unit铣缠,簡(jiǎn)稱CPU),存儲(chǔ)器(Memory)分為內(nèi)存和外存歼郭,輸入設(shè)備(Input Device)和輸出設(shè)備(Output Device)即是通過各種控制器能被計(jì)算機(jī)調(diào)用并實(shí)現(xiàn)輸入或輸出的設(shè)備牍蜂。

CPU是計(jì)算機(jī)系統(tǒng)的核心鲫竞,是運(yùn)算中心和指揮中心。內(nèi)存是存儲(chǔ)速度較快而容量較小的存儲(chǔ)器僵井,外存(通常指磁盤)是存儲(chǔ)速度較慢而容量較大的存儲(chǔ)器批什。內(nèi)存是通過電工作的存儲(chǔ)器,斷電則存儲(chǔ)的數(shù)據(jù)丟失;磁盤是通過磁工作的存儲(chǔ)器合砂,可長(zhǎng)時(shí)間保存數(shù)據(jù)翩伪。

計(jì)算機(jī)工作時(shí),CPU從內(nèi)存中取出指令解碼并執(zhí)行轻姿,當(dāng)需要用到磁盤中的數(shù)據(jù)時(shí),則將磁盤中的數(shù)據(jù)送入內(nèi)存后再使用豹休。

三.CPU與寄存器

CPU是計(jì)算機(jī)的大腦凤巨,通過從內(nèi)存中取出指令并解碼執(zhí)行來控制計(jì)算機(jī)各個(gè)部件敢茁。每個(gè)CPU都有一套可執(zhí)行的專門指令集,任何軟件的執(zhí)行都必須轉(zhuǎn)換為CPU的指令去執(zhí)行僧叉。

因訪問內(nèi)存得到指令或數(shù)據(jù)花費(fèi)的時(shí)間比CPU解碼執(zhí)行指令的時(shí)間多得多隘道,因此CPU內(nèi)部有一些保存關(guān)鍵變量和臨時(shí)數(shù)據(jù)的寄存器忘晤,CPU可直接從寄存器中調(diào)用常用數(shù)據(jù)或者通過寄存器中的內(nèi)存地址直接調(diào)用內(nèi)存中的數(shù)據(jù),使運(yùn)行速度更快闰蛔。

寄存器分類:

1.通用寄存器:保存變量和臨時(shí)結(jié)果。

2.程序計(jì)數(shù)器:保存了將要取出的下一條指令的內(nèi)存地址,指令取出后繁涂,程序計(jì)數(shù)器就更新以執(zhí)行后續(xù)指令扔罪。

3.堆棧指針:它指向內(nèi)存中當(dāng)前棧的頂端氧猬,該棧包含已經(jīng)進(jìn)入但還沒有退出的每個(gè)過程中的一個(gè)框架。在一個(gè)堆椡框架中保存了有關(guān)的輸入?yún)?shù)、局部變量以及那些沒有保存在寄存器中的臨時(shí)變量。

4.程序狀態(tài)字寄存器(Program Status Word,PSW):該寄存器包含條碼位(由比較指令設(shè)置)寄症、CPU優(yōu)先級(jí)、模式(用戶態(tài)和內(nèi)核態(tài))、以及各種其他控制位甜橱。用戶通常讀入整個(gè)PSW荧琼,但只對(duì)其中少量的字段寫入堰乔。在系統(tǒng)調(diào)用I/O設(shè)備中,PSW非常重要韵卤。

寄存器的維護(hù):

在時(shí)間多路復(fù)用的CPU中,操作系統(tǒng)每次停止一個(gè)正在運(yùn)行的程序時(shí)蜡歹,都必須保存所有的寄存器,這樣在稍后該程序再次運(yùn)行時(shí),可以把這些寄存器重新裝入。

四.內(nèi)核態(tài)與用戶態(tài)及如何切換

多數(shù)CPU有兩種模式,即內(nèi)核態(tài)和用戶態(tài),PSW中有一個(gè)二進(jìn)制位控制這兩種模式炕吸。

內(nèi)核態(tài):當(dāng)CPU在內(nèi)核態(tài)運(yùn)行時(shí)蒸矛,可以執(zhí)行指令集中的所有指令,即可以使用硬件的所有功能雏掠。

用戶態(tài):當(dāng)CPU在用戶態(tài)運(yùn)行時(shí)斩祭,僅僅只能執(zhí)行指令集中的一個(gè)子集,該子集不包含操作硬件功能的部分乡话,一般情況下摧玫,在用戶態(tài)下不允許訪問外圍設(shè)備绑青,不允許占用其他程序的用戶空間诬像,將PSW的模式設(shè)置成內(nèi)核態(tài)也是禁止的屋群。

將用戶態(tài)切換到內(nèi)核態(tài)的過程稱為系統(tǒng)調(diào)用(system call),CPU中對(duì)應(yīng)的指令為陷阱指令(Trap Instruction)坏挠,這個(gè)過程的實(shí)現(xiàn)需要通過調(diào)用操作系統(tǒng)芍躏。

五.存儲(chǔ)器系列

存儲(chǔ)器在計(jì)算機(jī)硬件中僅次于處理器(CPU),一般而言癞揉,隨著存儲(chǔ)器容量的增加纸肉,其讀寫速度會(huì)逐漸變慢。

L1緩存指寄存器:用與CPU相同材質(zhì)制造喊熟,CPU訪問它無時(shí)延柏肪,典型容量是:在32位CPU中為32*32,在64位CPU中為64*64芥牌,兩種情況下容量均小于1KB烦味。

L2緩存指高速緩存:主要由硬件控制高速緩存的存取,不同CPU壁拉,高速緩存行大小不同谬俄,如X86是32BYTES,ALPHA是64BYTES弃理,并且始終在第32或64個(gè)字節(jié)出對(duì)齊(從0開始)溃论。最常用的高速緩存行放置下CPU內(nèi)部或者非常接近CPU的高速緩存中。高速緩存命中指當(dāng)某個(gè)程序需要讀一個(gè)存儲(chǔ)數(shù)據(jù)時(shí)痘昌,高速緩存硬件檢查所需要的高速緩存行在高速緩存中钥勋。高速緩存的命中通常需要兩個(gè)時(shí)鐘周期(2ns),若高速緩存命中辆苔,就必須訪問內(nèi)存算灸,這需要付出大量時(shí)間代價(jià)。高速緩存價(jià)格昂貴驻啤,因此大小有限菲驴,有些機(jī)器具有兩級(jí)甚至三級(jí)高速緩存,每一級(jí)高速緩存比前一級(jí)慢但是容量大骑冗。

主存(即內(nèi)存)通常稱為隨機(jī)訪問存儲(chǔ)(RAM)赊瞬,主存是易失性存儲(chǔ),斷電后數(shù)據(jù)消失贼涩。

ROM(Read Only Memory)是非易失性隨機(jī)訪問存儲(chǔ)森逮,但它是只讀存儲(chǔ)器。ROM速度快且便宜磁携,在有些計(jì)算機(jī)中褒侧,用于啟動(dòng)計(jì)算機(jī)的引導(dǎo)加載模塊就存放在ROM中,另外一些I/O卡也采用ROM處理底層設(shè)備的控制。

EEPROM(Electrically Erasable PROM闷供,電可擦除可編程ROM)和閃存(flash memory)也是非易失性的烟央,但它們可以被擦除和重寫,不過花費(fèi)的時(shí)間比RAM多歪脏。閃存速度介于RAM和磁盤之間疑俭,但閃存擦除次數(shù)過多就會(huì)磨損。

CMOS是易失性的婿失,許多計(jì)算機(jī)利用它來保持當(dāng)前時(shí)間和日期钞艇。CMOS存儲(chǔ)器和遞增時(shí)間的電路由一小塊電池驅(qū)動(dòng)。CMOS還可以保存配置的參數(shù)豪硅,比如哪一個(gè)是啟動(dòng)磁盤等哩照。CMOS耗電非常少,一塊原裝電池能用若干年懒浮。

BIOS基本輸入輸出程序儲(chǔ)存在ROM芯片中飘弧,CMOS用來存儲(chǔ)BIOS設(shè)置和系統(tǒng)時(shí)間。

六.磁盤

1.磁盤結(jié)構(gòu):在磁盤中有一個(gè)或多個(gè)金屬盤片砚著,它們以5400次伶,7200或10800RPM(RPM,revolutions per minute,轉(zhuǎn)速)的速度旋轉(zhuǎn)稽穆,從邊緣開始有一個(gè)機(jī)械臂懸在盤面上冠王,信息寫在磁盤上的一些列的同心圓上,是一連串的二進(jìn)制位(稱為bit位)

機(jī)械臂稱為磁頭舌镶。

每個(gè)磁頭在磁盤表面劃出的圓形軌跡版确,稱為磁道(Track)。

在有多個(gè)盤片構(gòu)成的盤組中乎折,由不同盤片的面,但處于同一半徑圓的多個(gè)磁道組成的一個(gè)圓柱面(Cylinder)侵歇。

磁盤上的每個(gè)磁道被等分為若干個(gè)弧段骂澄,這些弧段便是硬盤的扇區(qū)(Sector)。硬盤的第一個(gè)扇區(qū)惕虑,叫做引導(dǎo)扇區(qū)坟冲。

每個(gè)磁道劃分成多個(gè)扇區(qū),扇區(qū)的典型值是512字節(jié)溃蔫。

扇區(qū)是磁盤級(jí)別的最小讀寫單位健提,操作系統(tǒng)的最小讀寫單位是1block = 8 * 512Bytes。

2.平均尋道時(shí)間:機(jī)械手臂從一個(gè)柱面隨機(jī)移動(dòng)到相鄰的柱面的時(shí)間稱為尋道時(shí)間伟叛,找到了磁道就找到了數(shù)據(jù)所在的那個(gè)圓圈私痹,但是還是不知道這個(gè)數(shù)據(jù)在這個(gè)圓圈的具體位置。

3.平均延遲時(shí)間:機(jī)械臂到達(dá)正確的磁道之后還必須等待旋轉(zhuǎn)到數(shù)據(jù)所在的扇區(qū)下,這段時(shí)間成為延遲時(shí)間

數(shù)據(jù)存放于一段一段的扇區(qū)紊遵,即磁道這個(gè)圓圈的一小段圓弧账千,從磁盤讀取一段數(shù)據(jù)需要經(jīng)歷尋道時(shí)間和延遲時(shí)間。

4.虛擬內(nèi)存和MMU:將正在使用的程序放入內(nèi)存暗膜,而將暫時(shí)不需要執(zhí)行的程序放到磁盤的某個(gè)地方匀奏,這塊地方稱為虛擬內(nèi)存(Virtual Memory),在linux中稱為swap学搜。這種機(jī)制的核心在于快速映射內(nèi)存地址娃善,由cpu中的一個(gè)部件負(fù)責(zé),稱為存儲(chǔ)器管理單元(Memory Management Unit,MMU)

從一個(gè)程序切換到另外一個(gè)程序瑞佩,稱為上下午切換(context switch)聚磺,緩存和MMU的出現(xiàn)提升了系統(tǒng)的性能,尤其是上下文切換钉凌。

5.磁帶:在價(jià)錢相同的情況下比硬盤擁有更高的存儲(chǔ)容量咧最,雖然速度低于磁盤御雕,但因其容量大矢沿,在地震水災(zāi)火災(zāi)時(shí)機(jī)動(dòng)性強(qiáng)等特性,常被用來做備份酸纲。(常見于大型數(shù)據(jù)庫系統(tǒng)中)

6.I/O設(shè)備:I/O設(shè)備一般包括兩個(gè)部分:設(shè)備控制器和設(shè)備本身捣鲸。

控制器:是主板上的一塊芯片或一組芯片,控制器負(fù)責(zé)控制連接的設(shè)備闽坡,它從操作系統(tǒng)接收命令栽惶,比如讀取硬盤數(shù)據(jù),然后就對(duì)硬盤設(shè)備發(fā)起讀取請(qǐng)求來讀出內(nèi)容疾嗅。

控制器的功能:通常情況下對(duì)設(shè)備的控制是復(fù)雜而具體的外厂,控制器的任務(wù)就是為操作系統(tǒng)屏蔽這些復(fù)雜而具體的工作,提供給操作系統(tǒng)一個(gè)簡(jiǎn)單而清晰的接口代承。

設(shè)備本身:要想調(diào)用設(shè)備汁蝶,必須根據(jù)該接口編寫復(fù)雜而具體的程序,于是有了控制器提供設(shè)備驅(qū)動(dòng)接口給操作系統(tǒng)论悴。必須把設(shè)備驅(qū)動(dòng)程序安裝到操作系統(tǒng)中掖棉。

七.總線與南橋和北橋

南橋即ISA橋:連接慢速設(shè)備

北橋即PCI橋:連接高速設(shè)備

八.操作系統(tǒng)的啟動(dòng)流程

1.計(jì)算機(jī)加電

2.BIOS開始運(yùn)行,檢測(cè)硬件:CPU、內(nèi)存、硬盤等

3.BIOS讀取CMOS存儲(chǔ)器中的參數(shù)粪般,選擇啟動(dòng)設(shè)備

4.從啟動(dòng)設(shè)備上讀取第一個(gè)扇區(qū)的內(nèi)容(MBR主引導(dǎo)記錄512字節(jié),前446為引導(dǎo)信息帕棉,后64位為分區(qū)信息针肥,最后兩個(gè)為標(biāo)志位)

5.根據(jù)分區(qū)信息讀入bootloader啟動(dòng)裝載模塊,啟動(dòng)操作系統(tǒng)

6.然后操作系統(tǒng)詢問BIOS笤昨,獲得配置信息祖驱。對(duì)于每種設(shè)備,系統(tǒng)會(huì)檢查起設(shè)備驅(qū)動(dòng)程序是否存在瞒窒,如果沒有捺僻,系統(tǒng)則會(huì)要求用戶安裝設(shè)備驅(qū)動(dòng)程序。一旦有了全部設(shè)備驅(qū)動(dòng)程序崇裁,操作系統(tǒng)就將它們調(diào)入內(nèi)核匕坯。然后初始有關(guān)的表格(如進(jìn)程表),創(chuàng)建需要的進(jìn)程拔稳,并在每個(gè)終端上啟動(dòng)登錄程序或GUI葛峻。

九.應(yīng)用程序的啟動(dòng)流程

1.通過操作系統(tǒng)發(fā)出啟動(dòng)程序的指令,并將之存入內(nèi)存巴比。

2.CPU從內(nèi)存中調(diào)出指令术奖,并解碼執(zhí)行。

3.程序數(shù)據(jù)從硬盤讀入內(nèi)存

4.CPU從內(nèi)存中讀取程序數(shù)據(jù)并運(yùn)行

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末轻绞,一起剝皮案震驚了整個(gè)濱河市采记,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌政勃,老刑警劉巖唧龄,帶你破解...
    沈念sama閱讀 207,113評(píng)論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異奸远,居然都是意外死亡既棺,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,644評(píng)論 2 381
  • 文/潘曉璐 我一進(jìn)店門懒叛,熙熙樓的掌柜王于貴愁眉苦臉地迎上來丸冕,“玉大人,你說我怎么就攤上這事薛窥∨种颍” “怎么了?”我有些...
    開封第一講書人閱讀 153,340評(píng)論 0 344
  • 文/不壞的土叔 我叫張陵拆檬,是天一觀的道長(zhǎng)。 經(jīng)常有香客問我妥凳,道長(zhǎng)竟贯,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 55,449評(píng)論 1 279
  • 正文 為了忘掉前任逝钥,我火速辦了婚禮屑那,結(jié)果婚禮上拱镐,老公的妹妹穿的比我還像新娘。我一直安慰自己持际,他們只是感情好沃琅,可當(dāng)我...
    茶點(diǎn)故事閱讀 64,445評(píng)論 5 374
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著蜘欲,像睡著了一般益眉。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上姥份,一...
    開封第一講書人閱讀 49,166評(píng)論 1 284
  • 那天郭脂,我揣著相機(jī)與錄音,去河邊找鬼澈歉。 笑死展鸡,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的埃难。 我是一名探鬼主播莹弊,決...
    沈念sama閱讀 38,442評(píng)論 3 401
  • 文/蒼蘭香墨 我猛地睜開眼,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼涡尘!你這毒婦竟也來了忍弛?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 37,105評(píng)論 0 261
  • 序言:老撾萬榮一對(duì)情侶失蹤悟衩,失蹤者是張志新(化名)和其女友劉穎剧罩,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體座泳,經(jīng)...
    沈念sama閱讀 43,601評(píng)論 1 300
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡惠昔,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,066評(píng)論 2 325
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了挑势。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片镇防。...
    茶點(diǎn)故事閱讀 38,161評(píng)論 1 334
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖潮饱,靈堂內(nèi)的尸體忽然破棺而出来氧,到底是詐尸還是另有隱情,我是刑警寧澤香拉,帶...
    沈念sama閱讀 33,792評(píng)論 4 323
  • 正文 年R本政府宣布啦扬,位于F島的核電站,受9級(jí)特大地震影響凫碌,放射性物質(zhì)發(fā)生泄漏扑毡。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,351評(píng)論 3 307
  • 文/蒙蒙 一盛险、第九天 我趴在偏房一處隱蔽的房頂上張望瞄摊。 院中可真熱鬧勋又,春花似錦、人聲如沸换帜。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,352評(píng)論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽惯驼。三九已至蹲嚣,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間跳座,已是汗流浹背端铛。 一陣腳步聲響...
    開封第一講書人閱讀 31,584評(píng)論 1 261
  • 我被黑心中介騙來泰國(guó)打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留疲眷,地道東北人禾蚕。 一個(gè)月前我還...
    沈念sama閱讀 45,618評(píng)論 2 355
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像狂丝,于是被迫代替她去往敵國(guó)和親换淆。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 42,916評(píng)論 2 344

推薦閱讀更多精彩內(nèi)容

  • 眾所周知几颜,計(jì)算機(jī)硬件主要由CPU(運(yùn)算器和控制器)倍试、存儲(chǔ)器(內(nèi)存和外存)、外部設(shè)備(輸入/輸出設(shè)備)等構(gòu)成蛋哭。那這幾...
    張利鋒閱讀 5,844評(píng)論 0 4
  • 一.編程語言的作用及與操作系統(tǒng)和硬件的關(guān)系 編程語言是程序員用來控制計(jì)算機(jī)的工具县习,是一種標(biāo)準(zhǔn)化的交流技巧,使得人與...
    夢(mèng)不覺_ac35閱讀 714評(píng)論 0 5
  • 在我們的生活與工作中所使用到的計(jì)算機(jī)都是基于馮諾依曼結(jié)構(gòu)實(shí)現(xiàn)的,馮諾依曼結(jié)構(gòu)又稱馮諾依曼模型或普林斯頓結(jié)構(gòu),它是一...
    SylvanasSun閱讀 2,542評(píng)論 1 6
  • 8086匯編 本筆記是筆者觀看小甲魚老師(魚C論壇)《零基礎(chǔ)入門學(xué)習(xí)匯編語言》系列視頻的筆記,在此感謝他和像他一樣...
    Gibbs基閱讀 37,117評(píng)論 8 114
  • 文/木言 太陽一跳一跳的出現(xiàn)在藍(lán)色的天邊云挟,公主揉揉眼睛梆砸,偏偏頭目光落在了實(shí)木桌子上,“哇园欣!好漂亮的小石頭帖世。”一顆石...
    韓梅梅閱讀 180評(píng)論 0 0