上一章提到有3種I/O方式,今天補充一下中斷種類:
不可遮蔽式中斷 Non Maskable Interrupt
唯一種緊急中斷,ex: 晶片損壞
中斷請求 Interrupt Request
為硬體等級的中斷,分為內部中斷和外部中斷
1. 內部中斷(CPU之內):不合法使用引起的,ex: overflow, divide-by-zero
2. 外部中斷:由周邊元件所引起,ex: I/O device error
軟體中斷 Trap
system call 呼叫OS中對應的service routine, 再將結果回傳給使用層
中斷優先權:NMI -> IRQ -> TRAP
I/O保護
Mermory保護
重點就是要確保user program(應用程式)和monitor program(系統程式)不會互相干擾,個別有各自保護方式
方法一:設定邊界值fence register,顧名思義就是設一個柵欄,只要超過就不合法
方法二:兩個分別從兩邊開始儲存,不要交會就沒事
設定一個起始(base)和終點位置(base + program size),當program位置只要小於base或>=base + program size就不合法
分類會依照第一篇介紹的分類架構來進行
由於是將學習過程記錄下來,如果有任何錯誤歡迎糾正
以下參考連結在學習過程中覺得非常有幫助:
-台大線上課程
-作業系統