中斷處理與進程調度的區別與聯系


中斷處理

中斷(Interruption)又稱外中斷,指CPU所執行指令之外的事件發生,如時鍾中斷。
異常(Exception)又稱內中斷、例外、陷入(trap),指來自CPU內部執行指令的事件發生,對異常的處理一般依賴當前程序的運行現場,且異常不能被屏蔽。
中斷處理的主要目的是利用中斷服務程序對中斷源進行處理,以下從外中斷與內中斷兩個例子進行分析:

  • 系統會依賴時鍾中斷定期的獲取到系統的控制權,如果沒有時鍾中斷的話操作系統有可能永遠獲取不到處理機,也就無法實現對其它進程的時間片管理等工作。
  • 請求系統調用服務必須利用到內中斷,此內中斷的根本目的就是獲取中斷服務程序所提供的只能在核心態實現的服務。
    總結下上述文字:中斷的目的地是程序。

進程調度

在進程調度完成之后,往往會立刻進行進程切換,涉及到進程切換的具體過程就不再展開了,但是現在已經能夠發現進程調度和中斷處理的區別了,那就是進程調度的目的地是切換進程。
那為什么剛學習的時候會分不清中斷與調度的關系呢,那就是因為進程切換是在核心態下執行,從用戶態轉到核心態的唯一方式是通過中斷,也就是進程調度切換一定是通過中斷實現的。(這里后續詳細的說下,該吃飯了。。。)


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM