色婷婷狠狠18禁久久YY,CHINESE性内射高清国产,国产女人18毛片水真多1,国产AV在线观看

中斷代碼怎么處理?

呂致盈2年前12瀏覽0評論

硬件處理我們在每條指令完成的時(shí)候,控制單元就會檢查是否發(fā)生了中斷。若不發(fā)生:繼續(xù)執(zhí)行下...

確定中斷的向量i。

讀IDT中的第i項(xiàng)得到向量i的中斷描述符。

2.

異常處理

保存寄存器的值

高級C函數(shù)處理異常

3..中斷描述符結(jié)合GDT得到得到中斷處理程序的段描述符。

4.進(jìn)程的CPL與段描述符的DPL比較,若CPL優(yōu)先級比DPL的優(yōu)先級高,說明中斷的優(yōu)先級比進(jìn)程優(yōu)先級低,產(chǎn)生異常。進(jìn)程的CPL與中斷描述符的DPL比較,若CPL優(yōu)先級

比DPL的優(yōu)先級低,說明這個(gè)門不是用戶進(jìn)程可以訪問的,也產(chǎn)生異常,正常則執(zhí)行下面步驟。

5.檢查CPL是否發(fā)生變化(這個(gè)其實(shí)就是是否是從用戶態(tài)進(jìn)入內(nèi)核態(tài)),如果變化,則要切換棧。這個(gè)很容易弄清,因?yàn)椋脩魬B(tài)和內(nèi)核態(tài)用的棧是不一樣的。

6.如果發(fā)生的是故障,故障要重新執(zhí)行導(dǎo)致異常的那條指令。所以用那條指令的地址裝載cs和eip來執(zhí)行那條指令。

7.將eflags、cs、和eip的值圧棧。

8.如果異常產(chǎn)生硬件出錯碼,則也圧棧。

9.用剛才得到的段描述符中的基址和中段描述符中的偏移地址裝載cs和eip。這個(gè)就可以開始執(zhí)行相應(yīng)的處理程序了。