計算機基礎(一)—— 硬件

CPU處理器:

? ? ? ? 計算機的大腦就是CPU,它從內存中取指令->解碼->執行,然后再取指->解碼->執行下一條指令,周而復始,直至整個程序被執行完成。

? ? ? ?每個CPU都有一套可執行的專門指令集,任何軟件的執行最終都要轉化成CPU的指令去執行。所以Pentium(英特爾第五代x86架構的微處理器)不能執行SPARC(另外一種處理器)的程序。

? ? ? ?因訪問內存以得到指令或數據的時間比CPU執行指令花費的時間要長得多,所以,所有CPU內部都有一些用來保存關鍵變量臨時數據的寄存器,這樣通常在CPU的指令集中專門提供一些指令,用來將一個字(可以理解為數據)從內存調入寄存器,以及將一個字從寄存器存入內存。CPU其他的指令集可以把來自寄存器、內存的操作數據組合,或者用兩者產生一個結果,比如將兩個字相加并把結果存在寄存器或內存中。

寄存器的分類

? ? ? ?除了用來保存變量和臨時結果的通用寄存器外,多數計算機還有一些對程序可見的專門寄存器,其中之一便是程序計數器,它保存了將要取出的下一條指令的內存地址。在指令取出后,程序計算器就被更新以便執行后期的指令

? ? ? ?另外一個寄存器便是堆棧指針,它指向內存中當前棧的頂端。該棧包含已經進入但是還沒有退出的每個過程中的一個框架。在一個過程的堆??蚣苤斜4媪擞嘘P的輸入參數、局部變量以及那些沒有保存在寄存器中的臨時變量

? ? ? ?最后 一個非常重要的寄存器就是程序狀態字寄存器(Program Status Word,PSW),這個寄存器包含了條碼位(由比較指令設置)、CPU優先級、模式(用戶態或內核態),以及各種其他控制位。用戶通常讀入整個PSW,但是只對其中少量的字段寫入。在系統調用和I/O中,PSW非常非常非常非常非常非常重要

寄存器的維護

? ? ? ?操作系統必須知曉所有的寄存器。在時間多路復用的CPU中,操作系統會經常中止正在運行的某個程序并啟動(或再次啟動)另一個程序。每次停止一個運行著的程序時,操作系統必須保存所有的寄存器,這樣在稍后該程序被再次運行時,可以把這些寄存器重新裝入。

內核態與用戶態

? ? ? ?除了在嵌入式系統中的非常簡答的CPU之外,多數CPU都有兩種模式,即內核態與用戶態。

? ? ? ?通常,PSW中有一個二進制位控制這兩種模式。

? ? ? 內核態:當CPU在內核態運行時,CPU可以執行指令集中所有的指令,很明顯,所有的指令中包含了使用硬件的所有功能,(操作系統在內核態下運行,從而可以訪問整個硬件)

? ? ? 用戶態:用戶程序在用戶態下運行,僅僅只能執行CPU整個指令集的一個子集,該子集中不包含操作硬件功能的部分,因此,一般情況下,在用戶態中有關I/O和內存保護(操作系統占用的內存是受保護的,不能被別的程序占用),當然,在用戶態下,將PSW中的模式設置成內核態也是禁止的。

多線程和多核芯片

? ? ? ?摩爾定律指出,芯片中的晶體管數量每18個月翻一倍,隨著晶體管數量的增多,更強大的功能稱為了可能,如

? ? ? ?I.第一步增強:在CPU芯片中加入更大的緩存,一級緩存L1,用和CPU相同的材質制成,CPU訪問它沒有時延

? ? ? ?II.第二步增強:一個CPU中的處理邏輯增多,intel公司首次提出,稱為多線程(multithreading)或超線程(hyperthreading),對用戶來說一個有兩個線程的CPU就相當于兩個CPU,我們后面要學習的進程和線程的知識就起源于這里,進程是資源單位而線程才是CPU的執行單位

? ? ? ?多線程運行CPU保持兩個不同的線程狀態,可以在納秒級的時間內來回切換,速度快到你看到的結果是并發的,偽并行的,然而多線程不提供真正的并行處理,一個CPU同一時刻只能處理一個進程(一個進程中至少一個線程)

? ? ? ?III.第三步增強:除了多線程,還出現了傲寒2個或者4個完整處理器的CPU芯片,如下圖。要使用這類多核芯片肯定需要有多處理操作系統

