mirror of
https://github.com/phil-opp/blog_os.git
synced 2025-12-16 14:27:49 +00:00
Update to latest version
This commit is contained in:
5
Cargo.lock
generated
5
Cargo.lock
generated
@@ -248,13 +248,14 @@ version = "0.11.1"
|
|||||||
dependencies = [
|
dependencies = [
|
||||||
"bit_field",
|
"bit_field",
|
||||||
"bitflags",
|
"bitflags",
|
||||||
"x86_64-idt-default-handler",
|
"x86_64-idt-general-handler",
|
||||||
]
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "x86_64-idt-default-handler"
|
name = "x86_64-idt-general-handler"
|
||||||
version = "0.1.0"
|
version = "0.1.0"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
|
"proc-macro2",
|
||||||
"quote",
|
"quote",
|
||||||
"syn",
|
"syn",
|
||||||
]
|
]
|
||||||
|
|||||||
@@ -33,6 +33,7 @@ lazy_static! {
|
|||||||
static ref IDT: InterruptDescriptorTable = {
|
static ref IDT: InterruptDescriptorTable = {
|
||||||
let mut idt = InterruptDescriptorTable::new();
|
let mut idt = InterruptDescriptorTable::new();
|
||||||
|
|
||||||
|
idt::set_general_handler!(&mut idt, default_handler);
|
||||||
idt.breakpoint.set_handler_fn(breakpoint_handler);
|
idt.breakpoint.set_handler_fn(breakpoint_handler);
|
||||||
idt.page_fault.set_handler_fn(page_fault_handler);
|
idt.page_fault.set_handler_fn(page_fault_handler);
|
||||||
unsafe {
|
unsafe {
|
||||||
@@ -40,7 +41,6 @@ lazy_static! {
|
|||||||
.set_handler_fn(double_fault_handler)
|
.set_handler_fn(double_fault_handler)
|
||||||
.set_stack_index(gdt::DOUBLE_FAULT_IST_INDEX);
|
.set_stack_index(gdt::DOUBLE_FAULT_IST_INDEX);
|
||||||
}
|
}
|
||||||
idt::set_default_handler!(&mut idt, default_handler, 32..);
|
|
||||||
idt
|
idt
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
@@ -49,7 +49,7 @@ pub fn init_idt() {
|
|||||||
IDT.load();
|
IDT.load();
|
||||||
}
|
}
|
||||||
|
|
||||||
fn default_handler(stack_frame: &mut InterruptStackFrame, index: u8) {
|
fn default_handler(stack_frame: &mut InterruptStackFrame, index: u8, error_code: Option<u64>) {
|
||||||
if index == 32 {
|
if index == 32 {
|
||||||
print!("{} ", index);
|
print!("{} ", index);
|
||||||
} else {
|
} else {
|
||||||
|
|||||||
Reference in New Issue
Block a user