Download presentation
Presentation is loading. Please wait.
Published byAngel Phillips Modified over 8 years ago
1
Preventing Interrupt Overload Presented by Jiyong Park Seoul National University, Korea 2005. 2. 22. John Regehr, Usit Duogsaa, School of Computing, University of Utah
2
2 Summary Interrupt overload Too many interrupts that exceed predefined rate. Solutions for preventing interrupt overload Strict software scheduler Bursty software scheduler Hardware interrupt scheduler interrupt rate processor load for interrupt handling predefined maximum rate
3
3 Motivation Interrupt overload can be occur often in embedded systems Disconnected device (Apollo 11 in 1969) Unexpected situation (Robot going on downhill) Malicious peer (too many small packets)
4
4 Interrupt Handling Model Device pending bit (size 1 queue) enable bit global enable bit CPU interrupt interrupt handler
5
5 Solution 1: Strict Software Scheduler Interrupt can not be processed faster than a predefined rate. Modification to interrupt prologue time interrupt predefined rate pendingdiscard interrupt discard timer interrupt enable = 0 set one-shot timer enable = 1
6
6 Solution 2: Bursty Software Scheduler Allows maximum N interrupts within T interval. Interrupt handler prologue counter ++; if counter >= N then enable = off Timer with period T counter = 0; enable = on time T N = 3
7
7 Solution 3: Hardware Scheduler Implemented on FPGA. Device CPU count = 0 ? down counter count true false reset pending interrupt
8
8 Evaluation Overhead of each mechanism On 4MHz Atmel AVR processor Overhead: 2 ~ 10%
9
9 Evaluation Interrupt handler works 250 cycles
10
10 Related Work Receive live-lock, Lazy Receiver Processing Switch to polling when overload Early demultiplexing Network centric Concentrate on maximizing throughput (no consideration to timely execution of application) Interrupt Thread Just delays interrupt overload. Does not prevent it. Big overhead on very small embedded systems
11
11 Strong Points Simple but very effective solution Modeling the interrupt handler as periodic task (C, T) The urgent need for preventing interrupt overload is well explained using various examples. The interrupt scheduler is extended to support multiple interrupt sources. Hardware solution requires only small amount of transistors (600).
12
12 Weak Points Not very much
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.