intel的L2緩存結構
AMD的L2緩存結構

存儲器

? ? ? ? 存儲器有許多種類,按照存儲速度由高到低排名:寄存器->高速緩存->內存->固態硬盤->磁盤->磁帶。

寄存器:

? ? ? ? 即L1緩存,與CPU相同材質制造,速度一樣快,因而CPU訪問它無時延。

高速緩存:

? ? ? 即L2、L3緩存,二級緩存是CPU性能表現的關鍵之一,在CPU核心不變化的情況下,增加二級緩存容量能使性能大幅度提高。而同一核心的CPU高低端之分往往也是在二級緩存上有差異,由此可見二級緩存對于CPU的重要性。

? ? ? CPU在緩存中找到有用的數據被稱為命中,當緩存中沒有CPU所需的數據時(這時稱為未命中),CPU才訪問內存。從理論上講,在一顆擁有二級緩存的CPU中,讀取一級緩存的命中率為80%。也就是說CPU一級緩存中找到的有用數據占數據總量的80%,剩下的20%從二級緩存中讀取。由于不能準確預測將要執行的數據,讀取二級緩存的命中率也在80%左右(從二級緩存讀到有用的數據占總數據的16%)。那么還有的數據就不得不從內存調用,但這已經是一個相當小的比例了。目前的較高端的CPU中,還會帶有三級緩存,它是為讀取二級緩存后未命中的數據設計的—種緩存,在擁有三級緩存的CPU中,只有約5%的數據需要從內存中調用,這進一步提高了CPU的效率。

主存:

? ? ? ?再往下一層是主存,此乃存儲器系統的主力,主存通常稱為隨機訪問存儲RAM,就是我們通常所說的內存,容量一直在不斷攀升,所有不能在高速緩存中找到的,都會到主存中找,主存是易失性存儲,斷電后數據全部消失。

非易失性隨機訪問存儲:

? ? ? ?除了主存RAM之外,許多計算機已經在使用少量的非易失性隨機訪問存儲如ROM(Read Only Memory,ROM),在電源切斷之后,非易失性存儲的內容并不會丟失,ROM只讀存儲器在工廠中就被編程完畢,然后再也不能修改。ROM速度快且便宜,在有些計算機中,用于啟動計算機的引導加載模塊就存放在ROM中,另外一些I/O卡也采用ROM處理底層設備的控制。

? ? ? ?EEPROM(Electrically Erasable PROM,電可擦除可編程ROM)和閃存(flash memory)也是非易失性的,但是與ROM相反,他們可以擦除和重寫。不過重寫時花費的時間比寫入RAM要多。在便攜式電子設備中中,閃存通常作為存儲媒介。閃存是數碼相機中的膠卷,是便攜式音譯播放器的磁盤,還應用于固態硬盤。閃存在速度上介于RAM和磁盤之間,但與磁盤不同的是,閃存擦除的次數過多,就被磨損了。

CMOS:

? ? ?還有一類存儲器就是CMOS,它是易失性的,許多計算機利用CMOS存儲器來保持當前時間和日期。CMOS存儲器和遞增時間的電路由一小塊電池驅動,所以,即使計算機沒有加電,時間也仍然可以正確地更新,除此之外CMOS還可以保存配置的參數,比如,哪一個是啟動磁盤等,之所以采用CMOS是因為它耗電非常少,一塊工廠原裝電池往往能使用若干年,但是當電池失效時,相關的配置和時間等都將丟失。


主板上的CMOS存儲器和電池

磁盤:

? ? ? ? 磁盤低速的原因是因為它一種機械裝置,在磁盤中有一個或多個金屬盤片,它們以5400,7200或10800rpm(RPM =revolutions per minute 每分鐘多少轉 )的速度旋轉。從邊緣開始有一個機械臂懸在盤面上,這類似于老式黑膠唱片機上的拾音臂。信息寫在磁盤上的一些列的同心圓上,是一連串的2進制位(稱為bit位),為了統計方法,8個bit稱為一個字節bytes,1024bytes=1k,1024k=1M,1024M=1G,所以我們平時所說的磁盤容量最終指的就是磁盤能寫多少個2進制位。

? ? ? ? 每個磁頭可以讀取一段換新區域,稱為磁道, 把一個戈丁手臂位置上所以的磁道合起來,組成一個柱面,每個磁道劃成若干扇區,扇區典型的值是512字節。數據都存放于一段一段的扇區,即磁道這個圓圈的一小段圓圈,從磁盤讀取一段數據需要經歷尋道時間和延遲時間。

