2012年2月25日 星期六

Interrupt and Exception

Interrupt 和 exception 是兩種改變系統執行程式順序的方式,分別透過不同的元件觸發。當 interrupt 或 exception 被觸發時,系統會經由查表找到相對應的處理程式( ISR: Interrupt Service Routine,或稱 interrupt handler ),並中斷原本在執行的程式,讓 CPU 執行 ISR 的內容,之後才再轉回原來的程式中。這是多工( multi-tasking )環境中常常用到的技術。

在此, interrupt 指的是由硬體發出的中斷訊號,而 exception 指的是由軟體或系統所產生的中斷訊號。


Exception 則依照發生的場合可以分為兩種類型: 程式執行錯誤或例外事件,前者是發生在程式執行錯誤時,如被除數為零、 overflow 等;後者則像是 system call 等作業系統所提供的服務。
 
 
Reference:
[1] http://opencsl.openfoundry.org/Lab06_interrupt_exception.rst.html
 
--
/* Note: 去面試考到這個,但太久沒看OS全部都忘光,好慘 - -*/

沒有留言:

張貼留言