python之計(jì)算機(jī)硬件知識(shí)

編程語言的作用:程序員編程的本質(zhì)就是讓計(jì)算機(jī)去工作,而編程語言就是程序員與計(jì)算機(jī)溝通的介質(zhì)

操作系統(tǒng)和硬件之間的關(guān)系:操作系統(tǒng)的出現(xiàn)就是運(yùn)行于硬件之上岖寞,來控制硬件的恋拍,我們開發(fā)時(shí)嘀粱,只需要調(diào)用操作系統(tǒng)為我們提供的簡單而優(yōu)雅的接口就可以了

cpu是人的大腦,負(fù)責(zé)運(yùn)算豆同,CPU有向下兼容性

64位處理器可以跑為32位處理器編寫的程序,反之則不行

內(nèi)存是人的記憶含鳞,負(fù)責(zé)臨時(shí)存儲(chǔ)

硬盤是人的筆記本影锈,負(fù)責(zé)永久存儲(chǔ)

輸入設(shè)備是耳朵或眼睛,負(fù)責(zé)接收外部的信息傳給cpu

輸出設(shè)備是你的表情蝉绷,負(fù)責(zé)經(jīng)過處理后輸出的結(jié)果

以上所有的設(shè)備都通過總線連接精居,總線相當(dāng)于人的神經(jīng)


寄存器:通用寄存器,程序計(jì)數(shù)器潜必,堆棧指針靴姿,程序狀態(tài)字寄存。比內(nèi)存運(yùn)行速度高磁滚,和CPU處理速度差不多

通用寄存器:除了用來保存變量和結(jié)果的通用寄存器除外

程序計(jì)數(shù)器:保存了將要取出的下一條指令的內(nèi)存地址佛吓。在指令取出后,程序計(jì)算器就被更新以便執(zhí)行后期的指令

堆棧指針:它指向內(nèi)存中當(dāng)前堆棧的頂端

程序狀態(tài)字寄存(PSW):包含了條碼位垂攘,CPU優(yōu)先級(jí)维雇,模式(用戶態(tài)或內(nèi)核態(tài)),以及各種其他控制位(可以通過應(yīng)用軟件驅(qū)動(dòng)硬件)


內(nèi)核態(tài)與用戶態(tài):除了在嵌入式系統(tǒng)中的非常簡答的CPU之外晒他,多數(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í),cpu可以執(zhí)行指令集中所有的指令灼伤,很明顯触徐,所有的指令中包含了使用硬件的所有功能,(操作系統(tǒng)在內(nèi)核態(tài)下運(yùn)行狐赡,從而可以訪問整個(gè)硬件)

用戶態(tài):用戶程序在用戶態(tài)下運(yùn)行撞鹉,僅僅只能執(zhí)行cpu整個(gè)指令集的一個(gè)子集,該子集中不包含操作硬件功能的部分,因此鸟雏,一般情況下享郊,在用戶態(tài)中有關(guān)I/O和內(nèi)存保護(hù)(操作系統(tǒng)占用的內(nèi)存是受保護(hù)的,不能被別的程序占用)孝鹊,當(dāng)然炊琉,在用戶態(tài)下,將PSW中的模式設(shè)置成內(nèi)核態(tài)也是禁止的惶室。

內(nèi)核態(tài)與用戶態(tài)切換

用戶態(tài)下工作的軟件不能操作硬件温自,但是我們的軟件比如暴風(fēng)影音,一定會(huì)有操作硬件的需求皇钞,比如從磁盤上讀一個(gè)電影文件悼泌,那就必須經(jīng)歷從用戶態(tài)切換到內(nèi)核態(tài)的過程,為此夹界,用戶程序必須使用系統(tǒng)調(diào)用(system call)馆里,系統(tǒng)調(diào)用陷入內(nèi)核并調(diào)用操作系統(tǒng),TRAP指令把用戶態(tài)切換成內(nèi)核態(tài)可柿,并啟用操作系統(tǒng)從而獲得服務(wù)鸠踪。

存儲(chǔ)器系列:

先上一張圖:

1

寄存器:L1緩存,用與cpu相同材質(zhì)制造,與cpu一樣快复斥,因而cpu訪問它無時(shí)延营密,典型容量是:在32位cpu中為32*32,在64位cpu中為64*64目锭,在兩種情況下容量均<1KB评汰。