虛擬內存:

? ? ? ?許多計算機支持虛擬內存機制,該機制使計算機可以運行大于物理內存的程序,方法是將正在使用的程序放入內存取執行,而暫時不需要執行的程序放到磁盤的某塊地方,這塊地方成為虛擬內存,在linux中成為swap,這種機制的核心在于快速地映射內存地址,由CPU中的一個部件負責,成為存儲器管理單元(Memory Management Unit MMU)

磁帶:

? ? ? 價錢相同的情況下比硬盤擁有更高的存儲容量,雖然速度低于磁盤,但是因其大容量,在地震水災火災時可移動性強等特性,常被用來做備份。(常見于大型數據庫系統中)


總線

? ? ? ? 北橋,南橋是主板上芯片組中最重要的兩塊了。相對的來講,北橋要比南橋更加重要。北橋連接系統總線,擔負著 CPU訪問內存的重任。同時連接這AGP插口,控制PCI總線,割斷了系統總線和局部總線,在這一段上速度是最快的。南橋不和CPU連接通常用來作I/O 和IDE設備的控制。所以速度比較慢,一般情況下,南橋和北橋中間是PCI總線。

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市,隨后出現的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 230,362評論 6 544
  • 序言:濱河連續發生了三起死亡事件,死亡現場離奇詭異,居然都是意外死亡,警方通過查閱死者的電腦和手機,發現死者居然都...
    沈念sama閱讀 99,577評論 3 429
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人,你說我怎么就攤上這事。” “怎么了?”我有些...
    開封第一講書人閱讀 178,486評論 0 383
  • 文/不壞的土叔 我叫張陵,是天一觀的道長。 經常有香客問我,道長,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 63,852評論 1 317
  • 正文 為了忘掉前任,我火速辦了婚禮,結果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己,他們只是感情好,可當我...
    茶點故事閱讀 72,600評論 6 412
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發上,一...
    開封第一講書人閱讀 55,944評論 1 328
  • 那天,我揣著相機與錄音,去河邊找鬼。 笑死,一個胖子當著我的面吹牛,可吹牛的內容都是我干的。 我是一名探鬼主播,決...
    沈念sama閱讀 43,944評論 3 447
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 43,108評論 0 290
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后,有當地人在樹林里發現了一具尸體,經...
    沈念sama閱讀 49,652評論 1 336
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 41,385評論 3 358
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發現自己被綠了。 大學時的朋友給我發了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 43,616評論 1 374
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內的尸體忽然破棺而出,到底是詐尸還是另有隱情,我是刑警寧澤,帶...
    沈念sama閱讀 39,111評論 5 364
  • 正文 年R本政府宣布,位于F島的核電站,受9級特大地震影響,放射性物質發生泄漏。R本人自食惡果不足惜,卻給世界環境...
    茶點故事閱讀 44,798評論 3 350
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 35,205評論 0 28
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至,卻和暖如春,著一層夾襖步出監牢的瞬間,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 36,537評論 1 295
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個月前我還...
    沈念sama閱讀 52,334評論 3 400
  • 正文 我出身青樓,卻偏偏與公主長得像,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 48,570評論 2 379

推薦閱讀更多精彩內容

  • 姓名:朱佳男 學號:17021210978 專業:信號與信息處理 轉載自:http://www.jianshu.c...
    DNYRoo7閱讀 2,705評論 0 1
  • 1. 基礎知識 1.1、 基本概念、 功能 馮諾伊曼體系結構1、計算機處理的數據和指令一律用二進制數表示2、順序執...
    yunpiao閱讀 5,384評論 1 22
  • CPU Cache 今天的CPU比25年前更復雜。那時候,CPU內核的頻率與內存總線的頻率相當。內存訪問只比寄存器...
    blueshadow閱讀 3,022評論 0 5
  • 在出租車里我們一家親朋好友出行,突然天空中下著雨夾雪。這樣的壞天氣基本讓好心情涼了一大半,媽媽說這天氣太不好了。黃...
    耕耘生活閱讀 318評論 3 5
  • 海 濱 之 旅 10月18日至23日,與單位同事隨團到青島、威海、蓬萊、旅順、大連旅游。旅游地點都是沿海城市,海濱...
    六耳不傳閱讀 301評論 2 3