硬體中斷和軟體中斷以及中斷與函數調用的區別

來源:互聯網
上載者:User

標籤:blog   http   使用   os   io   ar   代碼   html   

《組合語言程式設計》Richard Blum著:6.2.3中斷

 

中斷有兩種形式:

(1)硬體中斷;

(2)軟體中斷。

 

硬體裝置產生硬體中斷。

使用硬體中斷髮出訊號,表示硬體層發生的事件(比如I/O連接埠接收到輸入訊號時)。

 

程式產生軟體中斷。

它們是把控制交給另一個程式的訊號。

 

當一個程式被中斷調用時,發出調用的程式暫停,被調用的程式接替它運行。指令指標被轉移到被調用的程式,並且從被調用的程式內繼續執行。被調用的程式完成時,它可以把控制返回給發出調用的程式(使用中斷返回指令)。

 

軟體中斷是作業系統提供的,使應用程式可以使用作業系統內的函數,並且,在某些情況下,甚至可以接觸底層的BIOS系統。在Microsoft DOS作業系統中,為很多函數提供了0x21軟體中斷。在Linux領域,0x80中斷用於提供低級核心功能。

 

 

http://blog.sina.com.cn/s/blog_913c070a0100zse4.html

中斷:

1)何時發生可能是不可預料的;CPU正在處理某件事情的時候,外部發生的某一事件(如一個電平的變化,一個脈衝沿的發生或定時器計數溢出等)請求CPU迅速去處理,於是CPU暫時中止當前的工作,轉去處理所發生的事件。中斷服務處理完該事件以後,再回到原來被中止的地方繼續原來的工作

2)對於可剝奪型核心,完成中斷調度後,不是立刻返回原來的執行點執行,而是回到就緒態優先順序最高的任務開始運行。

3)沒有傳回值;

4)不能傳遞參數。

 

函數:

1)何時發生是可預料的;

2)完成函數調度後會返回到原來的程式碼片段繼續執行;

3)有傳回值;

4)能傳遞參數。

 

相同點:

1)在執行調度之前,都儲存現場;

2)都是調用一個subcode。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.