高速緩存:L2緩存,主要由硬件控制高速緩存的存取,內(nèi)存中有高速緩存行按照0~64字節(jié)為行0痢虹,64~127為行1被去。。奖唯。最常用的高速緩存行放置在cpu內(nèi)部或者非常接近c(diǎn)pu的高速緩存中惨缆。

,比如丰捷,多數(shù)操作系統(tǒng)在內(nèi)存中保留頻繁使用的文件(的一部分)坯墨,以避免從磁盤中重復(fù)地調(diào)用這些文件,類似的/root/a/b/c/d/e/f/a.txt的長路徑名轉(zhuǎn)換成該文件所在的磁盤地址的結(jié)果然后放入緩存瓢阴,可以避免重復(fù)尋找地址畅蹂,還有一個(gè)web頁面的url地址轉(zhuǎn)換為網(wǎng)絡(luò)地址(IP)地址后,這個(gè)轉(zhuǎn)換結(jié)果也可以緩存起來供將來使用荣恐。

再往下一層是主存,此乃存儲(chǔ)器系統(tǒng)的主力,主存通常稱為隨機(jī)訪問存儲(chǔ)RAM叠穆,就是我們通常所說的內(nèi)存少漆,容量一直在不斷攀升,所有不能再高速緩存中找到的硼被,都會(huì)到主存中找示损,主存是易失性存儲(chǔ),斷電后數(shù)據(jù)全部消失

還有一類存儲(chǔ)器就是CMOS嚷硫,它是易失性的检访,許多計(jì)算機(jī)利用CMOS存儲(chǔ)器來保持當(dāng)前時(shí)間和日期。CMOS存儲(chǔ)器和遞增時(shí)間的電路由一小塊電池驅(qū)動(dòng)仔掸,所以脆贵,即使計(jì)算機(jī)沒有加電,時(shí)間也仍然可以正確地更新起暮,除此之外CMOS還可以保存配置的參數(shù)卖氨,比如,哪一個(gè)是啟動(dòng)磁盤等负懦,之所以采用CMOS是因?yàn)樗碾姺浅I偻厕啵粔K工廠原裝電池往往能使用若干年,但是當(dāng)電池失效時(shí)纸厉,相關(guān)的配置和時(shí)間等都將丟失

磁盤(硬盤):磁盤低速的原因是因?yàn)樗环N機(jī)械裝置系吭,在磁盤中有一個(gè)或多個(gè)金屬盤片,它們以5400颗品,7200或更高速度旋轉(zhuǎn)肯尺,從邊緣開始有一個(gè)機(jī)械臂懸在盤面上,這類似于老式黑膠唱片機(jī)上的拾音臂抛猫。信息卸載磁盤上的一些列的同心圓上蟆盹,是一連串的2進(jìn)制位(稱為bit位),為了統(tǒng)計(jì)方法闺金,8個(gè)bit稱為一個(gè)字節(jié)bytes逾滥,1024bytes=1k,1024k=1M败匹,1024M=1G,所以我們平時(shí)所說的磁盤容量最終指的就是磁盤能寫多少個(gè)2進(jìn)制位寨昙。

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

平均尋道時(shí)間

機(jī)械手臂從一個(gè)柱面隨機(jī)移動(dòng)到相鄰的柱面的時(shí)間成為尋道時(shí)間舔哪,找到了磁道就以為著招到了數(shù)據(jù)所在的那個(gè)圈圈,但是還不知道數(shù)據(jù)具體這個(gè)圓圈的具體位置

平均延遲時(shí)間

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

虛擬內(nèi)存:

許多計(jì)算機(jī)支持虛擬內(nèi)存機(jī)制捉蚤,該機(jī)制使計(jì)算機(jī)可以運(yùn)行大與物理內(nèi)存的程序抬驴,方法是將正在使用的程序放入內(nèi)存去執(zhí)行,而暫時(shí)不需要執(zhí)行的程序放到磁盤的某塊地方缆巧,這塊地方成為虛擬內(nèi)存布持,在linux中稱為swap,這種機(jī)制的核心在于快速的映射內(nèi)存地址,由CPU中的一個(gè)部分負(fù)責(zé)陕悬,成為存儲(chǔ)器管理單元

