Next: Dispatcher
Up: No Title
Previous: Interrupts and Interrupt Vectors
- save registers of current process in PCB
- Determine the source of interrupt
- Initiate service of interrupt - calls interrupt handler
Hardware dependent - implemented in assembler
Note : FLIH must run with interrupts disabled - Why ?
Enable or disable interrupts by priority level in PSW.
U
Interrupt handler may call kernel to unblock another
process (e.g. waiting for I/O) which could result in a different
process - rather than interrupted one eventually being run
by the dispatcher
Handler could be a kernel procedure to service a normal
kernel call, e.g. send a message, delay a process etc.
Nested Interrupts
- This occurs when the interrupt handler runs with interrupts
enabled - in what scenarios is this likely to occur ?
- If interrupt handler runs in stack of interrupted procedure,
ALL context must be saved on stack. The ALL in this case refers
to the level of nesting.
- The stack space of ALL processes must be increased to cope
with the additional level of nesting.
Omer F Rana
Thu Feb 6 16:16:03 GMT 1997