信号中断和上下文

Posted 月光下的脚步

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了信号中断和上下文相关的知识,希望对你有一定的参考价值。

中断和信号的区别:

①、中断有优先级,但信号没有优先级(进程切换一定发生在中断/异常/系统调用处理过程中);

②、信号处理程序是在用户态下执行的,中断处理程序是在内核态下执行的。

③、中断响应是及时的,信号响应一般有延时。

中断上下文和进程上下文:

1.进程上下文:

①、进程上文:其是指进程由用户态切换到内核态是需要保存用户态时cpu寄存器中的值,进程状态以及堆栈上的内容,即保存当前进程的进程上下文,以便再次执行该进程时,能够恢复切换时的状态,继续执行。

②、进程下文:其是指切换到内核态后执行的程序,即进程运行在内核空间的部分。

2.中断上下文:

①、中断上文:硬件通过中断触发信号,导致内核调用中断处理程序,进入内核空间。这个过程中,硬件的一些变量和参数也要传递给内核,内核通过这些参数进行中断处理。中断上文可以看作就是硬件传递过来的这些参数和内核需要保存的一些其他环境(主要是当前被中断的进程环境。

②、中断下文:执行在内核空间的中断服务程序。

以上是关于信号中断和上下文的主要内容,如果未能解决你的问题,请参考以下文章

结合中断上下文切换和进程上下文切换分析Linux内核一般执行过程

结合中断上下文切换和进程上下文切换分析Linux内核的一般执行过程

结合中断上下文切换和进程上下文切换分析Linux内核的一般执行过程

APUE:信号

重读APUE(11)-信号安全的可重入函数

8086汇编0号中断处理程序