一.電腦硬體介紹 概念:由一條匯流排把CPU、記憶體和I/O設備串聯起來並與其他設備進行通信。 CPU負責運算,記憶體用於儲存臨時變數,硬碟用於儲存數據 應用程式、操作系統及硬體的關係:參考應用程式的啟動流程 1. 處理器CPU( 寄存器+控制器 ) 取指令 解碼 執行 ,直到程式結束。 1. 通用寄存 ...
一.電腦硬體介紹
- 概念:由一條匯流排把CPU、記憶體和I/O設備串聯起來並與其他設備進行通信。CPU負責運算,記憶體用於儲存臨時變數,硬碟用於儲存數據
- 應用程式、操作系統及硬體的關係:參考應用程式的啟動流程
- 處理器CPU(寄存器+控制器)
- 取指令->解碼->執行,直到程式結束。
- 通用寄存器:用來保存變數和臨時結果
- 程式計數器:它保存了將要取出的下一條指令的記憶體地址。在指令取出後,程式計算器就被更新以便執行後期的指令
- 堆棧指針寄存器:它指向記憶體中當前棧的頂端。該棧包含已經進入但是還沒有退出的每個過程中的一個框架。在一個過程的堆棧框架中保存了有關的輸入參數、局部變數以及那些沒有保存在寄存器中的臨時變數。(知識補充:1.堆棧:就像往箱子里放置疊好的衣服,一件一件往箱子里放,遵循後進先出原則,就像要把第一件衣服取出來,必須從最後一件開始取,直到取出第一件。2.隊列:就像排隊刷卡出大門,遵循先進先出原則,一條隊列,肯定是第一個排隊的人刷卡先走)
- 程式狀態字寄存器(PSW):這個寄存器包含了條碼位(由比較指令設置)、CPU優先順序、模式(用戶態或內核態),以及各種其他控制位。用戶通常讀入整個PSW,但是只對其中少量的欄位寫入
- 內核態與用戶態:
- 程式狀態字寄存器中有一個二進位位控制這兩種模式(0、1)
- 內核態:當cpu在內核態運行時,cpu可以執行指令集中所有的指令,很明顯,所有的指令中包含了使用硬體的所有功能,(操作系統在內核態下運行,從而可以訪問整個硬體)
- 用戶態:用戶程式在用戶態下運行,僅僅只能執行cpu整個指令集的一個子集,該子集中不包含操作硬體功能的部分,因此,一般情況下,在用戶態中有關I/O和記憶體保護(操作系統占用的記憶體是受保護的,不能被別的程式占用),當然,在用戶態下,將PSW中的模式設置成內核態也是禁止的
- 內核態與用戶態切換:用戶態下工作的軟體不能操作硬體,但是我們的軟體比如暴風影音,一定會有操作硬體的需求,比如從磁碟上讀一個電影文件,那就必須經歷從用戶態切換到內核態的過程,為此,用戶程式必須使用系統調用(system call),系統調用陷入內核並調用操作系統,TRAP指令把用戶態切換成內核態,並啟用操作系統從而獲得服務
- CPU中的一級緩存L1就是寄存器。二級緩存L2用於多核CPU之間的通信,訪問速度比訪問記憶體快一點
- 存儲器
- 寄存器就是L1緩存,高速緩存就是L2
- 高速緩存命中:高速緩存硬體檢查所需要的高速緩存行是否在高速緩存中,如果是,則為高速緩存命中
- 記憶體RAM:斷電後數據全部消失,易失性儲存
- ROM:只讀存儲器在工廠中就被編程完畢,然後再也不能修改
- 快閃記憶體:類似固態硬碟,不像機械硬碟那麼脆弱,但是擦除次數過多就會損壞
- CMOS儲存器:內置一小塊電池,主要用於記錄時間和日期參數,還保存一些其他參數,入記錄哪一個是系統磁碟等等
- 磁碟
- 扇區:機械硬碟中,盤面一個圓中的一小段
- 平均尋道時間:機械手臂從一個柱面隨機移動到相鄰的柱面的時間成為尋到時間,找到了磁軌就以為著招到了數據所在的那個圈圈,但是還不知道數據具體這個圓圈的具體位置
- 平均延遲時間:機械臂到達正確的磁軌之後還必須等待旋轉到數據所在的扇區下,這段時間成為延遲時間
- 虛擬記憶體:用於運行大於物理記憶體的程式,從機械硬碟中分一塊來暫時運行記憶體暫時不需要但是將要運行的指令,在linux中成為swap,這種機制的核心在於快速地映射記憶體地址,由cpu中的一個部件負責,成為存儲器管理單元(MMU)
- 磁帶
- 容量高,價格便宜但是速度低,一般用來備份(常見於大型資料庫系統中)
- 匯流排
- 北橋PCI:主板上的一塊晶元,連接高速設備
- 南橋ISA:主板上的一塊晶元,連接慢速設備
- 處理器CPU(寄存器+控制器)
二.電腦啟動流程
- 操作系統啟動流程
- 電腦加電
- BIOS開始運行,檢測硬體:CPU、記憶體、硬碟等
- BIOS讀取CMOS存儲器中的參數,選擇啟動設備
- 從啟動設備上讀取第一個扇區的內容(MBR主引導記錄512位元組,前446為引導信息,後64為分區信息,最後兩個為標誌位)
- 根據分區信息讀入BootLoader啟動裝載模塊,啟動操作系統
- 然後操作系統詢問BIOS,以獲得配置信息。對於每種設備,系統會檢查其設備驅動是否存在,如果沒有,系統會要求用戶安裝設備驅動。
- 應用程式啟動流程
- 操作系統實時監控應用程式
- 應用程式發起一個請求,操作系統進行回應
- 在硬碟上進行查找,然後讀取到記憶體
三.單位轉換
- 待補充
- 硬碟讀寫單位及大小
今日總結
- 需將‘處理器’、‘存儲器’及‘磁碟’相關概念搞清,主要是
- cpu、記憶體、硬碟工作原理
- cpu與寄存器
- 內核態於用戶態及轉換機制
- L1,L2緩存,RAM,快閃記憶體,CMOS
- 磁碟結構、尋道與延遲時間
- 虛擬記憶體與MMU
- 操作系統啟動流程及應用程式啟動流程需搞清
- 今日主要是整理了硬體方面相關概念,還需白天進一步加強記憶,畢竟海峰老師說過基礎不好,應該回家種地,明天加油了。