1 /**
2  * @file trap.h
3  * @author longjin@RinGoTek.cn
4  * @brief 异常捕获模块
5  * @date 2022-01-24
6  *
7  */
8 
9 #pragma once
10 
11 #include <common/printk.h>
12 #include <common/glib.h>
13 #include <common/asm.h>
14 
15 /**
16  * @brief 初始化系统中断表
17  *
18  */
19 
20 
21 //除法错误
22 void divide_error();
23 // 调试
24 void debug();
25 // 不可屏蔽中断
26 void nmi();
27 //
28 void int3();
29 // 溢出
30 void overflow();
31 // 边界问题
32 void bounds();
33 // 未定义的操作数
34 void undefined_opcode();
35 // 设备不可用
36 void dev_not_avaliable();
37 void double_fault();
38 void coprocessor_segment_overrun();
39 void invalid_TSS();
40 void segment_not_exists();
41 void stack_segment_fault();
42 void general_protection();
43 // 缺页异常
44 void page_fault();
45 void x87_FPU_error();
46 void alignment_check();
47 void machine_check();
48 void SIMD_exception();
49 void virtualization_exception();
50 
51 void syscall_int(); // 系统调用门
52 void sys_vector_init();