中斷 異常和系統呼叫的關係

2022-09-01 23:54:31 字數 1191 閱讀 1675

中斷、異常和系統呼叫的關係

1.中斷的概念

中斷是cpu的乙個功能,就是cpu停下當前的工作,保留現場後自動地轉去執行相應的處理程式,cpu控制權發生改變,、

處理完該事件後再返回斷點繼續執行被剛才被打斷的程式。

2.中斷的分類

2.1分為軟中斷和硬中斷

軟中斷:

a.程式設計異常通常叫做軟中斷

b.軟中斷是通訊程序之間用來模擬硬中斷的 一種訊號通訊方式。

c.中斷源發中斷請求或軟中斷訊號後,cpu或接收程序在適當的時機自動進行中斷處理或完成軟中斷訊號對應的功能

d.軟中斷是軟體實現的中斷,也就是程式執行時其他程式對它的中斷;而硬中斷是硬體實現的中斷,是程式執行時裝置對它的中斷。

硬中斷:

a.硬中斷是由外部事件引起的因此具有隨機性和突發性;軟中斷是執行中斷指令產生的,無面外部施加中斷請求訊號,因此

中斷的發生不是隨機的而是由程式安排好的。

b.硬中斷的中斷響應週期,cpu需要發中斷回合訊號(nmi不需要),軟中斷的中斷響應週期,cpu不需發中斷回合訊號。

c.硬中斷的中斷號是由中斷控制器提供的(nmi硬中斷中斷號系統指定為02h);軟中斷的中斷號由指令直接給出,無需使用中斷控制器。

d.硬中斷是可遮蔽的(nmi硬中斷不可遮蔽),軟中斷不可遮蔽。

區別:a.軟中斷發生的時間是由程式控制的,而硬中斷發生的時間是隨機的

b.軟中斷是由程式呼叫發生的,而硬中斷是由外設引發的

c.硬體中斷處理程式要確保它能快速地完成它的任務,這樣程式執行時才不會等待較長時間

參考資料:軟中斷vs硬中斷

2.2可遮蔽中斷和不可遮蔽中斷

2.3中斷可分為三類:

第一類是由cpu外部引起的,稱作中斷,如i/o中斷、時鐘中斷、控制台中斷等。

第二類是來自cpu的內部事件或程式執行中的事件引起的 過程,稱作異常,如由於cpu本身故障(電源電壓低於105v或頻率在47~63hz之外)、

程式故障(非法操作碼、位址越界、浮點溢位等)等引起的過程。

第三類由於在程式中使用了請求系統服務的系統呼叫而引發的過程,稱作「陷入」(trap,或者陷阱)。前兩類通常都稱作中斷,它們的產生往往是無意、

被動的,而陷入是有意和主動的。

第一類(中斷)+第二類(異常)= 中斷

第三類(系統呼叫)= 系統呼叫

中斷 異常 系統呼叫

還是之前計算機只能乙個乙個的處理作業,cpu資源利用率低下,為了解決這個問題,人們發明了作業系統,引入中斷機制,實現了多道程式併發執行。本質 發生中斷就意味著需要作業系統的介入,開展管理工作。當中斷發生時,cpu立即進入核心態 當中斷發生後,當前執行的程序暫停執行,並由作業系統核心對中斷進行處理。對...

中斷 異常和系統呼叫比較

系統呼叫 應用程式主動向作業系統發出的服務請求 異常 非法指令或者其他原因導致當前指令執行失敗 中斷 來自硬體裝置的處理請求 源頭 中斷 外部裝置 異常 應用程式 系統呼叫 應用程式請求作業系統提供服務 響應方式 中斷 非同步 異常 同步 系統呼叫 同步或者非同步 處理機制 中斷 持續,對使用者應用...

linux作業系統中斷 異常和系統呼叫

中斷 異常和系統呼叫是作業系統中十分重要的概念,在這裡略作介紹,當作乙個複習。首先,中斷和異常的聯絡是十分緊密的,廣義的中斷既包含中斷也包含異常。中斷 廣義 會改變處理器執行指令的順序,通常與cpu晶元內部或外部硬體電路產生的電訊號相對應,廣義的中斷包括以下兩類 1.來自cpu外部的中斷稱為外部中斷...