mips linux异常中断代码分析
补充一点上下文切换的分析:(MIPS) 1. 内核栈切换 调度切换至一个进程时,根据 task_struct->thread_info 的值设置 *kernelsp(当前正在运行进程之内核栈栈底),其值为 thread_info + THREAD_SIZE - 32(MIPS 下,使用 set_saved_sp 宏)。 2. 异常、中断寄存器的保存 使用SAVE_SOME 保存上下文时,如发现从用户态切入核心态,则首先用 get_saved_sp 宏,将*kernelsp 置入sp。然后在内核栈上分配 PT_SIZE(=sizeof(struct pt_regs)) 大小的空
用户评论