‫Interrupt vector table, what are interrupts, interrupts is similar to subroutines, but you do not
‫need to know the memory address to invoke them.
‫You call them through the use of interrupt numbers such as one, two, three, four, rather than memory
‫addresses, interests can be set up by a programmer, for example.
‫You could set up the interrupt hexadecimal 32 and have point to your code.
‫Then when someone does in it zero x thirty two, it will invoke your code.
‫What happens when you invoke and interrupt the process that gets interrupted?
‫The old state is pushed to the stack, saving it.
‫The old state includes things such as the return address.
‫Our interest then gets executed, so the interest vector table is a table describing where these interests
‫are in memory.
‫We have two hundred fifty six interest handlers and each entering our table is four bytes.
‫The first two bytes of an entry is the offset in memory.
‫The next two bytes is the segment in memory.
‫Interests are also in numerical order.
‫In the table, the interest vector table starts to absolute address zero in RAM.
‫It's the very first byte in memory where the interest vector table starts.
‫So the first four bytes described interrupt zero, the next four by describing one.
‫The next four bites.
‫Describe interrupt to.
‫The next four bites describe Interop three, this goes on and on, 256 times the offset in in a enterable
‫to table entry is two bites.
‫The segment is two bites.
‫Each interrupt takes up four bites in this table.
‫Obviously combine in the segment in the offset, gives you the absolute address of where this interrupts
‫should be run.
‫Triple zero is address zero zero zero into one address for.
‫To address the U.S., right?
‫So, you know what, Officer, do you think, in terms of expertise, while we do 06 13 multiplied by
‫zero 04, that gives us hexadecimal 46 or decimal 76.
‫So when we do in 06 13, the processor looks at offset 76 in RAM and then extracts the offset in the
‫segment for that interrupts, calculates an absolute address and then executes it.
‫So for example, if we look for interest zero here, the first to the first four bytes in this table,
‫remember, each one of these is two bytes.
‫We see the offset four zero zero zero zero.
‫The segment is zero seven zero zero zero seven zero, multiplied by sixteen is zero seven zero zero.
‫And then we plus the zero zero zero offset, which means that if anyone does in zero, it will execute
‫the code at zero seven zero zero zero and it will keep executing it until it finds in direct instruction,
‫which signifies entraps.
‫Finished, yes.
‫Simply put, entraps is just a way of making special subroutines that are called by numbers instead
‫of memory addresses.
‫The processor itself can also throw exceptions by calling interrupts.
‫For example, if you tried to divide by zero in an entire process, it will call into zero.
‫Because that is a division by zero exception and interest zero is responsible for handling that action.
‫So thank you.
‫And in the next lecture, we will actually make our own interrupts.