CPU,内核,寄存器,缓存,RAM,ROM的知识
偷偷說一下,這個圖片是晚上 8 點鐘的太陽,一個騷男華為總工發(fā)給我的,有時間還是想出去走走
很多人使用計算機,但是對計算機卻不是很懂,即使是作為非常資深的碼農(nóng),也不能做到心中有劍的地步,那么怎么辦?劍法不好,只好練劍了。
先來一張圖
CPU:
中央處理器(CPU,Central Processing Unit)是一塊超大規(guī)模的集成電路,是一臺計算機的運算核心(Core)和控制核心( Control Unit)。它的功能主要是解釋計算機指令以及處理計算機軟件中的數(shù)據(jù)。
中央處理器主要包括運算器(算術(shù)邏輯運算單元,ALU,Arithmetic Logic Unit)和高速緩沖存儲器(Cache)及實現(xiàn)它們之間聯(lián)系的數(shù)據(jù)(Data)、控制及狀態(tài)的總線(Bus)。它與內(nèi)部存儲器(Memory)和輸入/輸出(I/O)設(shè)備合稱為電子計算機三大核心部件。
寄存器
CPU 是皇帝,那寄存器可以說是皇帝身邊的小太監(jiān)了,隨叫隨到,在所有人里面速度是最快的。
寄存器是中央處理器內(nèi)的組成部份。它跟CPU有關(guān)。寄存器是有限存貯容量的高速存貯部件,它們可用來暫存指令、數(shù)據(jù)和位址。在中央處理器的控制部件中,包含的寄存器有指令寄存器(IR)和程序計數(shù)器(PC)。在中央處理器的算術(shù)及邏輯部件中,包含的寄存器有累加器(ACC)。
存儲器
存儲器范圍最大,它幾乎涵蓋了所有關(guān)于存儲的范疇。你所說的寄存器,內(nèi)存,都是存儲器里面的一種。凡是有存儲能力的硬件,都可以稱之為存儲器,這是自然,硬盤更加明顯了,它歸入外存儲器行列,由此可見——。
內(nèi)存既專業(yè)名上的內(nèi)存儲器,它不是個什么神秘的東西,它也只是存儲器中的滄海一粟,它包涵的范圍也很大,一般分為只讀存儲器(ROM)和隨機存儲器(RAM),以及最強悍的高速緩沖存儲器(CACHE),只讀存儲器應(yīng)用廣泛,它通常是一塊在硬件上集成的可讀芯片,作用是識別與控制硬件,它的特點是只可讀取,不能寫入。RAM?隨機存儲器的特點是可讀可寫,斷電后一切數(shù)據(jù)都消失,我們所說的內(nèi)存條就是指它了。
緩存CACHE
皇帝想拿東西,如果太監(jiān)沒有,那從哪里拿最快?那就是丞相了,緩存還分一級緩存,二級緩存,三級緩存,你買電腦,這個參數(shù)可以用來比較一下。
緩存就是數(shù)據(jù)交換的緩沖區(qū)(稱作Cache),當(dāng)某一硬件要讀取數(shù)據(jù)時,會首先從緩存中查找需要的數(shù)據(jù),如果找到了則直接執(zhí)行,找不到的話則從內(nèi)存中找。由于緩存的運行速度比內(nèi)存快得多,故緩存的作用就是幫助硬件更快地運行。
因為緩存往往使用的是RAM(斷電即掉的非永久儲存),所以在用完后還是會把文件送到硬盤等存儲器里永久存儲。電腦里最大的緩存就是內(nèi)存條了,最快的是CPU上鑲的 L1 和 L2 緩存,顯卡的顯存是給顯卡運算芯片用的緩存,硬盤上也有16M或者32M的緩存。
CACHE 是在 CPU 中速度非常塊,而容量卻很小的一種存儲器,它是計算機存儲器中最強悍的存儲器。由于技術(shù)限制,容量很難提升。
ROM、RAM的區(qū)別:
ROM(只讀存儲器或者固化存儲器)
RAM(隨機存取存儲器)
ROM和RAM指的都是半導(dǎo)體存儲器,ROM是Read Only Memory的縮寫,RAM是Random Access Memory的縮寫。ROM在系統(tǒng)停止供電的時候仍然可以保持?jǐn)?shù)據(jù),而RAM通常都是在掉電之后就丟失數(shù)據(jù),典型的
RAM就是計算機的內(nèi)存。
RAM有兩大類,一種稱為靜態(tài) RAM(Static RAM/SRAM),當(dāng)數(shù)據(jù)被存入其中后不會消失。SRAM速度非常快,是目前讀寫最快的存儲設(shè)備了。當(dāng)這個SRAM 單元被賦予0 或者1 的狀態(tài)之后,它會保持這個狀態(tài)直到下次被賦予新的狀態(tài)或者斷電之后才會更改或者消失。但是存儲1bit 的信息需要4-6 只晶體管。因此它也非常昂貴,所以只在要求很苛刻的地方使用,譬如CPU的一級緩沖,二級緩沖。另一種稱為動態(tài)RAM(Dynamic RAM/DRAM),DRAM 必須在一定的時間內(nèi)不停的刷新才能保持其中存儲的數(shù)據(jù)。DRAM 只要1 只晶體管就可以實現(xiàn)。DRAM保留數(shù)據(jù)的時間很短,速度也比SRAM慢,不過它還是比任何的ROM都要快,但從價格上來說DRAM相比SRAM要便宜很 多,計算機內(nèi)存就是DRAM的。
DRAM分為很多種,常見的主要有FPRAM/FastPage、EDORAM、SDRAM、DDR RAM、RDRAM、SGRAM以及WRAM等,這里介紹其中的一種DDR RAM。DDR RAM(Date-Rate RAM)也稱作DDR SDRAM,這種改進型的RAM和SDRAM是基本一樣的,不同之處在于它可以在一個時鐘讀寫兩次數(shù)據(jù),這樣就使得數(shù)據(jù)傳輸速度加倍了。這是目前電腦中用 得最多的內(nèi)存,而且它有著成本優(yōu)勢,事實上擊敗了Intel的另外一種內(nèi)存標(biāo)準(zhǔn)-Rambus DRAM。在很多高端的顯卡上,也配備了高速DDR RAM來提高帶寬,這可以大幅度提高3D加速卡的像素渲染能力。
ROM也有很多種,PROM是可編程的ROM,PROM和EPROM(可擦除可編程ROM)兩者區(qū)別是,PROM是一次性的,也就是軟件灌入后,就無法修 改了,這種是早期的產(chǎn)品,現(xiàn)在已經(jīng)不可能使用了,而EPROM是通過紫外光的照射擦出原先的程序,是一種通用的存儲器。另外一種EEPROM是通過電子擦出,價格很高,寫入時間很長,寫入很慢。
最初,把只能讀的存儲器叫做ROM(Read Only Memory),并且掉電后數(shù)據(jù)不會丟失。由于不能改寫,因而使用起來很不方便。隨著技術(shù)的進步,在ROM中使用一些新技術(shù),就可以使它具有可以編程的功能。比較早的是熔絲型的可編程ROM,由于是通過熔斷熔絲來編程的,所以這類ROM編程后,就不能再寫了,是一次性的(OTP)。后來又出現(xiàn)了EPROM,是通過紫外線來擦除的,并且通過高壓來編程,這類ROM上面一般有一個透明的石英玻璃窗,看上去挺漂亮的,它就是用來給紫外線照射的。后來又出現(xiàn)了EEPROM,不用紫外線照射就可以擦除,因而可以直接在電路中編程。另外還有FLASH ROM,又可分為NOR FLASH和NAND FLASH。FLASH ROM一般有一個特點,就是寫數(shù)據(jù)時,可以將1改為0,而不能將0改為1,因而寫數(shù)據(jù)前需要擦除,擦除時將所有數(shù)據(jù)置1。
之所以依然叫做ROM,歸納一下,大概有幾個原因:
①不能像RAM那樣快速的寫;
②可能需要特殊的擦寫電壓;
③可能需要特殊的擦寫時序;
④可能需要在寫之前進行擦除操作;
⑤擦寫次數(shù)有限,不像RAM那樣可以隨意寫而不損壞;
⑥掉電后數(shù)據(jù)不會丟失;
⑦有些可寫的存儲器只能寫一次(OTP)。
舉個例子,手機軟件一般放在EEPROM中,我們打電話,有些最后撥打的號碼,暫時是存在SRAM中的,不是馬上寫入通過記錄(通話記錄保存在EEPROM中),因為當(dāng)時有很重要工作(通話)要做,如果寫入,漫長的等待是讓用戶忍無可忍的。
FLASH存儲器又稱閃存,它結(jié)合了ROM和RAM的長處,不僅具備電子可擦出可編程(EEPROM)的性能,還不會斷電丟失數(shù)據(jù)同時可以快速讀取數(shù)據(jù) (NVRAM的優(yōu)勢),U盤和MP3里用的就是這種存儲器。在過去的20年里,嵌入式系統(tǒng)一直使用ROM(EPROM)作為它們的存儲設(shè)備,然而近年來 Flash全面代替了ROM(EPROM)在嵌入式系統(tǒng)中的地位,用作存儲Bootloader以及操作系統(tǒng)或者程序代碼或者直接當(dāng)硬盤使用(U盤)。
目前 Flash 主要有兩種 NOR Flash 和 NADN Flash。NOR Flash 的讀取和我們常見的 SDRAM 的讀取是一樣,用戶可以直接運行裝載在NOR FLASH 里面的代碼,這樣可以減少 SRAM 的容量從而節(jié)約了成本。NAND Flash 沒有采取內(nèi)存的隨機讀取技術(shù),它的讀取是以一次讀取一快的形式來進行的,通常是一次讀取 512 個字節(jié),采用這種技術(shù)的Flash比較廉價。用戶 不能直接運行 NAND Flash 上的代碼,因此好多使用NAND Flash 的開發(fā)板除了使用 NAND Flah 以外,還作上了一塊小的NOR Flash 來運行啟動代碼。
一般小容量的用 NOR Flash,因為其讀取速度快,多用來存儲操作系統(tǒng)等重要信息,而大容量的用NAND FLASH,最常見的 NAND FLASH 應(yīng)用是嵌入式系統(tǒng)采用的 DOC(Disk On Chip)和我們通常用的“閃盤”,可以在線擦除。
文章轉(zhuǎn)自
https://www.zhihu.com/question/24565362/answer/54451597
并做了一些小修正和排版~去掉了 Linux 部分,作者說明了自己對 Linux 不是很懂,我后面會再用文章介紹。
推薦閱讀
CPU 和 GPU
一位跟我一樣疑惑的同學(xué)~
總結(jié)
以上是生活随笔為你收集整理的CPU,内核,寄存器,缓存,RAM,ROM的知识的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。