starry-kernel 0.9.0

A Linux-compatible OS kernel built on ArceOS unikernel
Documentation
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
fn default_breakpoint_handler(tf: &mut ax_runtime::hal::cpu::KernelTrapFrame<'_>) -> bool {
    crate::kprobe::handle_breakpoint(tf)
}

#[cfg(target_arch = "x86_64")]
fn default_debug_handler(tf: &mut ax_runtime::hal::cpu::KernelTrapFrame<'_>) -> bool {
    crate::kprobe::handle_debug(tf)
}

pub(crate) fn init_handlers() {
    use ax_runtime::hal::cpu::trap;

    trap::set_page_fault_handler(crate::mm::handle_page_fault);
    trap::set_breakpoint_handler(default_breakpoint_handler);
    #[cfg(target_arch = "x86_64")]
    trap::set_debug_handler(default_debug_handler);
}