Re: [問題] 關於interrupt handler中的組語
※ 引述《willhunting (這些年來)》之銘言:
: 標題: [問題] 關於interrupt handler中的組語
: 時間: Sun Sep 23 18:07:52 2007
: 想請問一下,大部分的作業系統都可以看到interrupt handler中
: 有不少的組語。雖然說這幾年也出了一些純粹用高階語言寫的handler
: ,但就一般情況來說,除了速度上的考量外,還有什麼理由是interrupt
: handler經常是用組語來寫的理由呢?謝謝
: → wuzen:code size 09/23 21:15
==========
OS 中的 interrupt handler 跟一般組語寫的 interrupt handler
是有差異的.
1. OS 的 ISR(Interrupt service routine) 只記錄與傳遞事件,
很少直接進行處理, 以免延誤下一個 Interrupt request
2. OS 的 hardware interrupt return 通常不會直接回到被中斷
的程式, 而是將機器的主控權交回 dispatcher/scheduler ,
所以會對 return-address 做一些處理, 再執行 RETI .
3. OS 的 trap interupt 會對 system call interrupt 做對應
代碼的呼叫, 甚至檢查 mutual exclusive lock 與換 stack
之後, 也是會更動 return 執行次序.
一般高階語言不做這種細膩的宣告與編譯.
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.115.6.234
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 2 之 2 篇):
ASM 近期熱門文章
PTT數位生活區 即時熱門文章