1樓:匿名使用者
對於cpu內部中斷源的請求,可直接轉入中斷週期,由內部硬體自動執行預定的操作。
對於cpu外部中斷源的請求,通常必須滿足以下條件才能響應。
置位了中斷請求觸發器。每個中斷源對應有一箇中斷請求觸發器,通過它發出並保持中斷請求訊號,直至cpu響應後才被清除。
中斷遮蔽觸發器處於非遮蔽狀態。在有多中斷源的實際系統中,為了增加控制的靈活性,常在每個中斷源的介面中設定一箇中斷遮蔽觸發器,只有當此觸發器處於非遮蔽狀態時,中斷請求才能被送至cpu,否則將被遮蔽掉。
cpu內部是中斷開放的。在cpu內部有一箇中斷允許觸發器(if),只有當它為「1」(即中斷開放)時,cpu才能響應外部中斷;否則中斷被關閉,即使intr上有中斷請求,cpu也不響應。中斷允許觸發器的狀態通常由sti和cli指令來改變(置「1」或清「0」)。
當cpu復位時,中斷允許觸發器被清「0」,即關中斷,所以必須用sti指令才能開中斷;每當中斷響應後,cpu又會自動關中斷,所以必須在中斷服務程式中用sti指令來開中斷,以便執行中斷服務程式時能響應更高優先順序的中斷請求,中斷服務程式結束後能響應新的中斷請求。
2樓:霸7威武
i/o裝置向cpu提出中斷請求的條件是: i/o介面中的裝置工作完成狀態為1(d=1),中斷遮蔽碼為0 (mask=0),且cpu查詢中斷時,中斷請求觸發器狀態為1(intr=1)。
3樓:
這個case要分不同廠家的cpu來說明的
一般來講, 如果cpu正在處理某中斷請求(假設此中斷的優先順序為a), 這時又來另一中斷(假設此中斷的優先順序為b),
那麼如果a>=b(指優先順序高的意思), cpu會繼續處理a直到結束再處理b;
如果a
作業系統地中斷請求是什麼?中斷請求的過程?
4樓:
1.中斷的基本概念
中斷是指計算機在執行期間,系統內發生任何非尋常的或非預期的急需處理事件,使得cpu暫時中斷當前正在執行的程式而轉去執行相應的事件處理程式,待處理完畢後又返回原來被中斷處繼續執行或排程新的程序執行的過程。引起中斷髮生的事件被稱為中斷源。中斷源向cpu發出的請求中斷處理訊號稱為中斷請求,而cpu收到中斷請求後轉到相應的事件處理程式稱為中斷響應。
在有些情況下,儘管產生了中斷源和發出了中斷請求,但cpu內部的處理器狀態字psw的中斷允許位已被清除,從而不允許cpu響應中斷。這種情況稱為禁止中斷。cpu禁止中斷後只有等到psw的中斷允許位被重新設定後才能接收中斷。
禁止中斷也稱為關中斷,psw的中斷允許位的設定也被稱為開中斷。開中斷和關中斷是為了保證某段程式執行的原子性。
還有一個比較常用的概念是中斷遮蔽。中斷遮蔽是指在中斷請求產生之後,系統有選擇地封鎖一部分中斷而允許另一部分中斷仍能得到響應。不過,有些中斷請求是不能遮蔽甚至不能禁止的,也就是說,這些中斷具有最高優先順序,只要這些中斷請求一旦提出,cpu必須立即響應。
例如,電源掉電事件所引起的中斷就是不可禁止和不可遮蔽的。
2.中斷的分類與優先順序
根據系統對中斷處理的需要,作業系統一般對中斷進行分類並對不同的中斷賦予不同的處理優先順序,以便在不同的中斷同時發生時,按輕重緩急進行處理。
根據中斷源產生的條件,可把中斷分為外中斷和內中斷。外中斷是指來自處理器和記憶體外部的中斷,包括i/0裝置發出的i/o中斷、外部訊號中斷(例如使用者鍵人esc鍵)。各種定時器引起的時鐘中斷以及除錯程式中設定的斷點等引起的除錯中斷等。
外中斷在狹義上一般被稱為中斷。
內中斷主要指在處理器和記憶體內部產生的中斷。內中斷一般稱為陷阱(trap)或異常。它包括程式運算引起的各種錯誤,如地址非法、校驗錯、頁面失效、存取訪問控制錯、算術操作溢位、資料格式非法、除數為零、非法指令、使用者程式執行特權指令、分時系統中的時間片中斷以及從使用者態到核心態的切換等都是陷阱的例子。
為了按中斷源的輕重緩急處理響應中斷,作業系統為不同的中斷賦予不同的優先順序。例如在unix系統中,外中斷和陷阱的優先順序共分為8級。為了禁止中斷或遮蔽中斷,cpu的處理器狀態字psw中也設有相應的優先順序。
如果中斷源的優先順序高於psw的優先順序,則cpu響應該中斷源的請求;反之,cpu遮蔽該中斷源的中斷請求。
各中斷源的優先順序在系統設計時給定,在系統執行時是固定的。而處理器的優先順序則根據執**況由系統程式動態設定。
除了在優先順序的設定方面有區別之外,中斷和陷阱還有如下主要區別:
陷阱通常由處理器正在執行的現行指令引起,而中斷則是由與現行指令無關的中斷源引起的。陷阱處理程式提供的服務為當前程序所用,而中斷處理程式提供的服務則不是為了當前程序的。
cpu執行完一條指令之後,下一條指令開始之前響應中斷,而在一條指令執行中也可以響應陷阱。例如執行指令非法時,儘管被執行的非法指令不能執行結束,但cpu仍可對其進行處理。
3.軟中斷
軟中斷的概念主要**於unix系統。軟中斷是對應於硬中斷而言的。通過硬體產生相應的中斷請求,稱為硬中斷。
而軟中斷則不然,它是在通訊程序之間通過模擬硬中斷而實現的一種通訊方式。中斷源發出軟中斷訊號後,cpu或者接收程序在「適當的時機」進行中斷處理或者完成軟中斷訊號所對應的功能。這裡「適當的時機」,表示接收軟中斷訊號的程序須等到該接收程序得到處理器之後才能進行。
如果該接收程序是佔據處理器的,那麼,該接收程序在接收到軟中斷訊號後將立即轉去執行該軟中斷訊號所對應的功能。
4.中斷處理過程
一旦cpu響應中斷,轉人中斷處理程式,系統就開始進行中斷處理。下面對中斷處理過程進行詳細說明:
1)cpu檢查響應中斷的條件是否滿足。cpu響應中斷的條件是:有來自於中斷源的中斷請求、cpu允許中斷。如果中斷響應條件不滿足,則中斷處理無法進行。
2)如果cpu響應中斷,則cpu關中斷,使其進入不可再次響應中斷的狀態。
3)儲存被中斷程序現場。為了在中斷處理結束後能使程序正確地返回到中斷點,系統必須儲存當前處理器狀態字psw和程式計數器pc等的值。這些值一般儲存在特定堆疊或硬體暫存器中。
4)分析中斷原因,呼叫中斷處理子程式。在多箇中斷請求同時發生時,處理優先順序最高的中斷源發出的中斷請求。在系統中,為了處理上的方便,通常都是針對不同的中斷源編制有不同的中斷處理子程式(陷阱處理子程式)。
這些子程式的人口地址(或陷阱指令的人口地址)存放在記憶體的特定單元中。再者,不同的中斷源也對應著不同的處理器狀態字psw。這些不同的psw被放在相應的記憶體單元中,與中斷處理子程式人口地址一起構成中斷向量。
顯然,根據中斷或陷阱的種類,系統可由中斷向量表迅速地找到該中斷響應的優先順序、中斷處理子程式(或陷阱指令)的入口地址和對應的psw。
5)執行中斷處理子程式。對陷阱來說,在有些系統中則是通過陷阱指令向當前執行程序發出軟中斷訊號後呼叫對應的處理子程式執行。
6)退出中斷,恢復被中斷程序的現場或排程新程序佔據處理器。
7)開中斷,cpu繼續執行。
5.裝置管理程式與中斷方式
處理器的高速和輸入輸出裝置低速之間的矛盾,是裝置管理要解決的一個重要問題。為了提高整體效率,減少在程式直接控制方式中的cpu等待時間以及提高系統的並行工作效率,採用中斷方式來控制輸入輸出裝置和記憶體與cpu之間的資料傳送,是很有必要的。
在硬體結構上,這種方式要求cpu與輸入輸出裝置(或控制器)之間有相應的中斷請求線,而且在輸入輸出裝置控制器的控制狀態暫存器上有相應的中斷允許位。
在8086 cpu管理的外部中斷中,哪個中斷的優先順序最高
不可遮蔽中斷優先順序最高。外部中斷是微控制器實時地處理外部事件的一種內部機制。當某種外部事件發生時,微控制器的中斷系統將迫使cpu暫停正在執行的程式,轉而去進行中斷事件的處理 中斷處理完畢後 又返回被中斷的程式處,繼續執行下去。外部中斷包含可遮蔽中斷與不可遮蔽中斷。不可遮蔽中斷介紹 不可遮蔽中斷屬於...
作業系統系統在中斷響應和中斷處理中做了哪些處理?
中斷處理的過程中需要開關中斷2次。開始 程式正常執行。響應中斷。關中斷 開始中斷程式後,cpu不能再響應更高階的中斷,所以先關閉 儲存斷點 儲存中斷程式地址 儲存現場 這裡是儲存中斷請求的必要資訊 開中斷 把中斷開啟,現在允許執行更高階別的中斷 執行中斷服務程式 這裡是可以響應高階別中斷的 關中斷 ...
社保就中斷了正常嗎,社保繳費中斷了怎麼辦
具體情bai 況具體分析,一 du般是離職或者單位忘記繳納zhi。社保中斷可以補繳dao。社保內補繳是指由於某種容原因導致社保中斷繳費,中間幾個月沒有繳費,而現在由於招調或者落戶其他原因,需要補之前沒有交到的部分,從而獲得完整的社保時間段,以確保招調落戶等工作正常認可。正常情況下,一般單位只能做2個...