22 lines
778 B
Markdown
22 lines
778 B
Markdown
# interrupts.h
|
|
|
|
The infrastructure to handle x86 interrupts.
|
|
|
|
# `idt_register_T` - struct [packed]
|
|
This struct is very similar to gdt_descriptor_T.
|
|
It holds the size and address of the Table, where the interrupt handlers are looked up.
|
|
|
|
# `idt_descriptor_entry_T` - struct
|
|
This struct stores information about one interrupt handler.
|
|
The osdev wiki explains this more detailed.
|
|
|
|
# `g_idt_register` - global variable
|
|
The default IDT configuration loaded when the IDT gets initialized.
|
|
|
|
# `g_handling_interrupt` - global variable
|
|
When the system isn't handling an interrupt this is set to 0.
|
|
If this is greater than 0 the system is currently handling an interrupt,
|
|
|
|
# `idt_init()` - function (void)
|
|
This function fills all the interrupt gates (handlers) into the IDT and loads it.
|