1 / 4

Drivers, Interrupts, and Trap Explained

Drivers, Interrupts, and Trap Explained. COMP346/5461 - Operating Systems Tutorial 3.5 Revision 1.2 September 30, 2003. Interrupts and Trap Revisited. Neither interrupt nor trap are function calls!

shlomo
Download Presentation

Drivers, Interrupts, and Trap Explained

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Drivers, Interrupts, and Trap Explained COMP346/5461 - Operating Systems Tutorial 3.5 Revision 1.2 September 30, 2003 Serguei 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.) Serguei A. Mokhov, mokhov@cs.concordia.ca

  3. User-running syscall() - trap exit() Kernel-running Zombie wait() Blocked Ready Common Interface: open, close, read, write The “Big” Picture System Call Interface App App App App App User mode SW Kernel mode MM kernel PM HDDD PTRDD CDDD int Ready queue Bus CPU: add mult mov trap HW DMA Ctl Mon Ctl Ptr Ctl CD Ctl int int (IRQ) Serguei A. Mokhov, mokhov@cs.concordia.ca

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

More Related