作業系統內核 有3大概念:中斷(硬中斷)、例外(軟中斷)、系統呼叫(陷入),本文主要學習總結分享這3個概念,
| 中斷 | 例外 | 系統呼叫 | |
| 源頭 | 外設引起, 具有隨機性和突發性 | 應用程式意想不到的行為, 是可預料的 | 應用程式主動請求作業系統提供服務 |
| 回應方式 | 異步 | 同步 | 異步/同步 |
| 處理機制 | 持續的、對應用程式是透明的 | 殺死或重新執行意想不到的應用程式指令 | 等待或持續 |
- 含義:由硬體設備發起的處理請求,稱為中斷,例:I/O中斷、時鐘中斷(如:時間片)、控制臺中斷等,中斷也會使CPU 由用戶態變為內核態,使作業系統內核重新奪回對CPU的控制權(也是內核奪回CPU使用權的唯一途徑),當然作業系統內核也會在合適的時候主動把CPU的使用權讓給應用程式,
- 處理:
- 硬體處理:根據內部或外部事件設定中斷標志,然后根據中斷向量呼叫相應的中斷服務例程,
-
- 軟體處理:先進行現場保存,然后執行中斷服務處理,最后清除中斷標志和恢復現場,(暫停應用程式運行,保存應用程式運行狀態,比如暫存器資料,待中斷處理完成 即中斷服務例程完成后 進行應用程式狀態恢復)
- 含義:應用程式執行了非法指令或其他原因(如:CPU自身例外、記憶體錯誤),導致當前指令執行失敗的處理請求,稱為例外,
- 處理:作業系統內核選擇 直接殺死行程 或準備資源重新嘗試執行應用程式指令(重新嘗試執行失敗的指令,這程序對應用程式是透明的),
- 含義:應用程式「主動」向作業系統發出的服務請求,呼叫系統提供的一些簡單易用的服務,例:設備管理、檔案管理、行程控制、行程通信、記憶體管理等
- 處理:等待或持續,系統的共享資源由內核統一管理,所以對共享資源的呼叫必須由作業系統內核來對各個請求進行協調處理,保證系統的穩定性和安全性,
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/195868.html
標籤:Windows