磁帶:因其大容量题暖,在地震水災(zāi)火災(zāi)時(shí)可移動(dòng)性強(qiáng)等特性,常被用來做備份

設(shè)備驅(qū)動(dòng):每個(gè)硬件廠商都會(huì)為自己的硬件添加支持各種操作系統(tǒng)的接口捉超,方便該操作系統(tǒng)的CPU調(diào)用驅(qū)動(dòng)

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

總線:處理I/O設(shè)備及cpu到存儲(chǔ)器

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

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

操作系統(tǒng)的啟動(dòng)流程:在計(jì)算機(jī)的主板上有一個(gè)基本的輸入輸出程序(Basic? Input Output system)

BIOS就相當(dāng)于一個(gè)小的操作系統(tǒng)拼岳,它有底層的I/O軟件枝誊,包括讀鍵盤,寫屏幕裂问,進(jìn)行磁盤I/O,該程序存放于一非易失性閃存RAM中

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

2.BIOS開始運(yùn)行侧啼,檢測硬件: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)程表),穿件需要的進(jìn)程主届,并在每個(gè)終端上啟動(dòng)登錄程序或GUI

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

2
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末赵哲,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子君丁,更是在濱河造成了極大的恐慌枫夺,老刑警劉巖,帶你破解...
    沈念sama閱讀 217,542評(píng)論 6 504
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件绘闷,死亡現(xiàn)場離奇詭異橡庞,居然都是意外死亡较坛,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,822評(píng)論 3 394
  • 文/潘曉璐 我一進(jìn)店門毙死,熙熙樓的掌柜王于貴愁眉苦臉地迎上來燎潮,“玉大人喻鳄,你說我怎么就攤上這事扼倘。” “怎么了除呵?”我有些...
    開封第一講書人閱讀 163,912評(píng)論 0 354
  • 文/不壞的土叔 我叫張陵再菊,是天一觀的道長。 經(jīng)常有香客問我颜曾,道長纠拔,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,449評(píng)論 1 293
  • 正文 為了忘掉前任泛豪,我火速辦了婚禮稠诲,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘诡曙。我一直安慰自己臀叙,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,500評(píng)論 6 392
  • 文/花漫 我一把揭開白布价卤。 她就那樣靜靜地躺著劝萤,像睡著了一般。 火紅的嫁衣襯著肌膚如雪慎璧。 梳的紋絲不亂的頭發(fā)上床嫌,一...
    開封第一講書人閱讀 51,370評(píng)論 1 302
  • 那天,我揣著相機(jī)與錄音胸私,去河邊找鬼厌处。 笑死,一個(gè)胖子當(dāng)著我的面吹牛岁疼,可吹牛的內(nèi)容都是我干的阔涉。 我是一名探鬼主播,決...
    沈念sama閱讀 40,193評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼五续,長吁一口氣:“原來是場噩夢啊……” “哼洒敏!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起疙驾,我...
    開封第一講書人閱讀 39,074評(píng)論 0 276
  • 序言:老撾萬榮一對(duì)情侶失蹤凶伙,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后它碎,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體函荣,經(jīng)...
    沈念sama閱讀 45,505評(píng)論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡显押,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,722評(píng)論 3 335
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了傻挂。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片乘碑。...
    茶點(diǎn)故事閱讀 39,841評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖金拒,靈堂內(nèi)的尸體忽然破棺而出兽肤,到底是詐尸還是另有隱情,我是刑警寧澤绪抛,帶...
    沈念sama閱讀 35,569評(píng)論 5 345
  • 正文 年R本政府宣布资铡,位于F島的核電站,受9級(jí)特大地震影響幢码,放射性物質(zhì)發(fā)生泄漏笤休。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,168評(píng)論 3 328
  • 文/蒙蒙 一症副、第九天 我趴在偏房一處隱蔽的房頂上張望店雅。 院中可真熱鬧,春花似錦贞铣、人聲如沸闹啦。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,783評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽亥揖。三九已至,卻和暖如春圣勒,著一層夾襖步出監(jiān)牢的瞬間费变,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 32,918評(píng)論 1 269
  • 我被黑心中介騙來泰國打工圣贸, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留挚歧,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 47,962評(píng)論 2 370
  • 正文 我出身青樓吁峻,卻偏偏與公主長得像滑负,于是被迫代替她去往敵國和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子用含,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,781評(píng)論 2 354

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