diff options
author | Dennis Kobert <dennis@kobert.dev> | 2019-11-07 18:32:47 +0100 |
---|---|---|
committer | Dennis Kobert <dennis@kobert.dev> | 2019-11-07 18:32:47 +0100 |
commit | a9d39fdb56526c4146d92e6af68cc175ec4da7c2 (patch) | |
tree | c3e6c67681852718dcacc6f1166e4e2bbd1a90a0 /kernel/src/interrupts/table.rs | |
parent | e19c8879eb7732d3bcb62194065c9cb2892cf1ab (diff) |
Add interupt descriptor table
Diffstat (limited to 'kernel/src/interrupts/table.rs')
-rw-r--r-- | kernel/src/interrupts/table.rs | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/kernel/src/interrupts/table.rs b/kernel/src/interrupts/table.rs new file mode 100644 index 0000000..47d6ead --- /dev/null +++ b/kernel/src/interrupts/table.rs @@ -0,0 +1,16 @@ +use crate::io::vga_text::OStream; +use lazy_static::lazy_static; +use x86_64::structures::idt::InterruptDescriptorTable; + +lazy_static! { + static ref IDT: InterruptDescriptorTable = { + let mut idt = InterruptDescriptorTable::new(); + idt.breakpoint + .set_handler_fn(super::exceptions::breakpoint_handler); + idt + }; +} + +pub fn init() { + IDT.load() +} |