Presentation is loading. Please wait.

Presentation is loading. Please wait.

June 20, 2002Serguei A. Mokhov, 1 Drivers, Interrupts, and Trap Explained COMP346/5461 - Operating Systems Tutorial 3.5 Revision.

Similar presentations


Presentation on theme: "June 20, 2002Serguei A. Mokhov, 1 Drivers, Interrupts, and Trap Explained COMP346/5461 - Operating Systems Tutorial 3.5 Revision."— Presentation transcript:

1 June 20, 2002Serguei A. Mokhov, mokhov@cs.concordia.ca 1 Drivers, Interrupts, and Trap Explained COMP346/5461 - Operating Systems Tutorial 3.5 Revision 1.2 September 30, 2003

2 June 20, 2002Serguei A. Mokhov, mokhov@cs.concordia.ca 2 Interrupts and Trap Revisited Neither interrupt nor trap are function calls! Interrupt is an event, or a signal (do not confuse with UNIX signals), notifying the system that something happened. Interrupts are not necessarily used to switch between processes (in scheduling), but cause a context swicth. Trap is a software interrupt, it's synchronous, whereas an ordinary interrupt is asynchronous. Trap is a CPU instruction, which is invoked when a user program wants either some service from an OS (system call) or causes an error (division by zero, segmentation fault, page fault, etc.)

3 June 20, 2002Serguei A. Mokhov, mokhov@cs.concordia.ca 3 The “Big” Picture User-running Kernel-running BlockedReady Zombie exit() syscall() - trap wait() SW HW App User mode Kernel mode System Call Interface Bus CPU: add mult mov trap PTRDDHDDDCDDD Common Interface: open, close, read, write MM PM DMA CtlMon CtlPtr CtlCD Ctl int (IRQ) int Ready queue kernel

4 June 20, 2002Serguei A. Mokhov, mokhov@cs.concordia.ca 4 That’s It :-)


Download ppt "June 20, 2002Serguei A. Mokhov, 1 Drivers, Interrupts, and Trap Explained COMP346/5461 - Operating Systems Tutorial 3.5 Revision."

Similar presentations


Ads by Google