Question
Given following sequence of events (Interrupt requests IRQi), show which services routines CPU is executing for times 0 to 100 ms. think that each IRQi- Interrupt service routine takes 20 ms to complete.
Time Action
0 ms Start of main program
10 ms IRQ0 Interrupt request 0 is coming
20 ms IRQ1 Interrupt request 1 is coming
45 ms IRQ2 Interrupt request 2 is coming
60 ms IRQ3 Interrupt request 3 is coming
80 ms 1RQ1 Interrupt request 1 is coming
IRQ n has lowest priority; IRQ 0 has highest priority Obs-
If IRQi is coming in period of execution of IRQj and j has higher priority, then IRQi is postponed until IRQj is finished.
If IRQi is coming in period of execution of IRQj and I has higher priority, then IRQi is started and IRQj is temporally suspended until IRQi is completed.