OS - 计算机基本组成
文章目錄
- 生猛干貨
- 概
- 基本硬件組成
- CPU
- 內(nèi)存
- 主板
- 馮·諾依曼體系結(jié)構(gòu)
- 搞定計(jì)算機(jī)基礎(chǔ)內(nèi)功
生猛干貨
計(jì)算機(jī)專業(yè)學(xué)生、非科班程序員必備! 90%程序員忽略的大廠招聘考點(diǎn)、技能進(jìn)階秘訣盡在這里!
概
基本硬件組成
2000年左右, 要自己組裝一臺(tái)計(jì)算機(jī),要先有三大件,CPU、內(nèi)存和主板。
CPU
CPU (Central Processing Unit) 中央處理器 。 簡單來說, CPU是一個(gè)超級(jí)精細(xì)的印刷電路版。
內(nèi)存
第二個(gè)重要的配件,就是 內(nèi)存(Memory)
程序讀取的數(shù)據(jù)、計(jì)算得到的結(jié)果,也都要放在內(nèi)存里
內(nèi)存通常直接可以插在主板上 。
存放在內(nèi)存里的程序和數(shù)據(jù),需要被CPU讀取,CPU計(jì)算完之后,還要把數(shù)據(jù)寫回到內(nèi)存。然而CPU不能直接插到內(nèi)存上,反之亦然。于是,最后一個(gè)大件—— 主板(Motherboard)
主板
主板是一個(gè)有著各種各樣,有時(shí)候多達(dá)數(shù)十乃至上百個(gè)插槽的配件。
CPU要插在主板上,內(nèi)存也要插在主板上。主板的 芯片組(Chipset)和 總線(Bus)解決了CPU和內(nèi)存之間如何通信的問題。芯片組控制了數(shù)據(jù)傳輸?shù)牧鬓D(zhuǎn),也就是數(shù)據(jù)從哪里到哪里的問題。總線則是實(shí)際數(shù)據(jù)傳輸?shù)母咚俟贰?/p>
因此, 總線速度(Bus Speed)決定了數(shù)據(jù)能傳輸?shù)枚嗫臁?/p>
有了CPU、內(nèi)存、主板 ,那么只要配上 電 源供電,計(jì)算機(jī)差不多就可以跑起來了。
但是現(xiàn)在還缺少各類輸入(Input)/輸出 (Output)設(shè)備,也就是我們常說的I/O設(shè)備。
顯示器我們才能看到計(jì)算機(jī)輸出的各種圖像、文字,這就是輸出設(shè)備。 鼠標(biāo)和鍵盤能輸入,就是所謂的 輸入設(shè)備。
最后還要配上一個(gè)硬盤。這樣各種數(shù)據(jù)才能持久地保存下來。絕大部分人都會(huì)給自己的機(jī)器裝上一個(gè)機(jī)箱,配上風(fēng)扇,解決灰塵和散熱的問題。
只不過機(jī)箱和風(fēng)扇,算不上是計(jì)算機(jī)的必備硬件,拿個(gè)紙板或者外面放個(gè)電風(fēng)扇,也一樣能用。
馮·諾依曼體系結(jié)構(gòu)
馮·諾依曼提出的 馮·諾依曼體系結(jié)構(gòu),也叫存儲(chǔ)程序計(jì)算機(jī)。
First Draft of a Report on the EDVAC 描述了他心目中的一臺(tái)計(jì)算機(jī)應(yīng)該長什么樣。這篇報(bào)告在歷史上有個(gè)很特殊的簡稱,叫 First Draft 《第一份草案》。這樣,現(xiàn)代計(jì)算機(jī)的發(fā)展就從祖師爺寫的一份草案開始了。
首先是一個(gè)包含算術(shù)邏輯單元(Arithmetic Logic Unit,ALU)和處理器寄存器(Processor Register)的處理器單元(Processing Unit),用來完成各種算術(shù)和邏輯運(yùn)算。因?yàn)樗軌蛲瓿筛鞣N數(shù)據(jù)的處理或者計(jì)算工作,因此也有人把這個(gè)叫作數(shù)據(jù)通路(Datapath)或者運(yùn)算器。
然后是一個(gè)包含指令寄存器(Instruction Reigster)和程序計(jì)數(shù)器(Program Counter)的控制器單元(Control Unit/CU),用來控制程序的流程,通常就是不同條件下的分支和跳轉(zhuǎn)。在現(xiàn)在的計(jì)算機(jī)里,上面的算術(shù)邏輯單元和這里的控制器單元,共同組成了我們說的CPU。
接著是用來存儲(chǔ)數(shù)據(jù)(Data)和指令(Instruction)的內(nèi)存。以及更大容量的外部存儲(chǔ),在過去,可能是磁帶、磁鼓這樣的設(shè)備,現(xiàn)在通常就是硬盤。
最后就是各種 輸入和輸出設(shè)備,以及對(duì)應(yīng)的輸入和輸出機(jī)制。我們現(xiàn)在無論是使用什么樣的計(jì)算機(jī),其實(shí)都是和輸入輸出設(shè)備在打交道。個(gè)人電腦的鼠標(biāo)鍵盤是輸入設(shè)備,顯示器是輸出設(shè)備。我們用的智能手機(jī),觸摸屏既是輸入設(shè)備,又是輸出設(shè)備。而跑在各種云上的服務(wù)器,則是通過網(wǎng)絡(luò)來進(jìn)行輸入和輸出。這個(gè)時(shí)候,網(wǎng)卡既是輸入設(shè)備又是輸出設(shè)備。
任何一臺(tái)計(jì)算機(jī)的任何一個(gè)部件都可以歸到運(yùn)算器、控制器、存儲(chǔ)器、輸入設(shè)備和輸出設(shè)備中,而所有的現(xiàn)代計(jì)算機(jī)也都是基于這個(gè)基礎(chǔ)架構(gòu)來設(shè)計(jì)開發(fā)的。
而所有的計(jì)算機(jī)程序,也都可以抽象為從 輸入設(shè)備讀取輸入信息,通過 運(yùn)算器和 控制器來執(zhí)行存儲(chǔ)在 存儲(chǔ)器里的程序,最終把結(jié)果輸出到 輸出設(shè)備中。而我們所有撰寫的無論高級(jí)還是低級(jí)語言的程序,也都是基于這樣一個(gè)抽象框架來進(jìn)行運(yùn)作的。
搞定計(jì)算機(jī)基礎(chǔ)內(nèi)功
《新程序員》:云原生和全面數(shù)字化實(shí)踐50位技術(shù)專家共同創(chuàng)作,文字、視頻、音頻交互閱讀總結(jié)
以上是生活随笔為你收集整理的OS - 计算机基本组成的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: OS - MMAP初探
- 下一篇: 深入理解分布式技术 - 微服务为什么需要