處理器機制

    處理機(處理器)
        中央處理器(CPU):處理器由運算器、控制器、一系列的寄存器)以及高速緩存構成
            寄存器:
                用戶可見寄存器
                控制和狀態寄存器:用於控制處理器的操作通常由操作系統代碼使用
                    程序計數器(pc):記錄將要取出的指令的地址
                    指令寄存器(ir):記錄最近取出的指令
                    程序狀態字(psw):記錄處理器的運行狀態如條件碼、模式、控制位等信息
        操作系統對硬件的需求
            從操作系統的特徵考慮:併發、共享----需要保護
            處理器的狀態:
                在程序狀態字寄存器中專門設置一位,根據運行程序對資源和指令的使用權限而設置不同的CPU狀態
                操作系統需要的兩種CPU狀態:
                    內核態:運行操作系統程序
                    用戶態:運行用戶程序
                特權指令:只能由操作系統使用、用戶程序不能使用的指令
                非特權指令:用戶程序可以使用的指令
            x86系列的處理器:
                X86支持4個處理器特權級別:
                    特權環: RO、R1、R2和R3,從R0到R3,特權能力由高到低
                            R0相當於內核態
                            R3相當於用戶態
                            R1和R2介於兩者之間
        CPU之間的轉換
            用戶態--->內核態:
                唯一途徑:中斷/異常/陷入機制
            內核態--->用戶態
                設置程序狀態字PSW
                中斷與異常機制:
                    概念:時CPU對系統發生的某個事件作出的一種反應(事件的發生改變了CPU的控制流)
                    CPU暫停正在執行的程序,保留現場後自動轉去執行相應事件的處理程序,處理完成後返回斷點繼續執行被打斷的程序
                    中斷的引入:
                        爲了支持CPU和設備之間的並行操作
                        當CPU啓動設備進行輸入/輸出後,設備便可以獨立工作,CPU轉去處理與此次輸入/輸出不相關的事情;當設備完成輸入/輸出後,通過向CPU發中斷,報告此次輸入/輸出的結果,讓CPU決定如何處理以後的事情
                    異常的引入:
                        表示CPU執行指令時本身出現的問題
                        如算術溢出、除零、取數時的奇偶錯,訪存地址時越界或執行了“陷入指令”等,這時硬件改變了CPU當前的執行流程,轉到相應的錯誤處理程序或異常處理程序或執行系統調用
                        舉例:
                           1.看書過程中來電話,在所看處放置書籤,然後去打電話,電話打完後在書籤處繼續看書----中斷
                           2.看書過程中來口渴,在所看處放置書籤,然後去打喝水,喝完水後在書籤處繼續看書,口渴----異常
                事件:
                    中斷(外中斷):
                        I/O中斷:Ctrl+C
                        時鐘中斷:CPU時間片
                        硬件故障:電池沒電
                    異常(內中斷):(陷入、故障、終止)
                        系統調用
                        頁故障
                        保護性異常
                        斷點指令
                        其他程序異常
                    總結:中斷是CPU的外部事件,異常是CPU內部發生故障
                    中斷與異常工作原理
                        硬件應該幹什麼-----中斷/異常響應:捕獲中斷源發出的中斷/異常請求,以一定的方式響應,將處理器控制權交給特定額的處理程序
                        軟件應該幹什麼-----中斷/異常處理程序:識別中斷/異常類型並完成相應的處理
                        中斷響應:
                            開始---取下一條指令---執行指令---檢查指令(處理中斷)
                            在每條指令執行週期的最後時刻掃描中斷,若有中斷,中斷硬件寄存器,查看是否有將該中斷觸發器內容中斷信號?按規定編碼送入PSW的相應住,稱爲中斷碼,通過查中斷向量表引出中斷處理程序

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章