3

I am confused between above mentioned concepts while reading Windows internals.

Jolta
  • 2,620
  • 1
  • 29
  • 42
rpk
  • 70
  • 9

1 Answers1

3

All three terms - trap handler , interrupt dispatch routine and interrupt service routine (ISR) - relate to Windows driver level programming (as opposed to user-mode Windows applications).

"Traps" are programmer-initiated interrupts (vs. automatically generated "exceptions").

An "Interrupt service routine" (ISR) is a procedure written to handle an "interrupt". Although there are different kinds of interrupts (hardware interrupts, programmatic traps, CPU exceptions, etc, etc), the format of an ISR is similar in all cases. A "trap handler" is an ISR.

Interrupts should always be serviced as quickly as possible.

Finally "Dispatch routines" are the main entry points for performing hardware I/O.

FoggyDay
  • 11,962
  • 4
  • 34
  • 48
  • @FooggyDay What are the entries in interrupt dispatch table (IDT) are pointing to (ISR or interrupt dispatch routine) ? – rpk Feb 18 '15 at 19:35
  • "IDT" generally means [Interrupt Descriptor Table](http://en.wikipedia.org/wiki/Interrupt_descriptor_table). It's part of the Intel x86 architecture. It points to ISRs. – FoggyDay Feb 18 '15 at 21:14