4. 实现中断
本章代码对应 commit :6074ad7fb59d8d1e0bbd6125d8861bf483d22e73
概要
当 cpu 访问无效的寄存器地址、进行除零操作或进行 系统调用 时,会产生中断。由 系统调用 产生的中断称为 trap 。为了能够对中断进行一些简单的处理,本章我们需要:
创建 栈帧(TrapFrame) 结构体。
设置中断入口点。
riscv 简化了中断处理,不使用 idt
能够保存和恢复寄存器。
Last updated
本章代码对应 commit :6074ad7fb59d8d1e0bbd6125d8861bf483d22e73
当 cpu 访问无效的寄存器地址、进行除零操作或进行 系统调用 时,会产生中断。由 系统调用 产生的中断称为 trap 。为了能够对中断进行一些简单的处理,本章我们需要:
创建 栈帧(TrapFrame) 结构体。
设置中断入口点。
riscv 简化了中断处理,不使用 idt
能够保存和恢复寄存器。
Last updated