我想請問exception到底是由硬體還是軟體所引起?
我在網路上的資料看到他說
依軟硬體中斷分:
software interrupt(軟體中斷):目前正執行的程式執行system call或指令有
exceptions引起
hardware interrupt(硬體中斷):由硬體元件透過中斷要求控制線到cpu,通知硬體中斷
發生
可是我在薛智文的作業系統書上看到
"當使用者執行了不存在的指令、讀取不屬於此使用者的記憶體位址、
或是進行除以零的運算,硬體會發生錯誤訊號,使作業系統產生
例外中斷(exceptions),一種由硬體所觸發的中段,用來處理一些例外的狀態"
請問到底是哪一個才是對的?
1.除以零的運算
2.讀取不屬於此使用者的記憶體位址
是軟體還是硬體中斷??
※ 引述《thomsty (a happy day)》之銘言:
: 根據洪逸老師筆記中,interrupt與trap畫出一個比較表
: 但關於exception僅在message passing簡短的被提到
: 但還是不太明白 what is exception?
: 張凡老師所發的計組第一本裡面(p.198),有提到"例外"這一個詞
: 但不管從哪裡看來都和洪逸筆記中的trap如出一轍
: 請大家告訴我有什麼差別好嗎!!
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 118.161.60.238
※ 編輯: thanksgive 來自: 118.161.60.238 (08/23 14:19)