Operating system/Traps and Interrupts
This is a lesson in in the course, Operating system, which is a part of The School of Computer Science
Objective[edit | edit source]
|
Interrupts[edit | edit source]Overview[edit | edit source]In OS development, interrupts are signals that suspends operation the computer is executing and jumps to an interrupt handler, or also known as an Interrupt Service Routine. The interrupt handler executes some code and finally does an interrupt return, which gives back control to whatever code was executing before the interrupt was triggered the interrupt. Interrupt Vector Table[edit | edit source]The interrupt vector table, or IVT for short, contains 256 possible interrupts in real mode. The position of the IVT is located at position 0000h:0000h. Each interrupt entry is the size of a dword (four bytes). The first word (two bytes) in the entry contains the address of the interrupt handler. The second word (two bytes) contains the segment of the interrupt handler. Since you can only have a maximum of a 20-bit address in real mode, interrupt handlers must remain within conventional memory (the first 640 kibibytes). An easy way to setup up your own IVT is to:
Interrupt Descriptor Table[edit | edit source]
|
Assignments[edit | edit source]
|
|