Download presentation
Presentation is loading. Please wait.
Published byReynold Tate Modified over 8 years ago
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 :-)
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.