- 博客(2)
- 收藏
- 关注
原创 Linux操作系统分析课程总结报告
当中断产生时,引脚线电位为高电平,产生一个唯一的中断信号。1) 通过这个中断信号确定与中断相关的中断向量i2) 读中断向量寄存器idtr得到中断向量表的基地址,找到其中第i项,找到中断处理程序所在段的段选择符和段内偏移3) 读gdtr寄存器获取全局描述符表基地址,在全局描述符表中根据上面获得的段选择符获取段描述符,段描述符中指出了中断处理程序的所在段(至此才获得中断处理程序的地址)4) 比较优先级,只允许高优先级的程序中断低优先级的程序。
2023-05-15 11:47:58
122
1
原创 Linux进程切换过程
schedule()函数首先从CPU任务队列中取出当前进程的标识符记为prev进程。之后,检查next如果和prev进程不一样,调用context_switch()函数进行上下文切换,next进程进入CPU运行。当A进程运行到一半触发系统调用或被中断时,进行中断上下文的切换,之后执行ISR中断服务例程,在中断处理结束后,返回前,是进程调度的时机,使用_schedule()函数进行进程切换。进程切换结束后,中断返回,返回到了next进程进行运行。
2023-04-24 18:07:19
260
2
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人